Keylogger: что это и как работает. Наиболее разумное и современное решение. по месту хранения Log файла

В переводе с английского языка Keylogger - это регистратор нажатий клавиш. В большинстве статей можно найти следующую формулировку слова кейлоггер:

Что такое кейлоггер?

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

В данной статье мы будем говорить о том какие существуют типы кейлоггеров. О плюсах и минусах каждого такого устройства и будем давать рекомендации в выборе клавиатурного шпиона.

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

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

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

Аппаратные кейлоггеры бывают внешние — они выглядят как обычное компьютерное оборудование, и внутренние, которые устанавливаются, непосредственно, в саму клавиатуру. Кейлоггер может работать неограниченное количество времени, так как для его работы не нужен дополнительный источник питания. Такой аппаратный кейлоггер может сохранять до 20 млн. нажатий клавиш.

Минусы:

  • Нет возможности установить удалённо
  • Ограничение памяти
  • Для получения отчёта требуется физической доступ к компьютеру (если модель без Wi-Fi-модуля)
  • Может быть использован только в тех случаях когда жертва не разбирается в компьютерном оборудовании

Плюсы:

  • Клавиатурный шпион который не видят программные антивирусы и антишпионы
  • Не высокая цена по сравнению с акустическими кейлоггерами (но программные клавиатурные шпионы дешевле)
  • Передача отчетов через встроенный Wi-Fi (не во всех моделях)

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

Минусы:

  • Высокая цена
  • Приобретение данного оборудования не законно
  • Большой размер
  • Бывают ошибки точности распознавания системы акустического криптоанализа
  • Нет в свободной продаже

Плюсы:

  • Кейлоггер который не видят программные антивирусы и антишпионы
  • Работает на расстоянии
  • Не требуется физический доступ к компьютеру

Программный кейлоггер

Программные кейлоггеры самые распространённые на рынке клавиатурных шпионов. Перехват нажатий клавиш на клавиатуре может применяться обычными приложениями и часто используется для вызова функций приложения из другой программы с помощью «горячих клавиш» (hotkeys) или, к примеру, для переключения неверной раскладки клавиатуры (как это реализовано в программах Punto Switcher и Keyboard Ninja).

Надо отметить, что клавиатурные шпионы довольно старый тип шпионских программ, который появилися еще во времена MS-DOS – в то время они представляли собой обработчики прерывания клавиатуры размером около 1 килобайта. Однако функции кейлоггеров за прошедшее время не сильно изменились – по-прежнему их основной задачей является скрытное фиксирование клавиатурного ввода с дальнейшей записью собранной информации на жесткий диск или передачей по сети.

Существует большое количество легального программного обеспечения, которое применяется админами для в течение дня, или для наблюдения пользователем за активностью посторонних людей на своем рабочем или домашнем компьютере. Но где проходит граница между «законным» использованием «легального» ПО и его использованием в преступных целях? То же «легальное» ПО нередко применяется и в целях умышленного похищения конфиденциальной информации - к примеру, логинов и паролей.

Программный кейлоггер

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

  • для родителей: отслеживание за действиями детей в сети и оповещение родителей в случае попыток зайти на страницы «18+» (родительский контроль);
  • для ревнивых мужей и жен: наблюдение за действиями своей второй половины в сети в случае сомнения и подозрения на «виртуальную измену»;
  • для службы безопасности разных организаций: отслеживание прецедентов нецелевого применения персональных компьютеров, их использования в нерабочее время;
  • для службы безопасности компаний: отслеживание фактов набора на клавиатуре критичных слов и словосочетаний, которые составляют коммерческую тайну данной компании, и разглашение которых способно привести к материальному или другому ущербу;
  • для различных секретных служб и правоохранительных органов: проведение анализа и расследования инцидентов, связанных с использование персональных компьютеров;

Большое количество сегодняшних клавиатурных шпионов скрывают себя в системе (т.к. имеют ), что на много упрощает их внедрение и последующее использование. Это делает задачу выявления клавиатурных шпионов одной из приоритетных для антивирусных компаний.

В классификации вредоносных программ «Лаборатории Касперского» под кейлоггеры отведена специальная категория Trojan-Spy (скрытые шпионские программы), в которую входят программы, включающие в себя функции клавиатурных шпионов. Согласно определению Лабаратории Касперского Trojan-Spy, это программы которые осуществляют электронный шпионаж.

Минусы:

  • Некоторые кейлоггеры занесены в сигнатурную базу данных антивирусов и определяются ими как вредонос, из-за этого в процессе работы могут быть удаленны.

Плюсы:

  • Большой выбор
  • Техническая поддержка разработчиков
  • Для установки кейлоггера и получения отчётов не требуется наличие физического доступ к компьютеру

Какой кейлоггер лучше?

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

Какой выбрать кейлоггер решать вам. Главное не забывать что в некоторых случаях использование клавиатурных шпионов незаконно!

Доброго времени суток, всем тем, кто зашел к нам на "огонек". Сегодня речь пойдет о том, что есть keylogger и как оно вообще работает.

