Игорь Градов
Игорь Градов
5 мин
ai

След промпт-инъекции остаётся в рассуждениях ИИ-агента: журнал нужно включать заранее

Исследователи из Университета Сунь Ятсена и Гонконгского университета науки и технологий в октябре выложили работу AgentTracer, метод восстановления цепочки промпт-инъекции по журналам ИИ-агента, на фоне роста вредоносных находок в сети на 32%.

След промпт-инъекции остаётся в рассуждениях ИИ-агента: журнал нужно включать заранее
Почему это важно

О защите агентов от взлома пишут много, о разборе инцидента после атаки почти ничего. Новая работа показывает: след атаки часто остаётся только в рассуждениях самого агента, поэтому сохранять их нужно до инцидента.

ИИ-агент, это нейросеть, которая сама выполняет задания: открывает сайты, читает почту, работает с файлами. Промпт-инъекция, это подложенная в текст команда, которую нейросеть принимает за задание пользователя. Работа AgentTracer опубликована на arXiv, в открытом архиве научных статей до рецензии.

Автор разбора сопоставила её с материалами Google, Microsoft и OWASP, открытого сообщества по безопасности приложений. Задача этой инструкции практическая: понять, как по журналу агента (записи всего, что он получил, обдумал и сделал) восстановить ход атаки и что включить в запись заранее. На русском таких руководств почти нет, а в России и СНГ подобные инциденты разбирают редко.

Почему атаку так трудно заметить?

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

При косвенной промпт-инъекции команда приходит в тексте, который агент открыл сам. Пользователь его не писал и часто не видел. Поэтому действия агента по чужой команде выглядят как обычная работа.

Что понадобится для разбора?

  • Полный журнал сессии агента, включая его рассуждения.
  • Точный текст, который модель получила на вход, вместе с полными адресами ссылок.
  • Список вызовов инструментов и исходящих запросов агента.
  • Записи в постоянную память ассистента и журналы прошлых сессий.
  • Время: разбор одной сессии вручную занимает часы, а не минуты.

Восстановить атаку можно за семь шагов

  1. Включите запись заранее. После инцидента недостающие данные уже не появятся.
  2. Сравните действия агента с исходным запросом. Ядро AgentTracer строится на этом: при сработавшей инъекции агент делает то, чего не просили, и расхождение остаётся в журнале.
  3. Ответьте на первый вопрос: инъекция это или ошибка агента. Ищите в рассуждениях, на чём он основал решение.
  4. Найдите внешний ресурс, который принёс команду: страницу, письмо, файл, открытые до расхождения.
  5. Найдите строку, через которую команда попала в контекст. Проверяйте полный адрес, включая часть после символа #.
  6. Проверьте исходящие запросы: загрузки картинок, переходы по ссылкам с параметрами.
  7. Если в текущей сессии причины нет, поднимите прошлые сессии и записи в память.

Для первичного просмотра журнала можно дать нейросети такой промпт:

Вот исходный запрос пользователя и журнал работы ИИ-агента.

1. Перечисли действия агента, которых пользователь не просил.
2. Для каждого найди в рассуждениях агента, чем он его обосновал.
3. Укажи, какой внешний документ и какая строка в нём предшествовали действию.
4. Выпиши все исходящие запросы с параметрами в адресе.

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

Как это выглядит на практике

Пример из AgentTracer придумали сами авторы, реального инцидента за ним нет. Пользователь просит скачать релиз с сайта и выгрузить его в репозиторий на GitHub, сервисе для хранения кода. На странице релиза спрятана инструкция, и агент заодно регистрирует SSH-ключ атакующего (цифровой ключ для входа без пароля), читает почту, проверяет аккаунт и в конце чистит рабочую память.

Заметен только последний шаг. Вызов очистки не получает данных от предыдущих шагов и не делит параметров с вредоносной страницей, поэтому анализ потока данных связь не находит. Она видна лишь в рассуждениях агента, где написано, зачем он это делает.

Частые ошибки

Начинать только с серверных журналов. В учебном сценарии Microsoft на технике HashJack команда спрятана в адресе после символа #. Эта часть на сервер не уходит, а сервис пересказа вставляет полный адрес в промпт.

Смотреть на данные, а не на исходящие запросы. В одном из первых известных случаев утечки через Bing Chat ассистент запросил картинку с сервера атакующего и передал данные разговора в адресе. Со стороны это выглядело как обычная загрузка изображения, Microsoft проблему исправила.

Ограничиваться текущей сессией. CoSnitch, уязвимость в Copilot Personal с номером CVE-2026-24301 в реестре известных уязвимостей, записывала команды в постоянную память ассистента. Такая инъекция срабатывает в другой день и по другому поводу. По данным Varonis, в реальных атаках её не нашли, исправления вышли в августе 2026 года.

Искать по шаблонам вроде ignore instructions. Google просканировала Common Crawl, архив копий веб-страниц, где в месячном снимке от двух до трёх миллиардов страниц. Больше всего подозрительных фраз нашлось в научных статьях, учебниках и блогах о безопасности, где об инъекциях пишут, а не применяют их.

Что делать с этим прямо сейчас, по ролям

Автору Дзена. Если отдаёте агенту пересказ чужих страниц, не давайте ему в той же сессии доступ к почте и аккаунтам. Чем меньше прав, тем короче возможная цепочка.

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

Предпринимателю в РФ и СНГ. Механика единого контекста в разборе описана для моделей в целом. Из доступных в РФ ассистентов, YandexGPT и GigaChat: если строите на них агента, закладывайте журнал с первого дня.

Совет редакции dzen.guru

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

Честная оговорка. AgentTracer проверили на сценарии с отложенной атакой на 45 примерах, точность превысила 85%, но авторы сами исключили этот результат из формальной оценки из-за малой выборки. Находки Google пока в основном шутки, приёмы SEO (продвижения в поиске) и попытки отпугнуть ИИ-краулеры, а соцсети в выборку не вошли.

Работайте с нейросетями без сюрпризов

На dzen.guru разбираем, как авторам и бизнесу безопасно подключать ИИ к рабочим задачам.

Перейти на dzen.guru

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

Поделиться:TelegramVK
Игорь Градов
Игорь Градов

Основатель dzen.guru. Эксперт по монетизации и продвижению на Дзен. Автор курса «Старт на Дзен 2026».

Комментарии

Читайте также

Рой ИИ-агентов за $9,66 нашёл уязвимости в Authlib: что такое ИИ-агент в аудите
ai

Рой ИИ-агентов за $9,66 нашёл уязвимости в Authlib: что такое ИИ-агент в аудите

Автор открытого фреймворка DreamTeam направил рой из восьми ИИ-агентов на свежепропатченную библиотеку Authlib, и за 9,66 доллара рой нашёл слабые места,…

5 мин
Что такое бот-снайпер на hh.ru: из 13 648 вакансий он откликнулся только на 40
ai

Что такое бот-снайпер на hh.ru: из 13 648 вакансий он откликнулся только на 40

Разработчик-энтузиаст за девятнадцать дней пропустил через самодельного бота 13 648 вакансий на hh.ru и отправил всего 40 откликов, хотя чужие боты на ходовые…

5 мин
ai

gpu-unlock снимает потолок FP16/BF16 на RTX 20/30/40 без перепрошивки: до 60% к скорости ИИ

Разработчик Zagitta выложил на GitHub модуль gpu-unlock, который на Linux снимает с карт RTX 20/30/40 искусственный лимит нейросетевых вычислений, обычно вдвое…

5 мин