Введение
Аппаратный кейлоггер является отличным решением для мониторинга пользовательской активности и в отличие от программного кейлоггера, у него минимальный риск обнаружения.
Аппаратный кейлоггер — это чисто электронное устройство, которое не требует установки какого-либо дополнительного программного обеспечения, вмешательства в ОС, драйверы и т.п. Но, у большинства аппаратных кейлоггеров есть один недостаток — периодически требуется физический доступ к компьютеру для переброса информации с памяти кейлоггера. Но есть очень хорошее решение: радио кейлоггер (Wireless Keylogger).
Радио (или беспроводной) кейлоггер состоит из 2-х основных модулей: передатчика и приемника. Сам модуль кейлоггера находится в передатчике, который является PS/2 аппаратным кейлоггером с встроенным радиопередающим модулем 2.4 ГГц. Т.о. все нажатия клавиш клавиатуры передаются в реальном времени через радиоканал. Приемник находится в другом месте и подключен через USB. Далее, на стороне ПО через виртуальный COM-порт, принятые данные можно отобразить в любом терминале.
Вся система работает в режиме реального времени, т.е. текст, который набирается на клавиатуре с передатчиком, сразу же виден на приемной стороне. Максимальный радиус действия составляет около 50 метров. В здании с 3-4 стенами радиус действия составляет около 20 метров (зависит от толщины стен).
И передатчик и приемник, имеют одинаковую принципиальную схему и соответственно топологию печатной платы. Оба имеют однотипный форм-фактор и сделаны под PS/2 и USB удлинители с т.н. балуном (ферритовое кольцо — фильтр).
Компоненты
Чтобы собрать данный кейлоггер вам понадобятся базовые знание электроники и умение пайки SMD-компонентов.
В таблице ниже, приведен список требуемых радиоэлементов для приемника или передатчика (разницы нет, т.к. все одинаковое кроме кабеля и прошивки).
Основными компонентами здесь является микроконтроллер AT91SAM7S64 фирмы Atmel и радиомодуль nRF2401. Для обеих м/с нужны соответствующие кварцевые резонаторы. Кроме стабилизатора напряжения MCP1700 все остальные компоненты пассивные (резисторы, конденсаторы и пара индуктивностей). Обычный провод используется в качестве дипольной антенны. На картинках ниже приведена 2-хсторонняя плата.
Ниже представлены маски для изготовления печатной платы. В оригинальном устройстве используется стеклотекстолит FR4 толщиной 1мм.
Ниже, в данной статье вы найдете PDF-файлы плат и масок для их изготовления.
Сборка
Вся схема питается от 3.3В, которые выдает стабилизатор напряжения MCP1700. Питание берется напрямую от шины PS/2 (если передатчик) или от USB (в случае приемника).
Для пайки компонентов используйте соответствующие паяльник и флюс. Не допускайте перегрева компонентов. Сначала припаяйте радиомодуль nRF2401, это наиболее сложный компонент. Затем, микроконтроллер AT91SAM7S64 и стабилизатор MCP1700. В самом конце припаяйте резисторы, конденсаторы, кварцы и индуктивности. В качестве антенны можно использовать ISM 2.4 ГГц антенну, либо сделать простую четверть волновую дипольную антенну из кусочка провода. Оптимальная длина — 3.125 см. Собранные платы показаны на фото ниже.
После того, как все собрано, осталось разобраться с кабелями. Как уже отмечалось выше, они разные для передатчика и приемника. Плата передатчика подсоединяется в разрыв кабеля. Плата приемника, цепляется к USB как обычно. На рисунках ниже показано присоединение.
Кабели разрежьте и подсоедините согласно вышеприведенным рисункам. Для вызванивания контактов воспользуйтесь тестером.
Распиновка PS/2
Сигнал
Описание
PS/2 pin
Комментарий
VCC
+5В питание
4
Должны быть подсоединены к модулю
GND
Земля питания
3
CLK
Clock
5
DATA
Data
1
NC
Не использ.
2, 6
Не используется
SHLD
Экран
—
Распиновка USB
Сигнал
Описание
USB pin
Комментарий
VCC
+5В питание
1
Должны быть подсоединены к модулю
D-
Data
2
D+
Data
3
GND
Земля питания
4
SHLD
Экран
—
Не используется
Микроконтроллер прошивается при помощи ISP (внутрисхемное программирование) Об этом чуть ниже.
После того как все собрано, на всякий случай прозвоните цепь питания (между VCC и GND) на предмет наличия КЗ. Иначе можете спалить порт в компьютере. Если все нормально, то можно уложить платы в корпуса и склеить сам корпус.
Прошивка контроллера
Микроконтроллер AT91SAM7S64 прошивается при помощи технологии ISP (внутрисхемное программирование). Технология ISP позволяет прошить микроконтроллер после его припаивания на плату. Т.к. МК AT91SAM7S64 содержит встроенный USB-контроллер, то прошивка контроллера незатейливый процесс и здесь используется технология SAM-BA (SAM Boot Assistant). Требуется USB-кабель и несколько джамперов. Для прошивки необходимо скачать AT91 ISP, а далее следуя нижеследующей пошаговой инструкции прошить микроконтроллер.
Шаг 1. Применительно лишь к передатчику, данный шаг для приемника не требуется, т.к. он уже подключен к USB. Подготовьте кабель USB type A папа на одном конце и с зачищенными проводками на другом конце. Припаяйте выводы кабеля VCC, GND, D+, и D- к соответствующим местам на печатной плате.
Шаг 2. Подготовьте несколько перемычек, для того, чтобы замкнуть все SAM-BA выводы: TST, ERASE, PA2, PA1, PA0, 3.3V. Соедините вместе все выводы при помощи перемычек или джамперов.
Шаг 3. Установите ПО AT91 ISP
Шаг 4. Воткните USB шнур в свободный порт компьютера. Может появиться сообщение, что устройство не определено, это нормально.
Шаг 5. На пару секунд соедините между собой выводы ERASE и 3.3V. Это сотрет флэш память микроконтроллера.
Шаг 6. Отсоедините устройство от USB-порта компьютера и снимите перемычки. Теперь, соедините между собой все выводы: PA0, PA1, PA2, TST и 3.3V. Снова подсоедините устройство к USB ПК, выждите около 10 секунд и отсоедините его. Эта операция активирует SAM-BA bootloader.
Шаг 7. Уберите все перемычки и подсоедините устройство к USB. Windows обнаружит новое устройство и предложит стандартную процедуру установки драйверов.
Шаг 8. Откройте диспетчер устройств и удостоверьтесь, что SAM-BA bootloader активирован.
Шаг 9. Запустите приложение SAM-BA (ПО AT91 ISP) и выберите тип МК: AT91SAM7S64-EK.
Шаг 10. После установки соединения с МК, перейдите в вкладу Flash, выберите подходящий файл прошивки (для передатчика или приемника) и нажмите Send File. Когда ПО спросит «lock and unlock the involved flash regions» нажмите yes. После этого микроконтроллер прошьется и устройства готовы к работе.
Подключение и тестирование кейлоггера
Настало время тестирования нашего устройства. Мы рекомендуем для тестов использовать один компьютер. Выключите компьютер и между портом компьютера PS/2 и клавиатурой подключите модуль передатчика.
Включите компьютер и проверьте работу клавиатуры, модуль не должен никоим образом на нее влиять.
После этого необходимо протестировать приемник, но сначала скачайте соответствующие драйвера (см. ниже). Подключите приемник в свободный USB-порт, система обнаружит устройство и предложит установить драйвера.
Драйвера представляют из себя виртуальный COM-порт (USB to serial converter) и вешаются на любой свободный COM-порт вашего компьютера.
Для того, чтобы принимать данные с передатчика кейлоггера удобнее всего пользоваться терминальным клиентом, к примеру Hyperterminal. Мы рекомендуем для этой цели воспользоваться программой Simple Serial Monitor.
После запуска программы, выберите COM-порт к которому у вас привязан ваш приемник. Если все правильно работает, то в терминале вы должны сразу же видеть символы, которые набираются на клавиатуре с кейлоггером.
Следующим этапом тестирования будет использование 2-х разных компьютеров. При этом, учитывайте радиус действия!
Скачать прошивки, ПО и печатные платы вы можете ниже
Список радиоэлементовОбозначение
Тип
Номинал
Количество
ПримечаниеМагазинМой блокнот
U1
МикроконтроллерAT91SAM7S641
TQFP64U2
ПередатчикnRF24011
QFN24U3
Линейный регуляторMCP17001
3.3 Вольт. SOT-23С1, С27
Конденсатор0.01 мкФ2
0805С2, С28
Конденсатор1000 пФ2
С3, С4, С6-С8
Конденсатор22 пФ5
С5
Конденсатор0.033 мкФ1
С9
Конденсатор2.2 пФ1
С10, С11
Конденсатор1 пФ2
С12, С22-С26, С32-С34, С42, С43
Конденсатор0.1 мкФ11
С21, С31, С41
Конденсатор1 мкФ3
R1, R2
Резистор1.5 кОм2
R3, R4
Резистор27 Ом2
R5
Резистор1 МОм1
R6
Резистор22 кОм1
Q1
Кварцевый резонатор18.432 МГц1
HC-49 SMDQ2
Кварцевый резонатор16 МГц1
HC-49 SMDL1
Катушка индуктивностиФерритовый фильтр1
L2
Катушка индуктивности3.6 нГн1
L3
Катушка индуктивности18 нГн1
Добавить все
Скачать список элементов (PDF)
Прикрепленные файлы:
- keylogger.rar (474 Кб)