Сегодня речь пойдет не о всем известных обычных «зловредах» ( , и т.п.), а о малознакомой (широкому кругу пользователей), но не менее опасной заразе, чем всякие другие.

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

Что ж, работы непочатый край, засучиваем рукава и вперед.
Читаем.

Вводная

Думаю, те из Вас, кто дружит с английским, уже догадались, что keylogger (в переводе, от сокращения keyboard logger ) означает – клавиатурный регистратор, можно сказать, что это так и есть, однако официальное их название (по науке) – клавиатурные шпионы.

Относится сия «нечисть» к классу – программ-шпионов, т.е. попадая на компьютер (ноутбук/нетбук/планшет и т.п.) пользователя, она выполняет свои грязные дела шпионские функции без Вашего на то ведома, согласия и участия.

Выглядит это примерно так:

Вы ничего не подключали, например, из дополнительных услуг своего сотового оператора и вообще знать ничего не знаете про эти услуги, однако денежки с Вашего баланса полегоньку списываются и поступают куда следует.

Вообще, большинство пользователей недооценивают keylogger как класс угроз, а между тем он несет серьезную опасность, т.к. его главное назначение – сохранять и передавать логины с учетных записей пользователей, кошельков и т.д.

По сути, keylogger фиксирует все действия пользователя на клавиатуре, т.е. это некий «репитер» (повторитель), готовый в любой момент «слить» (куда следует) все то, что он за Вами нафиксировал.

Перехват нажатий клавиш может использоваться обычными программами и часто применяется для вызова функций программы из другого приложения с помощью «горячих клавиш» (hotkeys ) или, например, для переключения неправильной раскладки клавиатуры (как Keyboard Ninja ).

Посмотрим на концепцию keylogger "ов глужбе

Также стоит отметить, что современные клавиатурные шпионы не просто записывают коды вводимых клавиш – они "привязывают" клавиатурный ввод к текущему окну и элементу ввода.

Многие же keylogger ’ы отслеживают список запущенных приложений, умеют делать "снимки" экрана по заданному расписанию или событию, шпионить за содержимым буфера обмена и решать ряд задач, нацеленных на скрытное слежение за пользователем.

Хотите знать и уметь, больше и сами?

Мы предлагаем Вам обучение по направлениям: компьютеры, программы, администрирование, сервера, сети, сайтостроение, SEO и другое. Узнайте подробности сейчас!

Записываемая информация сохраняется на диске, и большинство современных клавиатурных шпионов могут формировать различные отчеты (записывая их в специализированный журнал регистрации, т.е Log -файл), могут передавать их или http/ .

Кроме того, ряд современных keylogger ’ов пользуются RootKit- технологиями для маскировки следов своего присутствия в системе.

В общем, вот такая многогранная «зараза», при наличии которой на Вашем компьютере Вы даже чихнуть спокойно не сможете без её ведома:)

Примечание:
Стоит сказать, что кейлоггеры довольно древний тип проклятия появились еще во времена MS-DOS – тогда они представляли собой обработчики прерывания клавиатуры размером около 1 кб.

Однако функции клавиатурных шпионов за прошедшее время не изменились, – по-прежнему их первичной задачей является скрытная регистрация клавиатурного ввода с последующей записью собранной информации на диск или передачей по сети.

Вы скажите, что сейчас на рынке куча антивирусных пакетов, как платных, так и бесплатных (о которых мы писали в своих обзорах, это и и и т.п.), неужели так сложно отловить какой-то «неказистый» клавиатурный шпион?

Порой-таки да, сие весьма проблематично, ибо с точки зрения антивируса это не вирус (т.к. он не обладает способностью к размножению) и не троянская программа, поэтому многие «защитники» если и ловят кейлоггеры, то только со специальной, расширенной базой и дополнительными модулями, на то нацеленными.

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

Вообще, вариантов реализации клавиатурного шпиона преогромное множество, однако у всех них есть общий принцип работы,– это внедрение в процесс прохождения сигнала от нажатия клавиши до появления символа на экране.

Самым распространенным вариантом реализации является кейлоггер, устанавливающий клавиатурные ловушки, хуки (с ударом в боксе нет ничего общего:)).

В Windows хуком называется механизм перехвата сообщений системы, использующий особую функцию:

  • Для этой функции используют механизм Win32API . Большинство клавиатурных шпионов данного вида используют хук WH_Keyboard ;
  • Кроме хука WH_KEYBOARD используют также хук WH_JOURNALRECORD ;
  • Отличие между ними заключается в том, что WH_JOURNALRECORD не требуется наличия отдельной динамической библиотеки (DLL ), что упрощает распространение сей гадости по сети.

Клавиатурные хуки считывают информацию с системной очереди аппаратного ввода, находящейся в системном процессе. Особую популярность данный метод приобрел в связи с тем, что фильтрующая ловушка позволяет перехватить абсолютно все нажатия клавиш, так как хук контролирует все потоки системы.

Также для создания такого шпиона не требуется особых знаний, кроме знания Visual C++ или Delphi и Win32API . Однако использование данного способа вынуждает программиста-хакера создавать отдельную динамическую библиотеку DLL .

