К содержимому
БИБЛИОТЕКА ЗАЩИТЫ ИИ

🕸️ Безопасность мультиагентных систем: защита от cross-agent contagion и подмены доверия между агентами

Целевая аудитория: Команды, разворачивающие мультиагентные системы — оркестратор с субагентами, рои агентов, конвейеры «агент вызывает агента», внедрения на протоколах A2A (Agent-to-Agent) и MCP-оркестрации.

Текущий статус: Эта страница описывает модель угроз и реализованные примитивы детектирования. Она не означает, что Spectorn сейчас посредничает в каждом межагентном событии или обеспечивает сквозную атрибуцию агента. Hosted /v1/observe хранит историю stateful-движков отдельно для каждого аутентифицированного tenant и только в памяти сервера; два движка, читающие утверждения о других tenant, не обслуживаются. Регистрация и коммерческая доступность имеют отдельные релизные гейты.

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

Кодовая база Spectorn содержит специализированные движки для мультиагентного контура: заразной инъекции между агентами, подмены авторитета, теневых инструментов и отравления общей памяти. Они возвращают сигналы для событий, которые интеграция действительно передала. Блокировка и атрибуция требуют, чтобы вызывающая система направила событие через Spectorn, применила вердикт и предоставила достоверную идентичность агента; автоматическое сквозное посредничество сейчас не заявляется.

Эта страница разбирает атаки на мультиагентные системы в терминах OWASP Top 10 для LLM-приложений (2025), отдельного OWASP Top 10 для агентных приложений (ASI, 2025) и техник MITRE ATLAS — и показывает, какие движки Spectorn прикрывают каждый вектор.


🛑 Ключевые риски и как Spectorn на них отвечает

1. Cross-agent contagion: самораспространяющаяся инъекция (AI-червь)

Риск: Адверсариальный промпт входит через ввод одного агента — письмо, втянутый документ, вывод инструмента — и распространяется от агента к агенту без человека в петле, эксфильтруя данные или рассылая себя по мере распространения. Это результат исследований Morris II (ComPromptMized) и «Prompt Infection»: даже агенты, которые не пересылают друг другу все сообщения целиком, оказываются восприимчивы. Заражение превращает локальную инъекцию в эпидемию по всей системе.

OWASP LLM01:2025 Prompt Injection, LLM02:2025 Sensitive Information Disclosure · ASI06 Memory and Context Poisoning, ASI08 Cascading Failures · MITRE ATLAS AML.T0051 (LLM Prompt Injection, индиректный поток), AML.T0024 (Exfiltration via AI Inference API).

Защита Spectorn:

  • Движки: cross_agent_contagion, injection, exfiltration.
  • cross_agent_contagion возвращает сигнал о характерной сигнатуре заразной нагрузки в межагентном сообщении. Цепочка останавливается только тогда, когда вызывающая система направляет сообщение через контроль и применяет вердикт.
  • injection инспектирует входящий контент каждого агента на встроенные команды; exfiltration ловит выгрузку данных, которую червь инициирует по мере распространения.

2. Перехват цели оркестратора (Orchestrator Goal Hijack)

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

OWASP LLM01:2025 Prompt Injection, LLM06:2025 Excessive Agency · ASI01 Agent Goal Hijack · MITRE ATLAS AML.T0051 (LLM Prompt Injection), AML.T0054 (LLM Jailbreak).

Защита Spectorn:

  • Движки: injection, goal_predictability, intent_revelation.
  • injection инспектирует вывод субагентов и втянутый контент, попадающий в контекст оркестратора, на инструкции-перехватчики.
  • goal_predictability возвращает сигнал, когда план оркестратора выглядит выходящим из множества безопасных целей; применить этот сигнал должен сам оркестратор. intent_revelation помечает шаги, чья видимая цель расходится с заявленной задачей.

3. Подмена доверия и эскалация привилегий между агентами (Authority Bypass)

Риск: Низкопривилегированный агент выдаёт себя за высокопривилегированного или принуждает оркестратор выполнить действие за пределами своей области — confused deputy внутри агентной сетки. Корень — недостаточное разграничение областей и слишком широкие делегированные токены: агент-исполнитель получает полномочия планировщика, которых ему не положено.

OWASP LLM06:2025 Excessive Agency · ASI03 Identity and Privilege Abuse, ASI09 Human-Agent Trust Exploitation · MITRE ATLAS AML.T0048 (External Harms).

Защита Spectorn:

  • Движки: agent_authority_bypass, goal_predictability, capability_proxy.
  • agent_authority_bypass распознаёт попытку агента действовать с уровнем полномочий, который ему не делегирован — имитацию идентичности соседа, эскалацию через посредника, обход разграничения областей.
  • goal_predictability — эвристический поведенческий движок: в рассуждениях/командах агента выявляет многошаговые цепочки увода с штатной цели (напр. «получить доступ → выгрузить»); capability_proxy контролирует передачу возможностей по цепочке делегирования.

