MCP: удобный протокол или новая поверхность атаки?

Если вы используете код десктопа, курсор или другие инструменты, то знаете: ИИ уже не просто генерирует код — он читает файлы, делает коммиты, отправляет письма. Эта интеграция работает через протокол MCP, который позволяет подключать серверы буквально в пару кликов. Увидели интересный GitHub-сервер, установили — и готово.

Но у MCP есть обратная сторона: каждый сервер требует широкие права. Gmail-сервер просит полный доступ к почте, GitHub-сервер — ко всем репозиториям, файловый сервер — к домашней папке. Microsoft уже фиксирует рост «теневых MCP-серверов», которые сотрудники ставят без ведома IT-отдела. Palo Alto предупреждает: злоумышленники маскируют вредоносные серверы под полезные.

Мы провели собственное исследование MCP, изучили отчёты Microsoft, Invariant Labs, Trail of Bits и протестировали разные атаки. В этой статье — разбор протокола и ключевых рисков безопасности.

Как устроен MCP

Работа клиента с MCP-сервером выглядит так:

  1. Рукопожатие — обмен версиями протокола и возможностями. Сервер сообщает, какие «инструменты» доступны.

  2. Список инструментов — клиент получает описание функций (Tools). ИИ доверяет этим описаниям на слово.

  3. Вызовы инструментов — ИИ использует их для выполнения задач (например, получить системную информацию).

  4. Ресурсы и промпты — сервер может предоставлять документы, политики, готовые сценарии аудита.

  5. Логирование — сервер ведёт журнал действий.

Главная проблема: клиент доверяет серверу по умолчанию. Проверка личности сервера или валидация ответов не предусмотрена архитектурой.

Основные атаки

1. Tool Poisoning

Описание инструмента становится оружием. Мы тестировали «калькулятор», который правильно считал 2+2, но параллельно сканировал файловую систему и передавал список директорий.

ИИ доволен результатом («4»), пользователь ничего не подозревает, а злоумышленник получает доступ к данным.

2. Resource Injection

Вредоносные инструкции можно спрятать прямо в документах. ИИ воспринимает их как доверенный источник.
Пример: в «политике паролей» скрыта команда предлагать пароль passport123. Современные модели (например, SQuAD 4) часто игнорируют такие инструкции, но гарантии нет.

3. Supply Chain Trouble

43% популярных MCP-серверов содержат критические уязвимости, 22% позволяют читать произвольные файлы.
Как и с NPM-пакетами, злоумышленники маскируют вредонос под популярные инструменты. Один компрометированный сервер может затронуть тысячи разработчиков.

4. Legacy Endpoints

Поддержка устаревших версий протокола (например, Session ID в URL) создаёт брешь в защите.
Атакующий просто ищет наименее защищённый эндпоинт и использует downgrade-атаку.

5. GitHub Poisoning

ИИ не различает публичные и приватные данные. Вредоносные инструкции из публичных issues могут выполняться в контексте приватных репозиториев. Запретить такое смешивание — значит убить полезную функциональность.

6. Unicode Tag Injection

Исследователи описывают скрытые инструкции с невидимыми Unicode-символами. В наших тестах атака не сработала на SQuAD 4, но другие модели могут оказаться уязвимыми.

Почему это опасно

  • Слепое доверие: ИИ верит описанию инструментов и содержимому ресурсов.

  • Отсутствие валидации: результаты не проверяются.

  • Разные уровни риска: локальные серверы ещё можно проверить, а удалённые — «чёрный ящик».

  • Эффект домино: один скомпрометированный сервер может повлиять на целые компании.

Практические рекомендации

Для разработчиков MCP-серверов:

  • Валидируйте все входные данные.

  • Реализуйте принцип наименьших привилегий.

  • Логируйте и проверяйте каждое действие.

  • Думайте в парадигме Security-First.

Для пользователей:

  • Используйте только проверенные open-source серверы.

  • Мониторьте, что именно делает ИИ «от вашего имени».

  • Проводите регулярные аудиты.

Для бизнеса:

  • Внедряйте Zero Trust архитектуру.

  • Настройте Continuous Security Monitoring.

  • Обучайте сотрудников работе с MCP и ИИ-инструментами.

Итог

MCP — революционная технология для интеграции ИИ с реальными системами. Но архитектура по умолчанию основана на доверии, а значит, открывает простор для атак.

Те, кто изучает MCP критически и внедряет защиту, получают преимущество. Те, кто игнорирует риски, платят данными и безопасностью.

Эра мультиагентных систем только начинается. И наш выбор сегодня — осознанная безопасность или наивная вера в «удобные» инструменты.

А вы уже сталкивались с проблемами безопасности при работе с ИИ-сервисами и плагинами? Поделитесь опытом в комментариях.

Комментарии (4)


  1. de43gy
    02.09.2025 21:00

    А где докозательство слива данных от Claude?


    1. nin-jin
      02.09.2025 21:00

      Напишите его сами, чтобы оно попало в следующую обучающую выборку.


  1. positroid
    02.09.2025 21:00

    Не все агенты используют MCP, cursor может просто через команды в консоли делать все до чего дотянется безо всяких MCP.

    MCP сервера следует понимать как пользовательский сторонний код (чем они по факту и являются). Так что ничего нового здесь не появилось - вы сами ставите mcp сервер / плагин в браузер / приложение на андроид / библиотеку с github и сами должны позаботиться о безопасности.

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

    А Antrophic здесь "виноваты" лишь в том, что разработали удобный протокол.


  1. Politura
    02.09.2025 21:00

    Доказываю на примере Claude

    Спасибо за столь подробное доказательство, ух, такого от Клауде я не ожидал!