Стоит сказать, что методика ловушек достаточно проста и эффективна, но у нее есть ряд недостатков. Первым недостатком можно считать то, что DLL с ловушкой отражается в адресное пространство всех GUI -процессов, что может применяться для обнаружения клавиатурного шпиона.

Вариация 2. Периодический опрос состояния клавиатуры

Примитивный до смешного метод, состоящий в циклическом опросе состояния клавиатуры с большой скоростью. Данный метод не требует внедрения DLL в GUI -процессы, и в результате шпион менее заметен.

Недостатком клавиатурных шпионов такого типа является необходимость периодического опроса состояния клавиатуры с достаточно высокой скоростью, не менее 10-20 опросов в секунду.

Этот метод применяется некоторыми коммерческими продуктами.

Вариация 3. Клавиатурный шпион на базе драйвера

Данный метод наиболее эффективен в сравнении с описанными выше. Возможны как минимум два варианта реализации этого метода – написание и клавиатуры вместо штатного или установка драйвера-фильтра. Этот метод (равно как и ловушка) является документированным методом слежения за клавиатурным вводом.

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

Вариация 4. Шпион-руткит

Может реализовываться как в UserMode , так и в режиме ядра (KernelMode ). В UserMode слежение за клавиатурным вводом может быть построено за счет перехвата обмена процесса csrss.exe драйвером клавиатуры или при помощи слежения за вызовами API -функций типа GetMessage и PeekMessage .

Во многих случаях от руткита-кейлоггера не спасает даже экранная клавиатура, которая часто преподносится как панацея от кейлоггера любого типа.

Аппаратные клавиатурные устройства

В последние годы получили страшное развитие, миниатюрнейшие размеры и чрезвычайную разумность. на вид их иногда сложно заметить, реже, - отличить от флешки, а в случае с банкоматами их вообще можно различать лишь профессионал.

В старом варианте выглядело это как-то так:

Т,е помимо программных средств шпионажа за работой пользователя существуют и аппаратные, которые обладают несомненным достоинством – их нельзя обнаружить программными методами.

Варианты реализации аппаратных кейлоггеров:

  • Установка устройства слежения в "разрыв" кабеля клавиатуры;
  • Встраивание устройства слежения в клавиатуру;
  • Установка USB -устройства, вроде "флешки", карты памяти и тп;
  • Визуальное "наблюдение" за клавиатурой/экраном;
  • Прочее.

Мило, не так ли? Надо признать, что такая гадость наиболее зловредна, но и подсадить её несколько сложнее, - она требует непосредственного физического доступа к устройству.

Способы распространения кейлоггеров

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

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

  • При открытии файла, присоединенного к электронному письму;
  • При запуске файла из каталога, находящегося в общем доступе в peer-to-peer сети;
  • С помощью скрипта на веб-страницах, который использует особенности интернет-браузеров, позволяющие программам запускаться автоматически при заходе пользователя на данные страницы;
  • С помощью ранее установленной вредоносной программы, которая умеет скачивать и устанавливать в систему себе подобные аналоги.

Ну и еще несколько. Для аппаратных, думаю, способ распостранения очевиден.

Методики поиска клавиатурных шпионов

Несмотря на всю изощренность клавиатурных шпионов для их «отлова» (поиска) существуют свои, довольно успешные методики. Приведем самые распространенные из них:

  1. Поиск по сигнатурам.
    Данный метод не отличается от типовых методик поиска вирусов. Сигнатурный поиск позволяет однозначно идентифицировать клавиатурные шпионы, при правильном выборе сигнатур вероятность ошибки практически равна нулю. Однако сигнатурный сканер сможет обнаруживать заранее известные и описанные в его базе данных объекты, так что эта база должна быть большой и ее нужно постоянно обновлять;
  2. Эвристические алгоритмы.
    Это методики поиска клавиатурного шпиона по его характерным особенностям. Эвристический поиск носит вероятностный характер, и он наиболее эффективен для поиска клавиатурных шпионов самого распространенного типа – основанного на ловушках, однако подобные методики дают много ложных срабатываний. Некоторые исследования показали, что существуют сотни безопасных программ, не являющихся клавиатурными шпионами, но устанавливающих ловушки для слежения за клавиатурным вводом и мышью. Наиболее распространенные примеры – программа , программное обеспечение от мультимедийных клавиатур и мышей;
  3. Мониторинг API-функций, используемых клавиатурными шпионами.
    Данная методика основана на перехвате ряда функций, применяемых клавиатурным шпионом, в частности, функций SetWindowsHookEx , UnhookWindowsHookEx, GetAsyncKeyState, GetKeyboardState . Вызов данных функций каким-либо приложением позволяет вовремя поднять тревогу, однако проблемы многочисленных ложных срабатываний будут аналогичны методу 2 ;
  4. Отслеживание используемых системой драйверов, процессов и сервисов.
    Это универсальная методика, применимая не только против клавиатурных шпионов. В простейшем случае можно применять программы типа Kaspersky Inspector , которые отслеживают появление в системе новых файлов.

