Новая разновидность атак clickjacking, получившая название «DoubleClickjacking», позволяет злоумышленникам обманом заставить пользователей авторизовать важные действия с помощью двойного щелчка мыши, обходя при этом существующие средства защиты от подобных атак.
Кликджекинг, также известный как переделка пользовательского интерфейса, – это создание злоумышленниками вредоносных веб-страниц, которые обманом заставляют посетителей нажимать на скрытые или замаскированные элементы веб-страницы.
Атаки осуществляются путем наложения легитимной веб-страницы в скрытом iframe на веб-страницу, созданную злоумышленниками. Эта созданная злоумышленниками веб-страница предназначена для совмещения своих кнопок и ссылок со ссылками и кнопками на скрытом iframe.
Затем злоумышленники используют свою веб-страницу, чтобы побудить пользователя нажать на ссылку или кнопку, например, чтобы выиграть награду или посмотреть симпатичную картинку.
Однако когда пользователь нажимает на страницу, он на самом деле нажимает на ссылки и кнопки скрытого iframe (легитимного сайта), который потенциально может выполнять вредоносные действия, такие как авторизация приложения OAuth для подключения к его учетной записи или принятие запроса MFA.
С течением времени разработчики веб-браузеров ввели новые функции, которые предотвращают большинство подобных атак, например, не позволяют передавать файлы cookie между сайтами или вводят ограничения безопасности (X-Frame-Options или frame-ancestors) на то, какие сайты могут быть iframe.
Новая атака DoubleClickjacking
Эксперт по кибербезопасности Паулос Йибело представил новую веб-атаку под названием DoubleClickjacking, которая использует время двойного щелчка мыши, чтобы обманом заставить пользователей выполнить важные действия на сайтах.
В этом сценарии атаки угрожающий субъект создает веб-сайт, на котором отображается безобидная на первый взгляд кнопка с заманухой, например «нажмите здесь», чтобы посмотреть вознаграждение или фильм.
Когда посетитель нажимает на кнопку, создается новое окно, которое закрывает исходную страницу и содержит другую замануху, например, необходимость решить капчу, чтобы продолжить. В фоновом режиме JavaScript на исходной странице изменит ее на легитимный сайт, который злоумышленники хотят обманом заставить выполнить то или иное действие.
Капча в новом, наложенном окне предлагает посетителю дважды щелкнуть по чему-либо на странице, чтобы решить капчу. Однако эта страница прослушивает событие mousedown и, обнаружив его, быстро закрывает накладную капчу, в результате чего второй клик приходится на отображаемую кнопку авторизации или ссылку на ранее скрытой легитимной странице.
В результате пользователь ошибочно нажимает на открытую кнопку, потенциально разрешая установку плагина, подключение приложения OAuth к своей учетной записи или подтверждение запроса многофакторной аутентификации.
Что делает эту атаку такой опасной, так это то, что она обходит все существующие средства защиты от кликджекинга, поскольку не использует iframe, не пытается передать cookies другому домену. Вместо этого действия происходят непосредственно на легитимных сайтах, которые не защищены.
Yibelo утверждает, что эта атака затрагивает практически все сайты, и делится демонстрационными видео, в которых DoubleClickjacking используется для захвата аккаунтов Shopify, Slack и Salesforce.
Исследователь также предупреждает, что атака не ограничивается веб-страницами – она может использоваться и для расширений браузера.
«Например, я провел исследование этой концепции для популярных браузерных криптокошельков, которые используют эту технику для авторизации транзакций web3 & dApps или отключения VPN для раскрытия IP и т. д.»
- объясняет Yibelo
Для защиты от этого типа атак Yibello поделился JavaScript, который можно добавить на веб-страницы, чтобы отключить чувствительные кнопки до тех пор, пока не будет сделан жест. Это предотвратит автоматическое нажатие на кнопку авторизации при двойном щелчке, когда удаляется накладка злоумышленника.
Исследователь также предлагает потенциальный HTTP-заголовок, который ограничивает или блокирует быстрое переключение контекста между окнами во время последовательности двойных нажатий.