Веб-атака gesture jacking похожа на кликджекинг, но надежнее

Веб-атака gesture jacking похожа на кликджекинг, но надежнее

Веб-атака gesture jacking похожа на кликджекинг, но надежнее

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

Новый вектор атаки, по сути, представляет собой вариант кликджекинга, он же UI redress (переадресация интерфейса). Обнаруживший его эксперт Amazon назвал свою находку cross window forgery (дословно: межоконный подлог). Ознакомившись с новой угрозой, Эрик Лоуренс (Eric Lawrence) из Microsoft решил, что gesture jacking (перехват жеста) будет точнее.

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

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

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

 

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

 

«Атака gesture-jacking более надежна [в сравнении с кликджекингом], так как при этом не нужно тщательно позиционировать окна, рассчитывать время клика и учитывать особенности настройки дисплея пользователя», — отметил в своем блоге Лоуренс.

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

Разработчики браузеров пытаются бороться с этой неистребимой проблемой. Компания Google, например, ввела опцию принудительной загрузки страниц без фокуса на указанных в URL фрагментах. В Mozilla обсуждают такую возможность, но пока обходятся патчами (CVE-2023-34414, CVE-2023-6206), хотя это вряд ли уязвимость — скорее фича.

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

Хорошо помогает запрет демонстрации страниц в фреймах через настройки Content Security Policy. Использование опции frame-ancestors позволит контролировать список URL прямых родителей по DOM, которым разрешено использовать контейнеры <frame>, <iframe>, <object>, <embed>. Как вариант, можно организовать спецпроверки (размер окна при загрузке контента, длительность подачи запроса через клавиатурный ввод) и активировать элементы интерфейса на страницах лишь по сигналу об отсутствии угрозы.

Android запретит доступ к экрану «лишним» приложениям

Google, похоже, готовит ещё одно нововведение по части безопасности Android. В тестовой сборке Android Canary 2602 обнаружена новая функция для Advanced Protection Mode — режима «максимальной защиты», который компания представила в Android 16.

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

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

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

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

По данным аналитиков, в новой версии Android Canary  при включении Advanced Protection Mode система:

  • запрещает выдавать разрешение Accessibility Service приложениям, не признанным Accessibility Tools;
  • автоматически отзывает уже выданные разрешения у таких приложений.

Если приложение сильно зависит от этого API, оно просто перестанет работать.

В тестах, например, приложение dynamicSpot (эмулирующее Dynamic Island на Android) становилось недоступным: пункт был с пометкой «Restricted by Advanced Protection». Причина простая: оно использует AccessibilityService для чтения уведомлений и отображения поверх других приложений.

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

RSS: Новости на портале Anti-Malware.ru