Чаще всего, - это всё то, что касается методик поиска, теперь пройдемся по способам защиты как от программных, так и от аппаратных кейлоггеров.

Обобщенные способы защиты от keylogger

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

Что, впрочем, помогает не всегда, ибо, т.к. большинство антивирусных продуктов относит кейлоггеры к классу потенциально опасного программного обеспечения, то следует удостовериться, что при настройках по умолчанию используемый антивирусный продукт детектирует наличие программ данного класса. Если это не так, то для их детектирования необходимо выставить подобную настройку вручную. Это позволит защититься от большинства широко распространенных кейлоггеров.

Рассмотрим подробнее методы защиты с неизвестными кейлоггерами или кейлоггерами, изготовленными специально для атаки конкретной системы.

Подробнее про методологию безопасности

Так как основной целью использования клавиатурных шпионов является получение конфиденциальной информации (номера банковских карт, паролей и т.п.), то разумными методами защиты от них являются следующие:

  • Использование одноразовых паролей/двухфакторная аутентификация;
  • Использование систем проактивной защиты;
  • Использование виртуальных клавиатур;
  • Использование расширений для браузеров.

Одноразовый пароль действует только один раз, при этом часто ограничивается и период времени, в течение которого им можно воспользоваться.

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

Аппаратная защита

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

  • В виде "брелка"-токена (например, Blizzard eToken ):

  • В виде «калькулятора»:

В случае использования устройства генерации пароля в виде "брелка", алгоритм получения доступа к защищенной информационной системе таков:

  1. Пользователь подключается к интернету и открывает диалоговое окно для ввода персональных данных;
  2. Далее пользователь нажимает на кнопку ключа для генерации одноразового пароля, после этого пароль на 15 секунд появляется на ЖК -дисплее брелка;
  3. Пользователь вводит в диалоговом окне свой логин, персональный PIN -код и сгенерированное значение одноразового пароля (обычно PIN -код и ключ вводятся последовательно в одно поле passcode);
  4. Введённые значения проверяются на стороне сервера, после чего принимается решение о том, имеет ли право их владелец на работу с закрытыми данными.

При использовании устройства в виде калькулятора для генерации пароля пользователь набирает свой PIN -код на клавиатуре устройства и нажимает кнопку.

Наиболее разумное и современное решение

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

Но вообще говоря самым надежным вариантом сейчас являются системы двухфакторной авторизации основанной на генерации временных кодов.

По сути они являются аппаратными, т.к для генерации используется отдельное устройство (телефон, планшет и тп) с установленным на него ПО, вроде .

Немного про проактивную защиту

Наиболее "распространенным" решением является использование систем проактивной защиты, которые могут предупредить пользователя об установке или активизации программных кейлоггеров.

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

  • Если пользователь недостаточно технически подготовлен, из-за его некомпетентного решения кейлоггер может быть пропущен;
  • Если же участие пользователя в принятии решения системой проактивной защиты минимизировать, то keylogger может быть пропущен в следствии недостаточно жесткой политики безопасности системы.

Вот такая палка о двух концах. И чуть чуть выделим еще кое-что.

Виртуальная клавиатура как решение

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

Виртуальная клавиатура представляет собой программу, показывающую на экране изображение обычной клавиатуры, в которой с помощью мыши можно «нажимать» определенные клавиши.

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

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

Кейлоггер - что это такое? Какая опасность от них исходит? Можно ли использовать в своих интересах кейлоггер? Что это за собой влечёт?

Общая информация

В современном информационном мире очень остро стоит вопрос безопасности. Среди всего разнообразия зловредов отдельно стоит программа-кейлоггер. Что она собой представляет? Какие опасности таит? Как с ними бороться? Те, кто хорошо знает английский язык, наверняка перевели название программы и поняли, что разговор будет вестись о клавиатурном регистраторе. Именно так и переводится их название - keylogger. Но на просторах бывшего СССР их официальное название - клавиатурные шпионы. В чем же заключается их особенность?

Когда программа попадает на компьютер, то она начинает выполнять свои задачи в виде шпионских функций без ведома, участия и согласия человека. Стоит задать вопрос «Кейлоггер - что это такое?», как выясняется, что многие даже не представляют себе, чем же является подобная программа. И из этого следует тот печальный факт, что многие пользователи элементарно недооценивают их угрозу. А зря. Ведь главная цель этих программ - это красть и передавать своему создателю логины и пароли учетных записей пользователя, кошельков, банковских приложений.

Как они работают?

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

История развития

Стоит упомянуть, что кейлоггер для Windows - явление не новое. Первые подобные программы являлись ровесниками MS-DOS. Тогда это были обычные обработчики прерываний клавиатуры, размер которых колебался около отметки в 1 Кб. И с тех пор их основная функция так и не изменилась. Они до сих пор в первую очередь осуществляют скрытную регистрацию клавиатурного ввода, записывают собранную информацию и передают её своему создателю. Может возникнуть вопрос: "Если они так примитивны, то почему многочисленные антивирусные приложения не отлавливают кейлоггеры?". Ведь это несложная программа. И тем не менее справиться специализированным приложениям довольно сложно. Дело в том, что кейлоггер - это не вирус и не троян. И чтобы найти его, необходимо устанавливать специальные расширения и модули. К тому же этих вредоносных программ так много, что против них бессилен и сигнатурный поиск, считающийся одним из самых передовых решений защиты.

