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

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

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

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

В качестве демонстрации возможностей TapLogger была осуществлена атака по успешному подбору PIN-кода. При переборе обычными методами для определения 4-значного PIN-кода требуется перебрать примерно 10 тысяч вариантов. При использовании TapLogger количество попыток сокращается до 81 и позволяет достигнуть 100-процентного шанса на успех. Для 6-значных PIN-кодов, которые требуют перебора миллиона комбинаций, число комбинаций при использовании TapLogger составляет 729, а вероятность успешного взлома оценивается в 0.8.

Несмотря на то, что прототип кейлоггера подготовлен для платформы Android, нет никаких препятствий в реализации аналога для других мобильных платформ. Разработчики обращают внимание, что возможность неограниченного доступа установленных приложений к сенсорам движения, без предварительного подтверждения пользователем данных полномочий, является недоработкой в архитектуре безопасности таких платформ, как Android, Windows 8 и Blackberry OS.