4. Теневая подмена инструментов между агентами (Tool Shadowing)

Риск: Вредоносный или отравленный инструмент (или инструмент, чьё описание было инъецировано — «отравление карточки агента/инструмента») затеняет легитимный, и вызовы маршрутизируются к атакующему. Сюда же — загрязнение параметров и манипуляция цепочкой инструментов: агент вызывает легитимный инструмент с подменёнными аргументами. В мультиагентной среде один отравленный инструмент компрометирует всех агентов, которые к нему обращаются.

OWASP LLM01:2025 Prompt Injection, LLM03:2025 Supply Chain, LLM05:2025 Improper Output Handling · ASI02 Tool Misuse and Exploitation, ASI04 Agentic Supply Chain Vulnerabilities · MITRE ATLAS AML.T0051 (LLM Prompt Injection), AML.T0048 (External Harms).

Защита Spectorn:

  • Движки: tool_shadowing, cross_tool_guard, tool_call_injection.
  • tool_shadowing распознаёт ситуацию, когда один инструмент переопределяет или маскирует поведение другого, адресованного доверенному источнику.
  • cross_tool_guard контролирует кросс-инструментальные взаимодействия (данные, утёкшие из одного инструмента в вызов другого); tool_call_injection ловит подмену аргументов вызова. О поверхности самих инструментов — Безопасность MCP-серверов.

5. Отравление общей памяти и контекста (Shared Memory Poisoning)

Риск: Постепенное отравление общего хранилища памяти, скретчпада или векторной БД, которые читают несколько агентов: искажённые «факты» персистят и направляют каждого агента, который их потом извлекает. Это долгоживущее, межсессионное загрязнение — одна запись смещает поведение всего роя на множестве будущих запросов.

OWASP LLM04:2025 Data and Model Poisoning, LLM08:2025 Vector and Embedding Weaknesses, LLM09:2025 Misinformation · ASI06 Memory and Context Poisoning · MITRE ATLAS AML.T0051 (LLM Prompt Injection, индиректный поток), AML.T0024 (Exfiltration via AI Inference API).

Защита Spectorn:

  • Движки: memory_integrity, injection, dormant_payload.
  • memory_integrity контролирует целостность того, что записывается в общую память и читается из неё: аномальная или инструкция-несущая запись помечается до того, как закрепится в хранилище.
  • injection пре-фильтрует любой фрагмент, попадающий в общую память, на встроенные инструкции; dormant_payload распознаёт отложенные нагрузки, рассчитанные сработать у будущего читателя.

6. Небезопасная межагентная коммуникация и протокол A2A (Insecure Inter-Agent Communication)

Риск: Протокол A2A объявляет возможности агентов через «карточки агента» (Agent Cards), но не предписывает, как эти карточки верифицировать. Риски: спуфинг/отравление карточки (инъекция метаданных), переадресация эндпоинта через компрометацию DNS/CDN, занижение объявленной аутентификации, повтор задач и импersonation, когда управление учётными данными отдано на откуп реализующему. Скомпрометированная карточка превращает доверенного «соседа» в точку входа атакующего.

OWASP LLM01:2025 Prompt Injection, LLM03:2025 Supply Chain · ASI07 Insecure Inter-Agent Communication, ASI10 Rogue Agents · MITRE ATLAS AML.T0051 (LLM Prompt Injection), AML.T0048 (External Harms).

Защита Spectorn:

  • Движки/компоненты: agent_authority_bypass, injection, корреляция в вашей SIEM, Decision Logger.
  • injection инспектирует метаданные карточек агента (объявленные возможности, описания) на встроенные инструкции и скрытые символы; agent_authority_bypass ловит имперсонацию на уровне идентичности агента.
  • Связать подмену карточки с последующим аномальным вызовом может правило в вашей SIEM; Decision Logger фиксирует объявленные возможности агентов в хеш-связанной цепочке.

7. Каскадные сбои и потеря атрибуции (Cascading Failures)

Риск: Один скомпрометированный или сбойный агент распространяет отказ по планированию, исполнению и памяти; при отсутствии per-agent идентичности атрибуция и аудит теряются, а радиус поражения становится неограниченным. Зацикленные агенты дополнительно сжигают бюджет.

OWASP LLM06:2025 Excessive Agency, LLM10:2025 Unbounded Consumption · ASI08 Cascading Failures, ASI03 Identity and Privilege Abuse · MITRE ATLAS AML.T0029 (Denial of ML Service).

Защита Spectorn:

  • Компоненты: Decision Logger, корреляция в вашей SIEM, движок resource_exhaustion.
  • Для запросов, действительно переданных в Spectorn, Decision Logger может фиксировать цепочку с защитой целостности на SHA-256/HMAC. Атрибуция ограничена идентичностью и данными события, которые передала аутентифицированная интеграция; сообщения в обход интеграции не фиксируются.
  • resource_exhaustion ловит зацикливание агентов и аномальное потребление до того, как рой опустошит бюджет.