Распространение

Как же они попадают на компьютеры пользователей? Существует большое количество путей распространения. Есть и кейлоггер с отправкой на почту всем, кто есть в адресной книге, могут они распространяться и под видом иных программ или же идя в качестве дополнения к ним. Допустим, человек скачивает нелицензионную версию какого-то приложения с совершенно стороннего сайта. Он сам устанавливает себе основное приложение, а вместе с ним - и кейлоггер. Или может на email приходили от знакомых странные сообщения с вложенными файлами? Вполне возможно, что это действовал кейлоггер с отправкой на почту. Открытие письма не несёт в себе угрозы на большинстве сервисов, поскольку это просто набор текста. А вот приложения к нему могут таить в себе опасность. При выявлении подобной ситуации лучше всего будет избавиться от потенциально опасных файлов. Ведь удаленный кейлоггер не опасен и ничем не сможет навредить.

Распространение через почту

Особенное внимание хочется уделить именно этому пути перехода между компьютерами. Иногда приходят сообщения, которые вроде бы имеют в себе ценную информацию или же что-то подобное. В целом расчет делается на то, что любопытный человек откроет письмо, загрузит файл, где имеется «информация» про «бухгалтерию предприятия», «номера счетов, пароли и логины доступа» или же просто «чьи-то обнаженные фотографии». Или если рассылка проводится по данным какой-то компании, то может даже фигурировать имя и фамилия человека. Следует помнить, что нужно всегда осторожно относиться к любым файлам!

Создание и использование

После ознакомления с предыдущей информацией кто-то может подумать: а вот бы и у меня был свой бесплатный кейлоггер. И даже пойдёт их искать и скачивать. Первоначально необходимо упомянуть о том, что это дело наказуемое с позиции Уголовного кодекса. К тому же не следует забывать старую присказку о том, что бесплатный сыр бывает только в мышеловке. И в случае следования по этому пути не следует удивляться, если «бесплатный кейлоггер» будет обслуживать только своего хозяина или же вообще окажется вирусом/трояном. Единственный более-менее верный способ заполучить такую программу - написать её самому. Но опять же это криминально наказуемо. Поэтому стоит взвесить все за и против, прежде чем приступать. Но к чему тогда следует стремиться? Каков может быть конечный результат?

Стандартная клавиатурная ловушка

Это самый простой тип, базирующийся на одном общем принципе работы. Суть программы заключается в том, что это приложение внедряется в процесс передачи сигнала от момента, когда была нажата клавиша, и до отображения символа на экране. Для этого широко используются хуки. В операционных системах так называется механизм, задачей которого является перехват сообщений системы, во время которого используется особая функция, которая является частью Win32API. Как правило, из представленного инструментария чаще всего применяют WH_Keyboard, немногим реже - WH_JOURNALRECORD. Особенность последнего заключается в том, что он не требует наличия отдельной динамической библиотеки, благодаря чему вредоносная программа более быстро распространяется по сети. Хуки считывают всю информацию, что передаётся с аппаратуры ввода. Этот подход довольно эффективен, но имеет ряд недостатков. Так, необходимо создавать отдельную динамическую библиотеку. А она будет отображаться в адресном пространстве процессов, благодаря чему выявить клавиатурный регистратор будет более легко. Чем и пользуются защитники.

Иные методы

Первоначально необходимо упомянуть о таком примитивном до смешного методе, как периодический опрос состояния клавиатуры. В этом случае запускается процесс, который раз 10-20 на секунду проверяет, не были ли нажаты/отпущены определённые клавиши. Все изменения при этом фиксируются. Популярно также создание на базе драйвера. Это довольно эффективный метод, который имеет две реализации: разработка своего фильтра или же своего специализированного программного обеспечения для устройства ввода. Популярны и руткиты. Они реализованы таким образом, чтобы перехватывать данные во время обмена между клавиатурой и управляющим процессом. Но самыми надёжными считаются считывания информации. Хотя бы потому, что обнаружить их программными средствами чрезвычайно сложно, буквально невозможно.

А как с мобильными платформами?

Нами уже было рассмотрено понятие «кейлоггер», что это, как они создаются. Но при рассмотрении информации прицел был на персональные компьютеры. Но ещё больше, чем ПК, существует множество различных мобильных платформ. А что же в случае с ними? Рассмотрим, как работает кейлоггер для "Андроид". В целом принцип функционирования похож с тем, что описывалось в статье. Но нет обычной клавиатуры. Поэтому они нацеливаются на виртуальную, которая выводится на экран, когда пользователь планирует что-то ввести. А затем стоит ввести информацию - как она сразу же будет передана творцу программы. Поскольку система безопасности на мобильных платформах хромает, то кейлоггер для андроид может успешно и длительный срок работать и распространяться. Поэтому всегда, когда скачиваете приложение, необходимо обдумывать права, которые им предоставляются. Так, если программа для чтения книг просит доступа к интернету, клавиатуре, различным административным сервисам мобильного устройства, это причина задуматься о том, а не вредоносный ли это субъект. Это же в полной мере относится и к тем приложениям, которые есть в официальных магазинах - ведь они проверяются не вручную, а автоматикой, которая не отличается совершенством.

