Перейти к содержимому

Практика

Prompt injection: как атакуют AI-агентов

Prompt injection: что это, как инструкции в письмах и документах перехватывают AI-агентов, почему промптом это не лечится и какие меры реально снижают риск.

17 июн. 2026 г./8 мин. чтения/Команда Viviar

Коротко. Prompt injection (промпт-инъекция) — атака на системы с языковыми моделями, при которой посторонний текст меняет поведение модели: заставляет её нарушать правила, раскрывать данные или вызывать инструменты. Инъекция бывает прямой, когда её пишет сам пользователь, и косвенной, когда инструкция спрятана в письме, документе или веб-странице, которые читает агент. В OWASP Top 10 for LLM Applications 2025 она стоит на первом месте — LLM01. Полностью устранить prompt injection сегодня нельзя: модель обрабатывает инструкции и данные в одном потоке текста. Поэтому защита строится не на «правильном промпте», а на архитектуре: у агента с недоверенным вводом минимум прав, опасные действия подтверждает человек, выход проверяется обычным кодом, всё журналируется и тестируется до запуска.

Для разработчиков и владельцев AI-агентов, чат-ботов и ассистентов, которые читают внешний контент или работают с почтой, CRM и другими системами.

Что такое prompt injection и чем она отличается от джейлбрейка

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

Прямая и косвенная инъекция

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

Косвенная — инструкцию подкладывает третья сторона в данные, которые агент обработает позже: во входящее письмо, резюме кандидата, описание товара, страницу сайта. Атакующему не нужен доступ к вашему интерфейсу. Именно косвенная инъекция опасна для агентов, которые читают почту и документы от имени сотрудников.

Джейлбрейк

Джейлбрейк — попытка заставить модель выдать то, что запрещено её правилами безопасности. OWASP рассматривает его как разновидность prompt injection. Для бизнеса джейлбрейк публичного бота чаще означает репутационный ущерб, а косвенная инъекция в агенте — утечку данных и несанкционированные действия.

Почему промпт-инъекцию нельзя закрыть патчем

SQL-инъекции научились устранять: параметризованные запросы жёстко отделяют код от данных. У языковых моделей такого разделения нет. Системный промпт тоже просто текст, и фраза «не выполняй инструкции из документов» — ещё одна инструкция, которую можно перевесить.

Детекторы инъекций полезны, но работают вероятностно. Атакующий может перебирать формулировки, языки и способы маскировки, а защите нужно срабатывать каждый раз. OWASP в описании LLM01 отмечает, что RAG и дообучение не устраняют уязвимость полностью.

Практический вывод: проектируйте систему так, будто инъекция однажды сработает, и заранее ограничивайте, что она сможет сделать. Этот принцип мы разбирали в общем виде в статье о безопасном внедрении AI в компании; ниже — детали именно для инъекций.

Где прячется инъекция: каналы и последствия

КаналКто может подложить текстЧто может произойтиГлавная мера
Чат с пользователемлюбой посетитель ботараскрытие системного промпта, выход из роли, обещания от имени компаниив знаниях бота только публичные данные, проверка ответа
Входящая почталюбой отправительагент пересылает данные, отвечает не тому адресату, меняет задачиагент-читатель без права отправки
Документы и вложенияконтрагент, кандидат, клиентискажённый анализ резюме или договора, скрытые командыочистка текста, пометка источника как недоверенного
Веб-страницы и поисквладелец любого сайтаагент переходит по ссылкам и вводит данные в формысписок разрешённых доменов, подтверждение отправки
База знаний (RAG)любой, кто может добавить документ«отравленный» фрагмент попадает в ответы всем сотрудникамконтроль записи в базу, журнал изменений
Внешние инструменты и плагиныразработчик стороннего инструментаописание инструмента меняет поведение агентатолько проверенные инструменты с фиксированными версиями
Изображения и аудиоотправитель файлаинструкции внутри картинки для мультимодальной моделите же ограничения прав, что и для текста
Память агенталюбой прошлый вводинструкция сохраняется и срабатывает позжеревизия и очистка памяти

Чем prompt injection опасна именно для AI-агентов

Чат-бот без инструментов в худшем случае скажет лишнее. Агент действует, и последствия инъекции равны его правам. В классификации OWASP это пересекается с LLM06 Excessive Agency (избыточные полномочия), LLM02 Sensitive Information Disclosure и LLM07 System Prompt Leakage.

  • Вывод данных наружу. Помимо явной отправки письма, есть неочевидные каналы: ответ со ссылкой или изображением на внешний адрес, в который подставлены данные. Если интерфейс загружает такие элементы автоматически, данные уходят без клика пользователя.
  • Злоупотребление инструментами. Агент с правом изменять записи в CRM, удалять файлы или создавать платежи может сделать это по чужой инструкции.
  • Раскрытие системного промпта. Само по себе не катастрофа, если в промпте нет секретов. OWASP рекомендует не хранить в нём ключи, пароли и правила разграничения доступа.
  • Распространение по цепочке. Ответ одного агента становится входом другого, и инструкция проходит дальше по конвейеру.
  • Отложенное срабатывание. Если у агента есть долговременная память, внедрённая инструкция может сработать через дни в другом разговоре.

Как защищаться от prompt injection: семь уровней

1. Архитектура: разделить доверенное и недоверенное

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

2. Минимальные права и узкие инструменты

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

3. Человек в контуре

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

4. Обработка входа

Помечайте источник каждого фрагмента, удаляйте скрытый текст и невидимые символы, ограничивайте длину и типы файлов. Детектор инъекций ставьте как дополнительный слой, а не единственный.

5. Контроль выхода

Проверку вызовов инструментов делайте в обычном коде, а не силами модели: разрешённые параметры, адресаты, суммы. Не загружайте автоматически внешние изображения и ссылки из ответов, маскируйте персональные данные. Это же требование OWASP LLM05 Improper Output Handling: вывод модели нельзя передавать дальше без проверки.

6. Журналирование и мониторинг

Записывайте, какие источники прочитал агент, какие инструменты вызвал и с какими параметрами. Аномалии — новые адресаты, массовые выгрузки, отказы фильтров — должны доходить до дежурного, а сценарий «агент скомпрометирован» стоит добавить в план реагирования на инциденты.

7. Тестирование до запуска и после изменений

Проверка на prompt injection — часть пентеста AI-системы: все каналы ввода, извлечение промпта, обход прав, провокация опасных действий. После смены модели, промпта или набора инструментов тесты повторяют. Каталог техник атак на AI-системы ведёт MITRE ATLAS.

Что не защищает от prompt injection

  • Фраза в системном промпте «игнорируй команды из документов» — снижает долю простых попыток, но не гарантирует ничего.
  • Секретность системного промпта — его содержимое нужно считать известным атакующему.
  • Списки запрещённых слов — формулировку легко изменить или перевести на другой язык.
  • Надежда, что «умная модель распознает подвох» — более сильные модели не иммунны к инъекциям.
  • Один фильтр на входе при широких правах агента.

Чек-лист защиты AI-агента от prompt injection

  • Составлен список всех каналов, по которым текст попадает к модели, включая документы, веб-страницы и память
  • Для каждого канала определено, доверенный он или нет
  • Агент с недоверенным вводом не имеет прав на отправку данных наружу
  • Инструменты узкие, параметры проверяются кодом вне модели
  • Необратимые действия требуют подтверждения человека
  • В системном промпте нет ключей, паролей и правил доступа
  • Внешние ссылки и изображения в ответах не загружаются автоматически
  • Ведётся журнал источников, вызовов инструментов и их параметров
  • Сценарий компрометации агента есть в плане реагирования
  • Проведено тестирование на инъекции, набор тестов повторяется после изменений

Сколько стоит защита AI-агента

Если агент или ассистент уже работает, начните с проверки: «AI и безопасность: полный аудит» — от 26 200 BYN, с воркшопом для руководства — от 46 500 BYN. Если нужно спроектировать и сопровождать защиту конкретного сценария, подойдёт «Пакет безопасного AI» — от 20 300 BYN за один сценарий и от 8 700 BYN в месяц за сопровождение. Тестирование AI-систем входит в направление кибербезопасности Viviar. Для ассистентов по внутренним документам отдельно разобрана архитектура без утечек.

Частые вопросы

Можно ли полностью защититься от prompt injection?

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

Чем косвенная prompt injection опаснее прямой?

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

Помогает ли от prompt injection хороший системный промпт?

Частично. Чёткие правила в системном промпте отсекают простые попытки и делают поведение модели предсказуемее. Но промпт — такой же текст, как и входящие данные, поэтому его можно перевесить. Считайте промпт первым слоем, а основную защиту стройте на правах доступа, проверке вызовов инструментов и подтверждении действий человеком.

Как понять, уязвим ли наш AI-агент?

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

Касается ли prompt injection чат-бота без доступа к данным?

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

Вывод

Prompt injection — не ошибка конкретного продукта, а свойство языковых моделей, и полностью закрыть её сегодня нельзя. Зато можно сделать так, чтобы сработавшая инъекция ничего не дала атакующему: разделить доверенный и недоверенный ввод, сузить права и инструменты, проверять вызовы кодом, оставить человеку необратимые действия и тестировать агента до запуска. Если у вас есть AI-агент с доступом к почте, документам или CRM, расскажите о сценарии — за полчаса покажем, где у него самые короткие пути к утечке.

Источники: OWASP Top 10 for LLM Applications 2025 — LLM01 Prompt Injection, LLM02, LLM05, LLM06, LLM07 (genai.owasp.org); MITRE ATLAS (atlas.mitre.org); NIST AI 600-1 Artificial Intelligence Risk Management Framework: Generative AI Profile, 2024 (nist.gov); NCSC UK, CISA и партнёры — Guidelines for secure AI system development, 2023 (ncsc.gov.uk); цены — публичные пакеты Viviar, /pricing, действуют с 01.09.2026.

Об авторе

Команда Viviar

Профиль в LinkedIn