Сайт о телевидении

Сайт о телевидении

» » Разбираемся, что такое кейлоггер

Разбираемся, что такое кейлоггер

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

  • англ. 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
  • Детальное описание конструкции аппаратного кейлоггера

Наши компьютеры, ноутбуки, нетбуки! А тут еще непонятная дрянь, называемая кейлоггер. 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 сети;
  • С помощью скрипта на веб-страницах, использующего особенности интернет-браузеров и позволяющие программам запускаться автоматически, как только пользователь посетил страницу;
  • Через уже установленную вирусную программу, умеющую скачивать и устанавливать в систему себе подобных.

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

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

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

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

Сейчас они могут не только фиксировать клавиатурные нажатия, но и:

  1. Регистрировать список запущенных приложений
  2. Записывать историю посещения интернет сайтов (как её удалить читаем в статье как очистить историю посещений)
  3. Производить снимки экрана
  4. Контролировать содержимое буфера обмена
  5. Отмечать файлы, отправляемые на печать и так далее

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

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

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

К примеру, кейлоггеры могут быть полезны:

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

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

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

Есть много разновидностей кейлоггеров

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

После тестирования более 60 распространённых кейлоггеров можно сделать такие выводы:

  • Метод работы. Большая часть клавиатурных шпионов использует самые примитивные методы сбора информации. То есть это говорит, о том, что при своей работе они никак не маскируются и имеют примитивную защиту. То есть понятно, обычный пользователь их скрытой работы не видит, но стоит только провести элементарную проверку и они элементарно вычисляются. Но, как мы наблюдали описания многих из них - все они якобы полностью незаметны, как видим это далеко не так.
  • Лишь около 10% имеют более сложную структуру работы, в том числе методы защиты.

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

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

На борьбу с ними выступают такие типы программ:
  • Антикейлоггеры
  • Antispyware-приложения

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

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

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

Подытожив, можно сделать некоторые выводы

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

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

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

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

В переводе с английского Keylogger (Keyboard Logger) обозначает «клавиатурный регистратор». Однако на самом деле кейлоггер является программой-шпионом, отслеживающей все происходящие с клавиатурой действия.

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

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

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

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

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

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

  • Дополнительный «переходник» между клавиатурой и корпусом компьютера;
  • Встроенное в клавиатуру устройство;
  • Миниатюрная видеокамера, снимающая клавиатуру;
  • Неизвестное USB-устройство и др.

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

  • Родительского контроля;
  • Слежения за использованием рабочего времени сотрудниками компании;
  • Служб безопасности
  • Ревнивых супругов.

Как не стать жертвой кейлоггера

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

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

Для проверки безопасности вводимых паролей через 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, скомпрометирована, то могут использоваться друге средства атаки, помимо кейлоггера. В этом случае перечень действий по противодействию атаке будет зависеть от конкретной ситуации.

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

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