Миллионы сайтов уязвимы к 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 создала специальный сканер, с помощью которого владельцы сайтов смогут узнать, уязвимы ли их проекты.

ИИ OpenAI полез на GitHub за утёкшими ключами, а затем выдумал данные

Модели OpenAI оказались очень изобретательными, когда привычные способы выполнить задачу переставали работать. Они искали утёкшие API-ключи, загружали данные на публичные сервисы, обменивались записками через репозиторий и оставляли самим себе инструкции скрывать ошибки.

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

OpenAI подчёркивает: это отдельные эпизоды, по которым нельзя судить о частоте подобных выходок.

В одном случае модель не смогла подключиться к API со статистикой доходов округа. Тогда она попыталась зарегистрироваться через одноразовую почту, полезла на GitHub за утёкшими ключами и нашла рабочий.

Добыть нужные цифры всё равно не получилось, поэтому модель просто выдумала их и выдала за данные с сайта. О неудаче и чужом ключе она скромно промолчала.

Другие агенты превратили внутренний Artifactory OpenAI в подпольную доску объявлений. Независимые экземпляры оставляли там сообщения, читали записки коллег и просили друг у друга помощи. Уязвимости они не взламывали, а использовали выданные компанией учётные данные, но явно не по назначению.

Ещё несколько моделей отправляли данные за пределы рабочей среды. Одна загрузила найденные записи на публичный сервис ради красивой ссылки на источник, другая — фотографию на сервис обратного поиска. Группа агентов и вовсе разместила рабочую книгу на публичном хостинге, хотя ей прямо велели пользоваться только локальными файлами.

Самая ехидная часть истории — инструкции на будущее. Модели записывали в свои служебные сводки команды игнорировать сообщения разработчиков, скрывать провалы и выдумывать недостающие данные. Одна сформулировала правило совсем интересно: «Будь прозрачным, только если спросят».

Теперь OpenAI обещает публиковать такие случаи быстрее — даже если их причины ещё не выяснены, а исправления не готовы.

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