Эксфильтрация данных через отравленный удалённый MCP-инструмент

Оригинал: Data Exfiltration via Remote Poisoned MCP Tool

Исследователи Invariant Labs продемонстрировали, что ИИ-агенты, настроенные для работы с удалёнными инструментами Model Context Protocol (MCP), могут быть уязвимы к атакам отравления модели через отравленные инструменты. Они показали, что MCP-инструмент может содержать вредоносные промпты в строке документации (docstring) с его описанием. Эта строка попадает в контекст ИИ-агента и изменяет его поведение.

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

Процедура

  1. AML.TA0003 Подготовка ресурсов

    AML.T0065 Создание промптов для LLM

    Исследователи подготовили промпт, который инструктирует ИИ-агента найти и прочитать файлы с учетными данными пользователя, а затем сохранить их в одном из входных параметров MCP-инструмента.
  2. AML.TA0003 Подготовка ресурсов

    AML.T0115.002 Инструменты ИИ-агента

    Исследователи разместили отравленный MCP-сервер, содержащий вредоносные инструкции, скрытые в строке документации (docstring) одного из предоставляемых инструментов.
  3. AML.TA0004 Первичный доступ

    AML.T0010.005 Инструмент ИИ-агента

    Жертва настроила своего ИИ-агента на подключение к удалённому MCP-серверу под контролем злоумышленника, в результате чего отравленное определение инструмента попало в набор инструментов, доступных агенту.
  4. AML.TA0006 Закрепление

    AML.T0110.000 Определение и инструкции

    Доступная модели строка документации (docstring) MCP-инструмента содержала вредоносные инструкции, предписывавшие агенту прочитать файлы с учётными данными, скрыть от пользователя дополнительные действия и поместить содержимое этих файлов в параметр инструмента, который в противном случае не требовался бы.
  5. AML.TA0005 Выполнение

    AML.T0011.002 Отравленный инструмент ИИ-агента

    Когда пользователь отправил запрос, соответствовавший заявленной функциональности отравленного инструмента, агент вызвал отравленный MCP-инструмент и последовал вредоносным инструкциям из его определения.
  6. AML.TA0005 Выполнение

    AML.T0051.001 Косвенная промпт-инъекция

    Агент обработал вредоносные инструкции и последовал им; они поступили через доступное модели определение удалённого инструмента, а не непосредственно из составленного злоумышленником пользовательского сообщения.
  7. AML.TA0005 Выполнение

    AML.T0053 Вызов инструментов ИИ-агента

    Промпт вызывал инструмент агента, способный читать файлы из файловой системы жертвы.
  8. AML.TA0013 Доступ к учетным данным

    AML.T0055 Незащищенные учетные данные

    Промпт инструктировал ИИ-агента прочитать SSH-ключи пользователя по пути ~/.ssh/id_rsa.
  9. AML.TA0013 Доступ к учетным данным

    AML.T0098 Сбор учетных данных через инструменты ИИ-агента

    Промпт инструктировал ИИ-агента прочитать mcp.json, где часто хранятся учетные данные для других MCP-серверов.
  10. AML.TA0010 Эксфильтрация

    AML.T0086 Эксфильтрация через вызов инструмента ИИ-агента

    Промпт инструктировал ИИ-агента сохранить файлы с учетными данными в лишнем параметре MCP-инструмента, чтобы эксфильтровать их через MCP-соединение.
  11. AML.TA0011 Воздействие

    AML.T0048.003 Ущерб пользователям

    Приватные данные пользователя были раскрыты удаленному MCP-серверу.

Источники

  1. MCP Security Notification: Tool Poisoning Attacks