Кейлоггер своими руками

Это интересно

Содержание


Аппаратный кейлоггер: Мой вариант + доработка


Если вас заинтересовала эта черная штуковина и вы хотите себе такую же, то описание и инструкция по изготовлению ждет вас.
На хабре есть отличная публикация по этой теме. Не стану повторять теорию и принципы работы (все это отлично раскрыто в указанной выше статье), лучше продемонстрирую свою реализацию и подробно опишу её отличительную особенность.

В первом приближении все тоже самое: микроконтроллер включается в разрыв PS/2 интерфейса клавиатуры и компа, ловит нажатие кнопок и пишет их в свою память. Используется встроенная в МК энергонезависимая память (EEPROM), ёмкости которой хватит на пароль от винды и еще чуть-чуть. Для перехвата чего-то большего лучше использовать внешнюю память.

Особенность моей реализации заключается в выводе перехваченных данных, используя эмуляцию клавиатуры. Если подключить прибор и в течении 5 секунд нажать спец. кнопку (по умолчанию ENTER), кейлоггер шлет сохраненные символы в комп. Открыв любой текстовый редактор, видим то, что было перехвачено.

При этом в память пишутся служебные скан коды, что позволяет сохранять и воспроизводить разнообразные действия, такие как: стирание по backspace, символы нажатые с шифтом, переключения раскладки и т.д.

Контроллером выбран 8-ми ногий AtTiny45 в маленьком корпусе SOIC, благодаря чему его можно смонтировать прямо в корпусе разъема. Возможна замена на Tiny25/85 (отличаются объемами памяти как флеш, так и EEPROM) или Tiny13/15 (отличаются чуть сильнее). Современные МК отлично подходят для подобных применений, так как не требуют для работы никаких внешних компонентов, например, при некритичных требованиях к стабильности тактовой частоты внешний кварц заменяется внутренней RC цепочкой, что и было сделано. Единственным внешним компонентом стал резистор для «подтяжки» ресета до напряжения питания.

Конструктивно кейлоггер выполнен в виде маленького переходника, собранного из двух разъемов.

Фото процесса создания.

Места внутри очень мало и монтаж требует определенной сноровки. Кое-где контроллер припаян непосредственно к выводам разъема, остальное на проводах. Собирается все без клея, и держится очень прочно. Контроллер и провода внутри нужно обмотать изолентой, чтобы не было замыкания через металлические половинки разъема (на фото изоленты нет для наглядности).

Для программирования контроллера используется специальный переходник, который подключается уже к готовому прибору вместо клавиатуры:

В разъеме как раз есть 2 неиспользуемых контакта (4 и 6), на которые выведены недостающие для программирования ноги RESET и ISO.
Программа для МК написана на C в среде AVRStudio + WinAVR GCC. Она довольно простая и достаточно прокомментирована. Нужно сбросить по умолчанию взведенный FUSE CKDIV8.

Возможные улучшения
  • Больше памяти. У контроллера осталось 2 неиспользуемые ноги и при желании можно подключить внешний EEPROM в таком же 8-ми ногом SOIC корпусе по шине I2C. Микросхемы можно сложить одну на другую и запихнуть все это в разъем. Тогда памяти будет на пару порядков больше (например у меня есть подходящий EEPROM на 32 Кб).
  • Функция очистки памяти. Еще одна спец. кнопка, по которой прибор будет очищать память. Сейчас же идет перезапись и иногда выводится прошлый или позапрошлый перехват.
  • Интерактивное текстовое меню. Меню из нескольких пунктов (настройки, действия и т.д.), формируемое непосредственно в блокноте.
  • Автоматизатор нажатий. Возможно кому-то понравится возможность независимо от приложения привязать к какой-то кнопке или сочетанию кнопок множество нажатий.

В итоге получился довольно удобный и миниатюрный прибор с обширной функциональностью. Его применение целиком и полностью зависит от вас.
Скачать программу.