Программный кейлоггер

  • англ. keylogger
  • англ. key logger
  • англ. keystroke logger
  • англ. key recorder
  • англ. key trapper
  • англ. key capture program
  • англ. key snooper
  • русск. кейлоггер

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

  • англ. keystroke recording device
  • англ. hardware keylogger
  • русск. аппаратный кейлоггер

Виды информации, которые могут контролироваться

  • нажатия клавиш на клавиатуре
  • нажатия клавиш мышки
  • дата и время нажатия

Классификация

по типу

Программные кейлоггеры принадлежат к той группе программных продуктов, которые осуществляют контроль над деятельностью пользователя персонального компьютера. Первоначально программные продукты этого типа предназначались исключительно для записи информации о нажатиях клавиш клавиатуры, в том числе и системных, в специализированный журнал регистрации (Log-файл), который впоследствии изучался человеком, установившим эту программу. Log-файл мог отправляться по сети на сетевой диск, ftp сервер в сети Интернет, по Email и т.д. В настоящее время программные продукты, сохранившие "по старинке" данное название, выполняют много дополнительных функций - это перехват информации из окон, перехват кликов мыши, перехват буфера обмена, "фотографирование" снимков экрана и активных окон, ведение учета всех полученных и отправленных Email, мониторинг файловой активности, мониторинг системного реестра, мониторинг очереди заданий, отправленных на принтер, перехват звука с микрофона и видео-изображения с веб-камеры, подключенных к компьютеру и т.д., т.е. они, на самом деле, относятся к совершенно другому классу программных продуктов, а именно к мониторинговым программным продуктам .

Аппаратные кейлоггеры представляют собой миниатюрные приспособления, которые могут быть прикреплены между клавиатурой и компьютером или встроены в саму клавиатуру. Они регистрируют все нажатия клавиш, сделанные на клавиатуре. Процесс регистрации абсолютно невидим для конечного пользователя. Аппаратные кейлоггеры не требуют установки какой-либо программы на компьютере, чтобы успешно перехватывать все нажатия клавиш. Когда аппаратный кейлоггер прикрепляется, абсолютно не имеет значения, в каком состоянии находится компьютер - включенном или выключенном. Время его работы не ограничено, т.к. он не требует для своей работы дополнительного источника питания. Объемы внутренней энергонезависимой памяти данных устройств позволяют записывать до 20 миллионов нажатий клавиш, причем с поддержкой юникода. Данные устройства могут быть выполнены в любом виде, так что даже специалист не в состоянии иногда определить их наличие при проведении информационного аудита. В зависимости от места прикрепления аппаратные кейлоггеры подразделяются на внешние и внутренние.

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

по месту хранения Log файла

  • жесткий диск
  • память
  • реестр
  • расшаренный, т.е. общедоступный (shared) сетевой диск
  • удаленный сервер

по методу отправки Log файла

  • e-mail (без участия пользователя)
  • ftp (без участия пользователя)
  • http (https - безопасное соединение по Интернет) (без участия пользователя)
  • любой вариант беспроводной связи (радиодиапазон, инфракрасный диапазон, Bluetooth, WiFi и т.п.)
  • по локальной сети

по методу применения

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

Несанкционированное применение - установка кейлоггера (в том числе аппаратных или программных продуктов, включающих в себя кейлоггер в качестве модуля) происходит без ведома владельца (администратора безопасности) автоматизированной системы или без ведома владельца конкретного персонального компьютера. Несанкционированно применяемые кейлоггеры (программные или аппаратные) именуются как или шпионские устройства. Несанкционированное применение, как правило, связано с незаконной деятельностью (illegal activity). Как правило, несанкционированно устанавливаемые шпионские программные продукты имеют возможность конфигурирования и получения "скомплектованного" исполнимого файла, который при инсталляции не выводит никаких сообщений и не создает окон на экране, а также имеют встроенные средства доставки и дистанционной установки сконфигурированного модуля на компьютер пользователя, т.е. процесс инсталлирования происходит без непосредственного физического доступа к компьютеру пользователя и зачастую не требует наличия прав администратора системы;

Санкционированное применение - установка кейлоггера (в том числе аппаратных или программных продуктов, включающих в себя кейлоггер в качестве модуля) происходит с ведома владельца (администратора безопасности) автоматизированной системы или с ведома владельца конкретного персонального компьютера. Санкционированно применяемые кейлоггеры (программные или аппаратные) именуется как мониторинговые программные продукты (англ. employee monitoring software, parental control software, access control software, personnel security programs и т.п.) Как правило, санкционированно устанавливаемые программые продукты требуют физического доступа к компьютеру пользователя и обязательного наличия прав администратора для конфигурирования и инсталляции;

