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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Иные методы

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

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

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

Наши компьютеры, ноутбуки, нетбуки! А тут еще непонятная дрянь, называемая кейлоггер. Keylogger (англ., от сокращения keyboard logger) значит клавиатурный регистратор, но правильнее их называть клавиатурными шпионами, так как относится к классу spyware – программ-шпионов, которые, попав на компьютер пользователя, выполняют свои задачи без ведома самого пользователя, а тем более согласия и участия.

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


Keylogger характеризуется тем, что способен фиксировать нажатия клавишей пользователем на клавиатуре, а затем доставить полученные данные тому и туда, куда следует. Современные кейлоггеры умеют соотносить клавиатурный ввод с текущим окном и элементом ввода. Многие из них умеют отслеживать список работающих приложений, делают “фото” экрана по заданному расписанию или событию, шпионят за содержимым буфера обмена, скрытно следить за пользователем. Вся собранная информация сохраняется на диске, а затем записывается в Log-файл – что-то вроде журнала регистрации, данные могут быть переданы по электронной почте или http/ftp-протоколу. При этом, некоторые продвинутые используют RootKit-технологии, маскирую следы своего пребывания в системе.

Ну, неужели же так сложно отловить этих приятелей при наличии современных программ?

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

По каким принципам работают кейлоггеры?

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

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

Самым частый вариант – установка клавиатурных ловушек - хуки В Windows хук - это перехват сообщений системы с использованием особого мехнизма Win32API. Большая часть клавиатурных шпионов этого типа пользуются хуком WH_Keyboard. Также может быть использован хук WH_JOURNALRECORD. Разница в том, что WH_JOURNALRECORD не требует наличия отдельной динамической библиотеки (DLL), упрощая распространение это вредоносного софта по сети.

Опрос состояния клавиатуры
Очень простой метод заключается в цикличном опросе состояния клавиатуры с большой скоростью. Не требуется внедрения DLL в GUI-процессы (GUI – графический пользовательский интерфейс). Недостаток подобных клавиатурных шпионов - в необходимости периодического опроса состояния клавиатуры с достаточно высокой скоростью (10-20 опросов в секунду).

Кейлоггер на базе драйвера
Метод более эффективный, по сравнению с описанными. Как минимум, метод возможно реализовать 2 способами: написать и установить в систему своего драйвера клавиатуры вместо штатного или установить драйвер-фильтр.

Клавиатурные ловушки составляют подавляющее большинство среди всех кейлоггеров.

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

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

Как реализовано:

  • Устанавливаются устройства слежения в разрыв кабеля клавиатуры (например, устройство в виде переходника PS/2);
  • Устройство слежения может быть встроено в клавиатуру;
  • И просто визуальное наблюдение за клавиатурой (например, миниатюрная камера, находящаяся над панелью ввод данных банкомата).

Каким же образом keylogger распространяются?

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

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

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

Оставьте свой комментарий!

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

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

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

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

Вводная

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

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

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

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

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

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

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

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

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

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

