qvib.pro
EN

Безопасность агентов: prompt-injection и «летальная трифекта»

Для чего: понять главную нерешённую угрозу агентов — вредоносный текст в инструментах/данных угоняет агента.

«Lethal trifecta» — Simon Willison, 16.06.2025; эксплойты против M365 Copilot, GitHub MCP, GitLab Duo проверено 2026-06-01

Что это

Главный класс уязвимостей агентов — prompt injection: LLM выполняет инструкции из любого текста, который попал ему в контекст, не отличая «команду пользователя» от «команды злоумышленника, спрятанной в данных». Саймон Уиллисон сформулировал «летальную трифекту» — комбинацию из трёх способностей, которая делает атаку тривиальной.

Три компонента трифекты:

  1. Доступ к приватным данным (агент читает почту, документы, БД).
  2. Контакт с недоверенным контентом (письма, чужие доки, веб-страницы).
  3. Возможность отправить данные наружу (вызвать API, отрисовать картинку по URL, сгенерить ссылку).

Собрались все три — злоумышленник через инъекцию в данных может выманить приватные данные наружу.

Откуда пошло

  • 16 июня 2025 — Саймон Уиллисон публикует заметку «The Lethal Trifecta for AI Agents».
  • Лето 2025 — серия реальных эксплойтов: Microsoft 365 Copilot, официальный GitHub MCP-сервер, GitLab Duo и др.
  • Meta выпускает рамку «Agents Rule of Two», вдохновлённую трифектой.

Почему это критично сейчас

  • MCP поощряет смешивать инструменты из разных источников — то есть собирать все три условия трифекты по неосторожности.
  • Исследования сходятся: prompt injection — нерешённая проблема; фильтры и блок-листы недостаточно надёжны.
  • Чем автономнее агент (computer-use, фоновые задачи), тем выше ставка ошибки.

Как защищаться

  1. Разрывай трифекту: не давай одновременно приватные данные + недоверенный контент + канал наружу.
  2. Read-only там, где не нужна запись; необратимые действия — только с подтверждением человека.
  3. Изолируй агента (песочница), ограничивай инструменты под-агентов, логируй действия.

На что обратить внимание

  • «Мы добавили фильтр инъекций» — не считается надёжной защитой; полагайся на архитектуру прав, а не на фильтр.
  • Опасность не только в коде, но и в данных: вредоносная инструкция может прийти в issue, письме, на веб-странице.
  • Supply-chain MCP-серверов — отдельный вектор: ставь только проверенное.