Протокол Model Context Protocol (MCP) стандартизирует взаимодействие ИИ-агентов с внешними системами, инструментами и данными. Хотя протокол упрощает интеграцию, позволяя агентам автоматически получать описания инструментов, он создает критические уязвимости для безопасности корпоративных систем.

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

Публичные MCP-серверы подвержены атакам типа prompt injection. Поскольку агенты динамически запрашивают описания инструментов, вредоносный код попадает в контекст модели незаметно для пользователя. Ручная проверка неэффективна, так как описания могут меняться со временем или быть распределены между разными серверами.

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

Развертывание сторонних MCP-серверов внутри корпоративного контура не гарантирует безопасность. Компрометация внутреннего сервера позволяет злоумышленнику распространить вредоносные инструкции на всех агентов компании. Это создает единую точку отказа, через которую можно скомпрометировать всю инфраструктуру организации.