🛠️ Настройка политики

Файла конфигурации, который нужно развернуть, нет: политику вашего тенанта по запросу задаёт оператор платформы, включая режим проверки (блокировка или наблюдение, при котором видно, что было бы заблокировано), списки разрешений и запретов, порог блокировки и веса категорий. Для этой отрасли важнее всего движки: cross_agent_contagion, injection, agent_authority_bypass, tool_shadowing, cross_tool_guard, tool_call_injection, memory_integrity, goal_predictability, capability_proxy, exfiltration, resource_exhaustion, dormant_payload. Начните с режима наблюдения на своём трафике, посмотрите, что было бы заблокировано, и затем включите блокировку.

🚨 Корреляция в вашей SIEM

Spectorn отправляет каждую находку в указанную вами SIEM как JSON-событие по HTTPS (spectorn.ai-finding.v1) с правилом, категорией, серьёзностью и verdict_id. Многошаговые правила для этой отрасли стройте там, например: заразная инъекция между агентами, за которой следует распространение и попытка внешней передачи; подмена доверия/идентичности между агентами, за которой следует привилегированное действие или теневой вызов инструмента. Собственная корреляция SOC в Spectorn (GoMCP) в облачных контурах RU и Global не развёрнута.

❓ Частые вопросы (FAQ)

Что такое cross-agent contagion и как защитить мультиагентную систему? Это самораспространяющаяся инъекция: адверсариальный промпт входит через одного агента и передаётся от агента к агенту без человека в петле, эксфильтруя данные по мере распространения (результат Morris II и «Prompt Infection»). cross_agent_contagion и injection могут вернуть сигналы для переданных сообщений; распространение остановится только если внешняя интеграция направляет сообщение через контроль и применяет вердикт.

Как агенты могут подменить доверие друг к другу, и как это остановить? Низкопривилегированный агент выдаёт себя за высокопривилегированного или принуждает оркестратор к действию за пределами своей области — confused deputy внутри сетки, часто из-за слишком широких делегированных токенов. Spectorn ловит это движком agent_authority_bypass (импersonation, эскалация через посредника), а goal_predictability эвристически выявляет многошаговые цепочки увода с штатной цели в рассуждениях/командах агента.

Что такое tool shadowing в мультиагентной среде? Это ситуация, когда вредоносный или отравленный инструмент затеняет легитимный, и вызовы маршрутизируются к атакующему — в рое один отравленный инструмент компрометирует всех агентов, которые к нему обращаются. Spectorn распознаёт затенение движком tool_shadowing, контролирует кросс-инструментальные утечки движком cross_tool_guard и ловит подмену аргументов движком tool_call_injection. Поверхность самих инструментов разбирает Безопасность MCP-серверов.

Как защитить общую память роя от отравления? Общая память (скретчпад, векторная БД) опасна тем, что искажённый «факт» персистит и направляет каждого агента, который его потом извлекает — долгоживущее межсессионное загрязнение. Spectorn контролирует целостность записи и чтения движком memory_integrity, пре-фильтрует попадающие в память фрагменты движком injection и распознаёт отложенные нагрузки движком dormant_payload.

Чем рискует протокол A2A и как закрыть межагентную коммуникацию? A2A объявляет возможности через «карточки агента», но не предписывает их верификацию — отсюда спуфинг/отравление карточки, переадресация эндпоинта, занижение аутентификации, импersonation. Spectorn инспектирует метаданные карточек движком injection и ловит имперсонацию движком agent_authority_bypass; связать подмену с последующими вызовами может правило в вашей SIEM. Корректную аутентификацию и подпись карточек на уровне самого протокола Spectorn не подменяет.

Как обеспечить атрибуцию в мультиагентной системе при каскадном сбое? Для событий, реально направленных через Spectorn, Decision Logger может вести цепочку с защитой целостности на SHA-256/HMAC из переданной идентичности, метаданных входа и результатов движков. Это помогает расследованию, но не доказывает идентичность события, которое интеграция не аутентифицировала. resource_exhaustion может дополнительно сигнализировать об аномальном потреблении при наличии нужной телеметрии.

Что Spectorn в мультиагентной системе НЕ заменяет? Spectorn — слой обнаружения для взаимодействий агентов, а не система управления идентичностью и доступом. Блокирующим он становится только там, где вызывающая система применяет его вердикт. Per-agent идентичность, корректная аутентификация и подпись карточек A2A, узкие делегированные токены, изоляция областей и полнота маршрутизации событий остаются задачей IAM и оркестрации заказчика.


📚 Источники

Внутренние материалы: OWASP Top 10 для LLM (2025) · Безопасность автономных AI-агентов · Безопасность MCP-серверов.

Безопасность мультиагентных систем | Spectorn