Похожие записи

Прямой эфир

Блоги

Аппаратный радио кейлоггер

Введение

Аппаратный кейлоггер является отличным решением для мониторинга пользовательской активности и в отличие от программного кейлоггера, у него минимальный риск обнаружения.
Аппаратный кейлоггер — это чисто электронное устройство, которое не требует установки какого-либо дополнительного программного обеспечения, вмешательства в ОС, драйверы и т.п. Однако, у большинства аппаратных кейлоггеров есть один недостаток — периодически требуется физический доступ к компьютеру для переброса информации с памяти кейлоггера. Но есть очень хорошее решение: радио кейлоггер (Wireless Keylogger).

Радио (или беспроводной) кейлоггер состоит из двух основных модулей: передатчика и приемника. Сам модуль кейлоггера находится в передатчике, который является PS/2 аппаратным кейлоггером с встроенным радиопередающим модулем 2.4 ГГц. Т.о. все нажатия клавиш клавиатуры передаются в реальном времени через радиоканал. Приемник находится в другом месте и подключен через USB. Далее, на стороне ПО через виртуальный COM-порт, принятые данные можно отобразить в любом терминале.

Вся система работает в режиме реального времени, т.е. текст, который набирается на клавиатуре с передатчиком, сразу же виден на приемной стороне. Максимальный радиус действия составляет около 50 метров. В здании с 3-4 стенами радиус действия составляет около 20 метров (зависит от толщины стен).


И передатчик и приемник, имеют одинаковую принципиальную схему и соответственно топологию печатной платы. Оба имеют однотипный форм-фактор и сделаны под PS/2 и USB удлинители с т.н. балуном (ферритовое кольцо — фильтр).

Компоненты

Чтобы собрать данный кейлоггер вам понадобятся базовые знание электроники и умение пайки SMD-компонентов.

В таблице ниже, приведен список требуемых радиоэлементов для приемника или передатчика (разницы нет, т.к. все одинаковое кроме кабеля и прошивки).

Основными компонентами здесь является микроконтроллер AT91SAM7S64 фирмы Atmel и радиомодуль nRF2401. Для обеих м/с нужны соответствующие кварцевые резонаторы. Кроме стабилизатора напряжения MCP1700 все остальные компоненты пассивные (резисторы, конденсаторы и пара индуктивностей). Обычный провод используется в качестве дипольной антенны. На картинках ниже приведена двухсторонняя плата.

Ниже представлены маски для изготовления печатной платы. В оригинальном устройстве используется стеклотекстолит FR4 толщиной 1мм.

Ниже, в данной статье вы найдете PDF-файлы плат и масок для их изготовления.

Сборка

Вся схема питается от 3.3В, которые выдает стабилизатор напряжения MCP1700. Питание берется напрямую от шины PS/2 (если передатчик) или от USB (в случае приемника).

Для пайки компонентов используйте соответствующие паяльник и флюс. Не допускайте перегрева компонентов. Сначала припаяйте радиомодуль nRF2401, это наиболее сложный компонент. Затем, микроконтроллер AT91SAM7S64 и стабилизатор MCP1700. В самом конце припаяйте резисторы, конденсаторы, кварцы и индуктивности. В качестве антенны можно использовать ISM 2.4 ГГц антенну, либо сделать простую четверть волновую дипольную антенну из кусочка провода. Оптимальная длина — 3.125 см. Собранные платы показаны на фото ниже.

После того, как все собрано, осталось разобраться с кабелями. Как уже отмечалось выше, они разные для передатчика и приемника. Плата передатчика подсоединяется в разрыв кабеля. Плата приемника, цепляется к USB как обычно. На рисунках ниже показано присоединение.

Кабели разрежьте и подсоедините согласно вышеприведенным рисункам. Для вызванивания контактов воспользуйтесь тестером.

Микроконтроллер прошивается при помощи 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. Соедините вместе все выводы при помощи перемычек или джамперов.