по включению в сигнатурные базы

Известные кейлоггеры. К данной категории кейлоггеры, сигнатура которых уже включена в сигнатурные базы основных известных фирм-производителей анти-шпионских программных продуктов и/или анти-вирусных программных продуктов.

Неизвестные кейлоггеры. К данной категории относятся кейлоггеры, сигнатура которых не включена в сигнатурные базы основных известных фирм-производителей анти-шпионских программных продуктов и/или анти-вирусных программных продуктов и, зачастую, никогда не будет в них включена по различным причинам:

  • кейлоггеры (модули), разрабатываемые под эгидой различных правительственных организаций;
  • кейлоггеры (модули), которые могут создаваться разработчиками различных закрытых операционных систем и включаться ими в состав ядра операционной системы;
  • кейлоггеры, которые разработаны в ограниченном количестве (часто только в одной или нескольких копиях) для решения конкретной задачи, связанной с похищением критической информации с компьютера пользователя (например, программные продукты, применяемые злоумышленниками-профессионалами). Данные шпионские программные продукты могут представлять собой немного видоизмененные открытые исходные коды кейлоггеров, взятые из сети Интернет и скомпилированные самим злоумышленником, что позволяет изменить сигнатуру кейлоггера;
  • коммерческие, особенно, включенные в качестве модулей в корпоративные программные продукты, которые очень редко вносятся в сигнатурные базы известных фирм-производителей анти-шпионских программных продуктов и/или анти-вирусных программных продуктов. Это приводит к тому, что опубликование злоумышленниками в сети Интернет полнофункциональной версии данного коммерческого мониторингового программного продукта, может способствовать в превращению последнего в шпионский программный продукт , который не обнаруживается анти-шпионскими программными продуктами и/или анти-вирусными программными продуктами;
  • кейлоггеры, представляющие собой модули для перехвата нажатий клавиш на компьютере пользователя, включаемые в состав программ-вирусов. До внесения сигнатурных данных в вирусную базу, данные модули являются неизвестными. Пример – всемирно известные вирусы, натворившие много бед в последние годы, имеющие в своем составе модуль перехвата нажатий клавиатуры и отправки полученной информации в сеть Интернет.

Цели применения

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

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

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

Несанкционированное применение кейлоггеров (в том числе аппаратных или программных продуктов, включающих в себя кейлоггер в качестве модуля) позволяет злоумышленнику:

  • перехватывать чужую информацию, набираемую пользователем на клавиатуре;
  • получить несанкционированный доступ к логинам и паролям доступа в различные системы, включая системы типа «банк-клиент»;
  • получить несанкционированный доступ к системам криптографической защиты информации пользователя компьютера - парольным фразам;
  • получить несанкционированный доступ к авторизационным данным кредитных карточек;

Методы защиты от несанкционированно установленных кейлоггеров

Защита от "известных" несанкционированно установленных программных кейлоггеров:

  • использование анти-шпионских программных продуктов и/или анти-вирусных программных продуктов известных производителей, с автоматическим обновлением сигнатурных баз.

Защита от "неизвестных" несанкционированно установленных программных кейлоггеров:

  • использование анти-шпионских программных продуктов и/или анти-вирусных программных продуктов известных производителей, которые для противодействия шпионским программным продуктам используют, так называемые эвристические (поведенческие) анализаторы, т.е. не требующие наличия сигнатурной базы.

Защита от "известных" и "неизвестных" несанкционированно установленных программных кейлоггеров включает в себя использование анти-шпионских программных продуктов и/или анти-вирусных программных продуктов известных производителей, которые для противодействия шпионским программным продуктам используют:

  • постоянно обновляемые сигнатурные базы шпионских программных продуктов;
  • эвристические (поведенческие) анализаторы, не требующие наличия сигнатурной базы.

Защита от несанкционированно установленных аппаратных кейлоггеров:

  • тщательный внешний и внутренний осмотр компьютерных систем;
  • использование виртуальных клавиатур;

Ссылки

  • HARDWARE KEYLOGGER PS/2 and USB Example of Hardware Keylogger PS/2 and USB
  • Keylogger.Org Независимое сравнение самых популярных кейлоггеров
  • First Step Data Capture - Key Stroke Loggers Кейлоггеры - первый шаг сбора данных. SANS Institute.
  • W32.Dumaru.Y@mm Описание одного из известных вирусов, включающего в себя модуль программного кейлоггера.
  • Наблюдаемость вычислительных систем как неотъемлемая часть комплекса средств защиты в автоматизированной системе
  • The Extent of Systematic Monitoring of Employee E-mail and Internet Use Обзор мониторинговых программных продуктов, применяемых для контоля за действиями сотрудников в корпорациях США. Andrew Schulman
  • Computer And Internet Surveillance in the Workplace: Rough Notes Компьютерное и интернет наблюдение за рабочими местами. Andrew Schulman
  • Детальное описание конструкции аппаратного кейлоггера

