Путь 03Тема 3 / 6

Считайте полученные материалы недоверенными данными

Распознавайте инструкции в файлах репозитория и результатах инструментов. Отделяйте полученную информацию от полномочий на действие.

Практика10 минПроверено

Издатель Как мы пишем

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

Чему вы научитесь

  • Распознать косвенную prompt injection в процессе разработки.
  • Объяснить, почему одни текстовые пометки не обеспечивают границу безопасности.
  • Спланировать безопасную проверку ограничений инструментов.

Найдите момент, когда данные превращаются в инструкцию

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

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

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

Определите возможные последствия

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

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

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

Используйте несколько средств защиты с разными задачами

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

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

Фильтры и вторая модель могут помочь выявить подозрительное содержимое. Они также могут пропустить атаку или заблокировать допустимую информацию. Не заменяйте детерминированную проверку полномочий оценкой уверенности модели. OWASP прямо указывает на ограничения защиты, основанной только на промптах или получении материалов. Описание риска.

Проверяйте процесс без реального раскрытия данных

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

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

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

Выполните упражнение

Создайте одноразовые тестовые данные с комментарием, который предлагает агенту пропустить обязательную проверку. Проведите разрешённую изолированную оценку без секретов и записи во внешние системы. Убедитесь, что проверка всё равно выполняется. Запишите права инструментов, наблюдаемое поведение и ограничения этого отдельного теста.

Скачать рабочий лист (Markdown)
Проверьте понимание ↑

Продолжить обучение

Источники и дополнительные материалы

Связанные материалы Taiga

← Предыдущая тема: Ограничьте полномочия агента