Миллионы сайтов уязвимы к XSS из-за корявой имплементации OAuth

Миллионы сайтов уязвимы к XSS из-за корявой имплементации OAuth

Миллионы сайтов уязвимы к XSS из-за корявой имплементации OAuth

Исследователи из Salt Labs обнародовали разбор нового вектора XSS-атаки (межсайтовый скриптинг), который в теории может угрожать миллионам сайтов по всему миру.

Стоит учитывать, что это не уязвимость в каком-либо продукте, поэтому её нельзя устранить централизованно. Корень проблемы кроется в сочетании веб-кода с популярным приложением OAuth.

Не так давно мы разбирали уязвимости протокола OAuth 2.0 и оценивали, опасно ли аутентифицироваться через профиль в социальных сетях. А в мае на Anti-Malware.ru рассказывали о том, как противостоять растущему числу атак с использованием OAuth-приложений.

В описанном Salt Labs векторе проблема не в самом OAuth, а скорее в его реализации на веб-сайтах. Если администратор ресурса недостаточно качественно имплементировал OAuth (что случается довольно часто), у злоумышленников открывается возможность провести XSS-атаку и получить контроль над аккаунтом.

В отчёте Salt Labs утверждается, что описанная проблема была обнаружена на сайтах таких крупных проектов, как Booking.com, Grammarly и OpenAI. Если администраторы этих ресурсов не смогли должным образом имплементировать OAuth, чего можно ждать от менее значимых веб-сайтов, спрашивают эксперты.

«Если мы продолжим прощупывать разные интернет-проекты, мы гарантированно найдём больше сайтов с этой проблемой. Я убеждён в этом», — пишет Янив Балмас из Salt Labs.

«Для эксплуатации этой бреши мы использовали JavaScript-код, который запускал поток OAuth-аутентификации в новом окне, а затем считывал токен из этого окна».

Google перенаправляет пользователя, но с «секретами» аккаунта в URL, а код JS считывает URL-адрес из новой вкладки и вытаскивает оттуда учётные данные.

Salt Labs создала специальный сканер, с помощью которого владельцы сайтов смогут узнать, уязвимы ли их проекты.

Google лишает Android-трояны главного инструмента слежки

Google внедряет новую функциональность для улучшения безопасности Android-приложений. Теперь разработчики могут гораздо проще защищать пользователей своего софта от слежки и кражи конфиденциальных данных. В частности, в Android 16 появился новый флаг — accessibilityDataSensitive.

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

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

С помощью флага accessibilityDataSensitive разработчики могут отмечать элементы интерфейса, которые содержат конфиденциальную информацию. Если установить флаг в значение true, нелегитимные приложения с доступом к Accessibility Services (если у них не установлен флаг isAccessibilityTool=true) не смогут получить доступ к этим данным.

 

Уже сейчас Google внедрила этот флаг в setFilterTouchesWhenObscured. Это значит, что в тех приложениях, где этот метод уже использовался для защиты от «тапджекинга», элементы автоматически будут считаться защищаемыми. Это добавляет защиту без необходимости усилий со стороны разработчиков.

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

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