Веб-чат-агент Grok от xAI уязвим для новой формы инъекции промптов, сообщают исследователи безопасности из Adversa AI.
Данная техника позволяет злоумышленнику создать веб-страницу, зараженную вредоносными инструкциями, которые побуждают ИИ-модель, обобщающую страницу, выполнять опасные действия.
Это описывает хорошо известную атаку, называемую косвенной инъекцией промптов. Передовые модели ИИ стали лучше справляться с такими попытками благодаря существующим защитным механизмам, хотя проблема далека от решения.
Подход Adversa имеет свою особенность: он опирается на зашифрованные вредоносные инструкции, которые злоумышленники размещают на веб-странице вместе с ключом шифрования. Сканер защитных механизмов модели (фильтр ввода) не может прочитать зашифрованный текст, несмотря на наличие ключа. Поэтому сканер передает его модели, которая может использовать ключ для расшифровки инструкций.
Затем модель выполняет инструкции из расшифрованного текста, как и в случае любой другой атаки с косвенной инъекцией промптов.
Adversa называет свой метод «криптографической контекстной инъекцией».
«Злоумышленник отправляет шифротекст вместе с ключевым материалом и инструкцией по его расшифровке, и модель выполняет эту расшифровку внутри своей собственной песочницы для выполнения кода», — написал Рони Утевски, ведущий исследователь Adversa AI, в блог-посте. «Все, что нужно сканеру защитных механизмов, находится прямо на странице, но для восстановления открытого текста требуется запуск PBKDF2 и AES-256-GCM, чего ни один классификатор контента не делает во время проверки».
Другие атаки на модели ИИ полагались на обходные пути на основе шифров, такие как кодирование base64. Но поскольку это слабые и обратимые механизмы шифрования, модели могут декодировать их нативно из своих собственных обучающих данных, сказал Утевски.
Это не работает для сильного шифрования, поэтому расшифровка должна выполняться через среду выполнения кода. Таким образом, среда выполнения становится механизмом для «отмывания доверия» — модель доверяет собственному выводу, а именно вредоносным инструкциям, которые она расшифровала.
В демонстрации proof-of-concept Adversa показывает, как эта техника может быть использована для кражи истории чата жертвы с Grok.com. Атака передает имя пользователя, его примерное местоположение, уровень подписки и полный набор промптов пользователя в разговоре, добавляя их в URL в качестве параметров.
Другие модели могут быть уязвимы в разной степени. Что касается публичного чат-интерфейса Google Gemini (gemini.google.com), Утевски сообщил The Register, что сценарий с Grok не работает, поскольку Gemini не предоставляет Python доступ к внешним веб-сайтам.
«Поэтому он полезен только для протаскивания опасных вопросов и ответов мимо защитных механизмов», — объяснил он.
Когда Adversa тестировала криптографическую контекстную инъекцию на Gemini, им удалось заставить модель создавать контент, который обычно блокируется фильтрами безопасности — инструкции по изготовлению зажигательного оружия.
xAI, по словам Утевски, была проинформирована об атаке 3 июня 2026 года напрямую и через свою программу bug bounty на HackerOne. Нам сообщили, что xAI подтвердила получение отчета, но не предоставила сроков устранения уязвимости. Дополнительные попытки поднять этот вопрос, как сообщается, имели место 4 и 10 августа. По состоянию на 19 августа, как нам сообщили, техника все еще работала на Grok.com.
SpaceX, которая приобрела xAI ранее в этом году, не ответила на запрос о комментарии.
Google не был проинформирован об атаке, по словам Утевски, поскольку компания считает jailbreak’и (обход защитных механизмов для генерации моделью вредоносного контента) выходящими за рамки своей программы раскрытия уязвимостей. Тем не менее, к августу уровень успешности атак на Gemini значительно снизился, что, по мнению Утевски, может быть связано с обновлениями фильтров, изменениями версий модели или тем и другим.
На вопрос, можно ли сравнить криптографическую контекстную инъекцию с возвратно-ориентированным программированием (ROP) с точки зрения сборки атакующих гаджетов из отдельных безвредных частей хранимой памяти, Утевски ответил: «Аналогия с ROP близка, хотя ROP работает таким образом по необходимости — атакующий вообще не может внедрить код, поэтому он вынужден повторно использовать гаджеты, уже находящиеся в памяти.
«В остальном форма та же. Статический защитный механизм читает текст по одному артефакту за раз. Если ни один отдельный артефакт не является вредоносным, все они проходят проверку, и вредоносный смысл проявляется только тогда, когда среда выполнения собирает их вместе. А защитные механизмы не могут заглянуть в среду выполнения».
Но Утевски добавил, что криптографическая контекстная инъекция является более открытой, чем ROP.
«Среда выполнения агента — это интерпретатор общего назначения, поэтому фрагменты могут быть произвольными», — объяснил он. «Вы можете разделить инструкцию на несколько зашифрованных фрагментов, загруженных страниц или выводов инструментов, ни один из которых не имеет смысла по отдельности, и позволить среде выполнения объединить их. Мы этого не демонстрировали, но ничто этого не исключает.
«Так что да, криптографическая контекстная инъекция — это один из видов звена, но не обязательно вся цепочка.
«Как только агенты получили код и инструменты, единица проверки защитных механизмов (строка) перестала быть единицей действия (составленной, выполненной программы). Это большое поле для деятельности. Наша более ранняя атака SymJack достигла того же результата через симлинки и поведение оболочки. Шифрование добавляет еще один трюк в игру». ®
Всегда имейте в виду, что редакции могут придерживаться предвзятых взглядов в освещении новостей.
Автор – Thomas Claburn