Записываемая информация сохраняется на диске, и большинство современных клавиатурных шпионов могут формировать различные отчеты (записывая их в специализированный журнал регистрации, т.е 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 -устройства, вроде "флешки", карты памяти и тп;
  • Визуальное "наблюдение" за клавиатурой/экраном;
  • Прочее.

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

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

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

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

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

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

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

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

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

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

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

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

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

Наш обзор позволит вам сделать оптимальный выбор.

Особенности выбора

Что же такое по своей сути клавиатурный шпион? Это программа, которая, строго говоря, напрямую никак не связана с клавиатурой.

Она устанавливается в память компьютера и действует на . Часто признаков ее деятельности не видно на компьютере, если не искать их целенаправленно.

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

То есть, направлено действие такого софта на сбор информации, вводимой через клавиатуру.

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

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

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

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

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

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

Технические характеристики

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

Название Тип лицензии Тип собираемой информации Функционал Дизайн
SC-KeyLog Бесплатно Вся Широкий Упрощенный
WideStep Handy Keylogger Бесплатно/Платно Вся Широкий Улучшенный
Actual Spy Платно Вся Очень широкий Стандартный
EliteKeylogger Платно Вся Широкий Стандартный
The Rat! Бесплатно/Платно Меньше, чем в предыдущих Довольно широкий Неэстетичный
SPYGO Бесплатно В зависимости от версии В зависимости от версии Стандартное оформление Windows
Ardamax Keylogger 2.9 Бесплатно С клавиатуры Суженный Упрощенный
NS Keylogger Personal Monitor 3.8 Бесплатно Вся Суженный Упрощенный
KGB Spy Платно С клавиатуры+ открытые программы Узкий Простой
Golden Keylogger 1.32 Бесплатно С клавиатуры Очень узкий Простой

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

Подробнее об этих утилитах же рассказано ниже.

SC-KeyLog

Это объемная и функциональная программа шпион, которая распространяется бесплатно.

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

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

  • Возможность удаленного доступа к файлу с другого устройства;
  • Отсутствие следов деятельности программы на компьютере при правильных настройках;
  • Разнообразие собираемых данных – практически информация обо всех действиях на ПК может быть доступна.
  • Сохраняет пароли только не выше NT0;
  • Слишком простое меню и неэстетичный дизайн;
  • Достаточно неудобный формат отображения результата.

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

WideStep Handy Keylogger

Это приложение распространяется условно бесплатно. Цена полной платной версии составляет 35 долларов.

Довольно интересная и функциональная программа, которая стоит своих денег, если вы готовы их заплатить.

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

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

Мнения юзеров об этом софте таковы: «Удобная, простая и функциональная программа. Довольно незаметна при работе».

Actual Spy

Это функциональная и сложная платная программа стоимостью 600 рублей. Однако она имеет демонстрационную версию, распространяющуюся бесплатно.

Особенность этого софта – способность в заданный период времени.

Это помогает решить проблему ввода графического пароля/ключа, которые в последнее время стали широкого распространяться.

  • Множество типов собираемой информации плюс возможность делать скриншоты с экрана в указанный период;
  • Большое количество других дополнительных функций и особенностей;
  • Записывает не только действия, но и время их выполнения;
  • Шифрует сформированный журнал.
  • Длительность работы (сбора информации) в бесплатной демонстрационной версии составляет 40 минут;
  • Платное распространение, хотя и более или менее приемлемая цена;
  • Достаточно большой вес программы.

Отзывы пользователей о данном приложении таковы: «Программа отличная. Молодцы программисты!».

EliteKeylogger

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

Интересная и удобная особенность автоматический запуск софта, происходящий одновременно с запуском самой системы.

Сложно обнаруживается или вовсе не обнаруживается даже специальными антикейлогерами.

  • Полностью срытое действие и сложность в обнаружении;
  • Формат работы типа низкоуровневого драйвера и автоматический запуск при загрузке системы;
  • Отслеживает также и нажатия не только основных, но и служебных клавиш на клавиатуре.
  • Достаточно сложная система установки программы на ПК;
  • Высокая стоимость программы, но в российском интернете можно найти старую взломанную версию;
  • Довольно сложная система индивидуальных настроек программы, которая, впрочем, оправдывает себя.

Что же говорят юзеры об этом софте? «Хорошая программа», «Немного не дотягивает до Jetlogger».

The Rat!

Довольно распространенная и популярная, функциональная утилита с платной лицензией.

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

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

  • Простота, функциональность и высокая стабильность работы;
  • Минимальный вес файла и место, занимаемое им на компьютере;
  • Достаточно много настроек.
  • Довольно неприятный дизайн, выполненный в черном, белом и красном цветах;
  • Функционал несколько уже, чем в программах, описанных до этого;
  • Неудобный просмотр журнала и вообще неудобный интерфейс и использование.

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

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

Код кейлоггера помещен в цикл Timer, который обновляется каждые 10 ms. Используются модули: Windows и ClipBrd.

//Сравниваем текущие состояние клавиш for f:= 0 to 255 do if a[f] <> GetAsyncKeyState(f) then begin //Реакция на отжатие клавиши if KeePass.Checked and (GetAsyncKeyState(f) = 0) then Memo1.Caption:= Memo1.Caption + chr(f); //Реакция на нажатие клавиши if not KeePass.Checked and (GetAsyncKeyState(f) <> 0) then Memo1.Caption:= Memo1.Caption + chr(f); end; //Сохраняем в массив текущее состояние клавиш for f:= 0 to 255 do a[f] := GetAsyncKeyState(f); //Запись при изменении в буфере обмена if s <> Clipboard.AsText then begin s:= Clipboard.AsText; Memo2.Caption:= Memo2.Caption + s + " "; end;
Программа Simple Logger выглядит так:

В окне -Keyboard- выводятся клавиши без учета регистра и языка ввода. Отображается символ, номер которого равен коду клавиши: chr(f). Можно доработать программу для корректного отображения всех символов, но это не требуется для настоящего исследования.

В окно -Clipboard- происходит копирование при изменении содержимого буфера.

Слабые места KeePass и их устранение

1. Ввод основного пароля

По умолчанию основной пароль в KeePass вводится без защищенного режима, поэтому он легко определяется в Simple Logger. Это самое критичное место в безопасности, т.к. здесь мы получаем доступ сразу ко всей базе паролей.

Для устранения проблемы необходимо включить настройку Безопасности «Вводить основной пароль в защищенном режиме (подобно UAC в Windows Vista и выше)». Этот режим не позволяет логгеру получить доступ к клавиатуре. Кроме того, в нем невозможно сделать скриншот для определения расположения Ключевого файла.

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

2. Буфер обмена

Simple Logger реагирует на изменение буфера обмена с частотой 100 раз в секунду. Таким образом, попадание пароля в буфер и его последующее удаление через несколько секунд не дает защиты в данном случае.

Для устранения этой проблемы можно использовать Автонабор.

3. Автонабор

Реакция на автонабор KeePass происходит на отжимание клавиши, а не нажатие. Это позволяет получить защиту от некоторых кейлоггеров. Для обхода этого в Simple Logger есть дополнительная настройка: «KeePass Auto-Type». Если она включена, то логгер срабатывает на отжимание клавиши.

При автонаборе через KeePass: MyLoginName LongPassword123

В Simple Logger появится запись:

Simple Logger ни как не учитывает сочетания клавиш. Как видите, клавиша Shift отобразилась в виде спецсимвола (похожего на «+») и «?». Shift отпускается как до, так и после заглавной буквы. Тем не менее, этого достаточно, чтобы понять пароль.

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

Simple Logger на Двойное усложнение автонабора отреагирует следующим образом:

  • Вставка из буфера обмена «Ctrl + V» отобразилась как «V◄?»;
  • Стрелка влево – «%» (код клавиши и символ #37);
  • Стрелка вправо – «"» (код клавиши и символ #39).
Можно написать небольшой алгоритм и восстановить правильный пароль, используя данные из обоих окон. Эта настройка усложняет работу кейлоггера, но не гарантирует защиты – при желании пароль легко восстанавливается.

От кейлоггера, который «заточен» под KeePass, могут помочь дополнительные средства защиты.

4. Дополнительные средства защиты

В некоторых программных комплексах есть такие возможности как:
  • Защита ввода данных с аппаратной клавиатуры;
  • Защищённый браузер.
При включении защиты ввода данных с аппаратной клавиатуры Simple Logger уже не может получить данные при автонаборе KeePass, если они вводятся в браузере в форму для пароля. В этом случае слабым местом будет работа через буфер обмена.

При использовании защищенного браузера получить доступ к буферу обмена и клавиатуре средствами Simple Logger не удалось. Кроме того, не было возможности делать скриншоты.

Вместо заключения

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

Я тестировал последнюю версию KeePass 2.36 в среде Windows 8.1. Справедливости ради надо отметить, что данная проблема не является только проблемой KeePass. Есть множество других хранителей паролей с большей или меньшей степенью надежности, но это тема уже другого исследования.

Ссылки

  1. Simple Logger на GitHub
    //Кому не страшно, в архиве «SimpleLogger_for_Win64.7z» можно найти exe-шник. Программа не позволяет вести полноценный кейлоггинг, предназначена для исследования безопасности и ознакомительных целей.
UPD (27.07.2017)

Плагин для браузера

Как заметил пользователь dartraiden , можно использовать модуль KeePassHttp совместно с дополнением для браузера PassIFox или ChromeIPass . Этот плагин (по заявлению разработчика) обеспечивает безопасное экспонирование записей KeePass через HTTP.

Данная связка позволяет автоматически заполнять логин и пароль в браузере, когда KeePass разблокирован. Simple Logger ни как не реагирует в данном случае.

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

Создание нового мастер пароля

Как заметил arthur_veber :
При замене мастер пароля, а так же при создании нового, не применяется безопасный режим.

В этом случае Simple Logger перехватывает вводимый в KeePass мастер пароль.

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

Советы здесь давать трудно. Наверное, нужно обратить внимание разработчиков на эту проблему.

Другие средства атаки

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

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

Теги: Добавить метки



Эта статья также доступна на следующих языках: Тайский

  • Next

    Огромное Вам СПАСИБО за очень полезную информацию в статье. Очень понятно все изложено. Чувствуется, что проделана большая работа по анализу работы магазина eBay

    • Спасибо вам и другим постоянным читателям моего блога. Без вас у меня не было бы достаточной мотивации, чтобы посвящать много времени ведению этого сайта. У меня мозги так устроены: люблю копнуть вглубь, систематизировать разрозненные данные, пробовать то, что раньше до меня никто не делал, либо не смотрел под таким углом зрения. Жаль, что только нашим соотечественникам из-за кризиса в России отнюдь не до шоппинга на eBay. Покупают на Алиэкспрессе из Китая, так как там в разы дешевле товары (часто в ущерб качеству). Но онлайн-аукционы eBay, Amazon, ETSY легко дадут китайцам фору по ассортименту брендовых вещей, винтажных вещей, ручной работы и разных этнических товаров.

      • Next

        В ваших статьях ценно именно ваше личное отношение и анализ темы. Вы этот блог не бросайте, я сюда часто заглядываю. Нас таких много должно быть. Мне на эл. почту пришло недавно предложение о том, что научат торговать на Амазоне и eBay. И я вспомнила про ваши подробные статьи об этих торг. площ. Перечитала все заново и сделала вывод, что курсы- это лохотрон. Сама на eBay еще ничего не покупала. Я не из России , а из Казахстана (г. Алматы). Но нам тоже лишних трат пока не надо. Желаю вам удачи и берегите себя в азиатских краях.

  • Еще приятно, что попытки eBay по руссификации интерфейса для пользователей из России и стран СНГ, начали приносить плоды. Ведь подавляющая часть граждан стран бывшего СССР не сильна познаниями иностранных языков. Английский язык знают не более 5% населения. Среди молодежи — побольше. Поэтому хотя бы интерфейс на русском языке — это большая помощь для онлайн-шоппинга на этой торговой площадке. Ебей не пошел по пути китайского собрата Алиэкспресс, где совершается машинный (очень корявый и непонятный, местами вызывающий смех) перевод описания товаров. Надеюсь, что на более продвинутом этапе развития искусственного интеллекта станет реальностью качественный машинный перевод с любого языка на любой за считанные доли секунды. Пока имеем вот что (профиль одного из продавцов на ебей с русским интерфейсом, но англоязычным описанием):
    https://uploads.disquscdn.com/images/7a52c9a89108b922159a4fad35de0ab0bee0c8804b9731f56d8a1dc659655d60.png