Исследователи из IBM и университета штата Пенсильвания разработали концепт трояна, который распознаёт нажатия клавиш, анализируя информацию с акселерометра и сенсора ориентации. При нажатии в разные части экрана показания датчиков отличаются. Если знать экранную раскладку, то можно определить, какая цифра была нажата.
Тренировка осуществляется оригинальным методом: троян маскируется под простенькую аркаду, в которой пользователю нужно нажимать в разные части экрана. В процессе игры программа фиксирует показания с датчиков и собирает базу данных для статистического анализа. Как сообщается, 400 нажатий вполне достаточно.
Для сбора статистических данных троян маскируется под простенькую аркаду, в которой требуется нажимать в разные части экрана
Научившись распознавать нажатия клавиш на экранной клавиатуре, вредоносная программа может получить доступ к конфиденциальной информации, включая банковские пин-коды.
Это уже не первая попытка сделать подобную программу. Новый троян TapLogger отличается от своего предшественника TouchLogger тем, что оснащён режимом обучения, использует информацию не только с акселерометра, но также с датчика ориентации, и главное — он проверен в деле. Уже проведено две успешные атаки: распознаны пин-код для разлочки Android-смартфона и пин-код банковского приложения.
Информация с датчиков движения доступна любому приложению на смартфоне. Операционные системы Android и iOS практически не отличаются по безопасности — обе они без проблем предоставляют доступ к этой информации.
Результаты тестирования трояна TapLogger, а также алгоритм определения нажатий по экранной клавиатуре опубликован в научной работе “TapLogger: Inferring User Inputs On Smartphone Touchscreens Using On-board Motion Sensors” (PDF). Её презентация состоялась на конференции ACM по безопасности и приватности в беспроводных и мобильных сетях 16-18 апреля в Аризоне.