Шаг 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-порт к которому у вас привязан ваш приемник. Если все правильно работает, то в терминале вы должны сразу же видеть символы, которые набираются на клавиатуре с кейлоггером.

Следующим этапом тестирования будет использование двух разных компьютеров. При этом, учитывайте радиус действия!

Скачать прошивки, ПО и печатные платы вы можете ниже

Список радиоэлементов

ГОРЯЧАЯ ТЕМА

Translate site

Фото дня


Новости Hi-Tech

Софт и игры

Социальные сети

Рубрики

Календарь

Страшная вещь — аппаратный кейлоггер (клавиатурный шпион)

У вас ведь установлен качественный антивирус? Для отлова червей, троянов и прочей живности. Ну и брандмауэр, чтобы из сети что-нибудь не приползло. Думаете на этом все? Можно спать спокойно? Расплачиваться банковской карточкой в интернет-магазинах, не беспокоиться о сохранности пароля к рабочей почте CVV- коды банковских карт. милую болтовню в ICQ и приватные беседы через шифрованные каналы.

Стоят аппаратные кейлогерры от $ 100 в зарубежных интернет-магазинах. Например, вот этот для PS/2 клавиатуры. Или этот для USB. А еще его можно сделать самостоятельно. Однако за использование можно получить срок.

Есть еще более продвинутые варианты например, бесконтактные электромагнитные кейлоггеры. Их не надо вставлять в разрыв кабеля от клавиатуры. Достаточно просто прикрепить к нему. А некоторые можно даже припаять, например, к материнской плате или микросхемам клавиатуры. То есть установить прямо внутрь системного блока илиноутбука. Куда неспециалисты обычно не заглядывают. Кстати, кое-где продаются специальные клавиатуры уже со встроенным кейлоггером.

Защититься от аппаратных кейлоггеров сложно, но не невозможно. Главную роль играет профилактика. Так что после тщательной проверки на подозрительное содержимое опломбируйте корпус системника, ноутбука, клавиатуры. На штекер клавиатуры прикрепите наклейку, которая рвется при попытке отклеивания. Каждый раз перед началом работы с ПК проверяйте целостность пломб и наклеек. А для набора особо секретных данных (логины-пароли, CVV коды и тому подобное) пользуйтесь виртуальными клавиатурами.

Некоторые программы для доступа к засекреченным данным позволяют помимо пароля назначить, так называемый, ключевой файл это еще один рубеж обороны от аппаратных кейлоггеров. Например, программа TrueCrypt для создания зашифрованных файловых контейнеров. То есть помимо пароля vasya123 нужно каждый раз скармливать программе определенный файл. Например, группа_крови. mp3 , который можно хранить на флешке. Если аппаратный кейлоггер и украдет пароль, злоумышленник все равно не сможет добраться до секретных данных без ключевого файла.

Ну все, теперь точно можно расслабиться, подумает читатель. Буду спокойно платить банковской картой в интернет-магазинах, а о пароле к рабочей почте можно не беспокоится. Нет, дорогой оптимист. Есть еще более адские девайсы кейлоггеры акустические. Они записывают приятную щелкотню клавиш, а потом преобразуют их в обычные текстовые символы. Так как каждая клавиша при нажатии производит специфический звук, утверждают ученые Дуг Тигар, Дмитрий Азоновов и Ракеш Аграваль из Калифорнийского университета в Беркли. Да здравствует паранойя!

Похожие материалы

  • Антивирусы, их назначение и необходимость
  • Как компьютеры стали болеть?
  • Alan Wake обзавелся новыми скриншотами и трейлером
  • Итоги конкурса Лето без перебоев
  • Спутниковый интернет и ТВ за разумные деньги SatelliteHD GOTVIEW USB2.0 DVB-S2

Новости Ferralabs

Наша RSS

Новости компаний

Популярные теги

Архив материалов

Комментарии к материалам

Свежие статьи

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *