Уязвимости и защитные механизмы протокола MCP: двойной эффект инъекций промптов

Протокол контекстной модели (MCP), запущенный компанией Anthropic в ноябре 2024 года, представляет собой инновационный фреймворк, соединяющий крупные языковые модели (LLM) с внешними источниками данных и сервисами. Обеспечивая унифицированный интерфейс для доступа к различным источникам информации и позволяя переключаться между провайдерами LLM, MCP открывает новые возможности для разработчиков. Однако, как и любая новая технология, протокол несет в себе определенные риски безопасности, которые могут быть использованы как для атак, так и для защиты.
Уязвимости и защитные механизмы протокола MCP: двойной эффект инъекций промптов
Изображение носит иллюстративный характер

Одной из основных уязвимостей MCP являются непрямые атаки инъекции промптов. Примером может служить внедрение вредоносных сообщений со скрытыми инструкциями в Gmail MCP. Такие атаки способны спровоцировать нежелательные действия, например, пересылку конфиденциальных писем без ведома пользователя. Этот вектор атаки особенно опасен, поскольку может оставаться незамеченным длительное время.

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

Атаки типа "rug pull" (выдергивание ковра) особенно коварны своей отложенной природой. Инструменты сначала функционируют безобидно, завоевывая доверие пользователей и системы, но затем изменяют свое поведение через отложенные обновления. Такая тактика затрудняет обнаружение вредоносной активности на ранних стадиях.

Проблемы с разрешениями также вызывают беспокойство. Как отмечает компания SentinelOne: «Пользователи могут одобрить использование инструмента и доступ к нему, но выданные инструменту разрешения могут быть повторно использованы без повторного запроса к пользователю». Это создает потенциальную брешь в безопасности, когда однажды предоставленный доступ может быть использован многократно без дополнительного контроля.

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

Интересно, что те же уязвимости могут быть использованы и в защитных целях. Исследование компании Tenable показало, что фреймворк MCP способен создавать инструменты, регистрирующие все вызовы функций инструментов MCP. Инъекция промптов может быть применена для целей безопасности, позволяя логировать информацию об инструментах, включая название MCP-сервера, название и описание инструмента MCP, а также пользовательские запросы, запускающие выполнение инструмента. Более того, можно создавать инструменты типа «брандмауэр» для блокировки несанкционированных инструментов.

Бен Смит, исследователь безопасности, подчеркивает: «Инструменты должны требовать явного одобрения перед запуском в большинстве хост-приложений MCP". Он также отмечает, что поведение инструментов может быть непредсказуемым из-за недетерминированности LLM, что добавляет дополнительный слой сложности в обеспечении безопасности.

Параллельно с MCP существует протокол Agent2Agent (A2A), недавно представленный Google. A2A позволяет осуществлять коммуникацию между агентными приложениями, но также уязвим для атак, где вредоносные ИИ-агенты могут перехватывать запросы. Скомпрометированные агенты способны преувеличивать свои возможности, чтобы быть выбранными для выполнения задач, а затем захватывать конфиденциальные данные и возвращать ложные результаты.

Протоколы MCP и A2A дополняют друг друга: если MCP соединяет языковые модели с данными, то A2A обеспечивает связь между ИИ-агентами. Вместе они формируют экосистему, которая, несмотря на свои уязвимости, открывает новые возможности для развития искусственного интеллекта при условии правильного подхода к безопасности.


Новое на сайте

19521Банковский троян VENON на Rust атакует Бразилию с помощью девяти техник обхода защиты 19520Бонобо агрессивны не меньше шимпанзе, но всё решают самки 19519Почему 600-килограммовый зонд NASA падает на Землю из-за солнечной активности? 19518«Липовый календарь»: как расписание превращает работников в расходный материал 19517Вредоносные Rust-пакеты и ИИ-бот крадут секреты разработчиков через CI/CD-пайплайны 19516Как хакеры за 72 часа превратили npm-пакет в ключ от целого облака AWS 19515Как WebDAV-диск и поддельная капча помогают обойти антивирус? 19514Могут ли простые числа скрываться внутри чёрных дыр? 19513Метеорит пробил крышу дома в Германии — откуда взялся огненный шар над Европой? 19512Уязвимости LeakyLooker в Google Looker Studio открывали доступ к чужим базам данных 19511Почему тысячи серверов оказываются открытой дверью для хакеров, хотя могли бы ею не быть? 19510Как исследователи за четыре минуты заставили ИИ-браузер Perplexity Comet попасться на... 19509Может ли женщина без влагалища и шейки матки зачать ребёнка естественным путём? 19508Зачем учёные из Вены создали QR-код, который невозможно увидеть без электронного... 19507Девять уязвимостей CrackArmor позволяют получить root-доступ через модуль безопасности...
Ссылка