В феврале 2005 года бизнесмен из Флориды Джо Лопес (Joe Lopez) подал иск против Bank of America: неизвестные хакеры украли у американского предпринимателя с его банковского счета в Bank of America 90 тыс. долларов, которые каким-то образом были переведены в Латвию.

В результате расследования выяснилось, что на компьютере Лопеса присутствовал вирус Backdoor.Win32.Apdoor (Backdoor.Сoreflood), который фиксирует все клавиатурные нажатия пользователя и через Интернет направляет их злоумышленникам. Именно таким образом к хакерам попали пароль и логин Джо Лопеса, который регулярно работал через Интернет со своим счетом в Bank of America.

Однако суд отказал истцу в возмещении ущерба, указав на то, что г-н Лопес пренебрег элементарными мерами предосторожности при работе со своим банковским счетом через Интернет: детектирование указанного вируса было добавлено в антивирусные базы почти всех производителей антивирусного ПО еще в 2003 году.

Исчезновению 90 тыс. долларов со счета Джо Лопеса помог обычный кейлоггер.

Что такое кейлоггер

В переводе с английского keylogger — это регистратор нажатий клавиш. В большинстве источников можно найти следующее определение кейлоггера: кейлоггер (клавиатурный шпион) — программное обеспечение, основным назначением которого является скрытый мониторинг нажатий клавиш и ведение журнала этих нажатий. Это определение не совсем верно, так как в качестве кейлоггеров может использоваться как программное обеспечение, так и аппаратные средства. Аппаратные кейлоггеры встречаются значительно реже, чем программные, однако при защите важной информации о них ни в коем случае нельзя забывать.

Перехват нажатий клавиш может использоваться обычными программами и часто применяется для вызова функций программы из другого приложения с помощью «горячих клавиш» (hotkeys) или, например, для переключения неправильной раскладки клавиатуры (как Keyboard Ninja). Существует масса легального ПО, которое используется администраторами для наблюдения за тем, что делает работник в течение дня, или для наблюдения пользователем за активностью посторонних людей на своем компьютере. Однако где проходит грань между «законным» использованием «легального» ПО и его использованием в криминальных целях? То же «легальное» ПО зачастую используется и в целях умышленного похищения секретных данных пользователя — например, паролей.

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

  • для родителей: отслеживание действий детей в Интернете и оповещение родителей в случае попыток зайти на сайты «для взрослых» (parental control);
  • для ревнивых супругов: отслеживание действий своей половины в Сети в случае подозрения на «виртуальную измену»;
  • для службы безопасности организации: отслеживание фактов нецелевого использования персональных компьютеров, их использования в нерабочее время;
  • для службы безопасности организации: отслеживание фактов набора на клавиатуре критичных слов и словосочетаний, которые составляют коммерческую тайну организации, и разглашение которых может привести к материальному или иному ущербу для организации;
  • для различных служб безопасности: проведение анализа и расследования инцидентов, связанных с использование персональных компьютеров;
  • другие причины.

Однако это скорее привычное, чем объективное положение вещей, так как для решения всех указанных задач существуют и другие способы, а ЛЮБОЙ легальный кейлоггер может использоваться во вредоносных целях, и в последнее время именно кража информации пользователей различных систем онлайновых платежей стала, к сожалению, главным применением кейлоггеров (для этих же целей вирусописателями постоянно разрабатываются новые троянцы-кейлоггеры).

Кроме того, многие кейлоггеры прячут себя в системе (т.к. имеют функции руткита), что значительно облегчает их использование в преступных целях. Такое использование делает задачу обнаружения кейлоггеров одной из приоритетных для антивирусных компаний. В классификации вредоносных программ «Лаборатории Касперского» существует специальная категория Trojan-Spy (шпионские программы), в которую попадают программы, содержащие функции клавиатурных шпионов . Согласно определению Trojan-Spy, «эти троянцы осуществляют электронный шпионаж: вводимая с клавиатуры зараженного компьютера информация, снимки экрана, список активных приложений и действия пользователя с ними сохраняются в какой-либо файл на диске и периодически отправляются злоумышленнику».

Чем опасны кейлоггеры

В отличие от других типов вредоносного программного обеспечения, для системы кейлоггер абсолютно безопасен. Однако он может быть чрезвычайно опасным для пользователя: с помощью кейлоггера можно перехватить пароли и другую конфиденциальную информацию, вводимую пользователем с помощью клавиатуры. В результате злоумышленник узнает коды и номера счетов в электронных платежных системах, пароли к учетным записям в online-играх, адреса, логины, пароли к системам электронной почты и так далее.

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

Кейлоггеры, наряду с фишингом и методами социальной инженерии (см. статью «Кража собственности в компьютерных сетях»), являются сейчас одним из главных методов электронного мошенничества. Однако если в случае фишинга бдительный пользователь может сам себя защитить — игнорировать явно фишинговые письма, не вводить персональные данные на подозрительных веб-страницах, — то в случае с клавиатурными шпионами никаким другим способом, кроме использования специализированных средств защиты, обнаружить факт шпионажа практически невозможно.

  • Сергей Савенков

    какой то “куцый” обзор… как будто спешили куда то