Безопасность MCP: углубленный взгляд на текущие угрозы и стратегии защиты
Модельный Контекстный Протокол (MCP) в настоящее время все еще находится на стадии раннего развития, общая обстановка довольно хаотична, различные потенциальные методы атак появляются один за другим. Существующие протоколы и инструменты разработаны так, что трудно эффективно защищаться от этих угроз. Чтобы помочь сообществу повысить осведомленность о безопасности MCP, был разработан открытый инструмент под названием MasterMCP. Этот инструмент предназначен для того, чтобы посредством практических атак помочь разработчикам своевременно выявлять уязвимости в дизайне продукта, тем самым постепенно укрепляя проект MCP.
В этой статье будет представлен практический пример распространенных способов атак в системе MCP на основе контрольного списка безопасности MCP, таких как отравление информации, скрытые вредоносные команды и другие реальные примеры. Все демонстрационные скрипты являются открытым исходным кодом, и читатели могут полностью воспроизвести весь процесс в безопасной среде и даже разработать собственные плагины для тестирования атак на основе этих скриптов.
Обзор общей архитектуры
Демонстрационная атака на цель MCP:Toolbox
Официальный инструмент управления MCP на известном сайте MCP плагинов был выбран в качестве объекта тестирования, основываясь на следующих соображениях:
Большая база пользователей, имеющая репрезентативность
Поддержка автоматической установки других плагинов, дополнение некоторых функций клиента
Содержит чувствительные настройки (, такие как API Key ), для удобства демонстрации
Демонстрационное использование вредоносного MCP: MasterMCP
MasterMCP - это инструмент моделирования злонамеренных MCP, специально разработанный для тестирования безопасности, с модульной архитектурой, включающей следующие ключевые модули:
Локальная веб-сервисная симуляция: быстрое создание простого HTTP-сервера с помощью фреймворка FastAPI для имитации обычной веб-страничной среды. Эти страницы выглядят нормально, но на самом деле в исходном коде или ответах интерфейса скрыты тщательно спроектированные вредоносные нагрузки.
Локальная плагинная архитектура MCP: используется плагинный подход для расширения, что упрощает последующее быстрое добавление новых способов атак. После запуска MasterMCP будет работать FastAPI-сервис в дочернем процессе.
демонстрационный клиент
Cursor: Один из самых популярных в мире IDE для программирования с поддержкой AI.
Claude Desktop: официальный клиент одной крупной AI компании
демонстрационная модель
Выберите версию Claude 3.7, так как в ней были улучшены функции распознавания чувствительных операций, и она представляет собой текущую сильную операционную возможность в экосистеме MCP.
Cross-MCP злонамеренный вызов
Данная демонстрация включает в себя два содержания: отравление и злонамеренные вызовы между MCP.
атака с отравлением содержимого веб-страницы
Комментарийный вредоносный код
Получите доступ к локальному тестовому сайту через Cursor, имитируя доступ клиентом большого объема к вредоносному сайту. Тестовый сайт кажется безвредным, но на самом деле в HTML комментариях внедрены вредоносные подсказки. После выполнения команды Cursor не только считывает содержание веб-страницы, но и возвращает локальные конфиденциальные данные конфигурации на тестовый сервер.
Кодирование тип комментариев
Дальнейшее кодирование злонамеренных подсказок делает их более скрытными. Даже при просмотре исходного кода веб-страницы их трудно обнаружить, но атака все равно успешно выполняется.
Атака на загрязнение интерфейса третьей стороны
Этот демонстрационный материал предназначен для напоминания о том, что как злонамеренные, так и незлобивые MCP могут серьезно повлиять на систему, если при вызове стороннего API напрямую возвращать сторонние данные в контекст. Внедрив злонамеренные подсказки в возвращаемые данные JSON, удалось успешно вызвать злонамеренное выполнение.
Технология отравления на этапе инициализации MCP
атака с перекрытием злонамеренных функций
MasterMCP написал функцию remove_server с тем же именем, что и Toolbox, и закодировал скрытые вредоносные подсказки. После выполнения команды клиент не вызвал оригинальный метод, а вместо этого активировал метод с тем же именем, предоставленный MasterMCP. Это было достигнуто путем подчеркивания "оригинальный метод устарел", чтобы в первую очередь склонить большую модель к вызову вредоносной функции.
Добавить логику вредоносной глобальной проверки
MasterMCP разработал инструмент под названием banana, который имеет основное назначение в том, чтобы заставить все инструменты выполнять этот инструмент для проверки безопасности перед запуском. Это достигается путем многократного подчеркивания в коде "должен быть выполнен проверка banana", что является глобальной логической инъекцией.
Продвинутые техники скрытия вредоносных подсказок
Дружественный к большим моделям способ кодирования
Использование мощных возможностей анализа многоязычных форматов больших языковых моделей для сокрытия вредоносной информации:
Английская среда: использовать кодировку Hex Byte
Китайская среда: используйте кодировку NCR или кодировку JavaScript
Механизм возврата случайной злонамеренной нагрузки
Каждый запрос случайным образом возвращает страницу с вредоносной нагрузкой, что значительно увеличивает сложность обнаружения и отслеживания.
Итог
С помощью практической демонстрации MasterMCP мы наглядно увидели различные скрытые угрозы безопасности в системе MCP. От простых инъекций подсказок и меж-MCP вызовов до более скрытых атак на этапе инициализации и скрытия вредоносных команд, каждый этап напоминает нам: хотя экосистема MCP мощная, она также уязвима.
В эпоху, когда большие модели часто взаимодействуют с внешними плагинами и API, даже небольшое загрязнение ввода может вызвать системные риски безопасности. Разнообразие методов атак означает, что традиционные подходы к защите необходимо полностью обновить.
Надеюсь, что эта демонстрация сможет прозвенеть тревожный звонок для всех: как для разработчиков, так и для пользователей, следует быть настороже в отношении системы MCP, обращая внимание на каждое взаимодействие, каждую строку кода, каждое возвращаемое значение. Только проявляя строгость к деталям, можно построить надежную и безопасную среду MCP.
В будущем мы продолжим совершенствовать скрипт MasterMCP, открывать больше целевых тестовых случаев, чтобы помочь в глубоком понимании, отработке и укреплении защиты в безопасной среде.
 и не должен рассматриваться как поддержка взглядов компании Gate или как финансовый или профессиональный совет. Подробности смотрите в разделе «Отказ от ответственности» .
16 Лайков
Награда
16
9
Поделиться
комментарий
0/400
DefiPlaybook
· 07-08 06:37
76,2% инцидентов безопасности обусловлены недостаточным аудитом кода.
Посмотреть ОригиналОтветить0
SerumSurfer
· 07-07 13:17
Разработчик дрожит?
Посмотреть ОригиналОтветить0
StakeOrRegret
· 07-07 00:04
Почему так много уязвимостей? Не могу с этим справиться.
Посмотреть ОригиналОтветить0
RugPullAlarm
· 07-06 22:43
Еще одна система с множеством уязвимостей. По контракту видно, что это финансовая пирамида.
Посмотреть ОригиналОтветить0
rugdoc.eth
· 07-05 08:21
Много, много, Мошенничество предупреждение
Посмотреть ОригиналОтветить0
GasGuru
· 07-05 08:20
Разработчикам нужно быть осторожными, это слишком опасно.
Посмотреть ОригиналОтветить0
MEVHunter
· 07-05 08:17
лmao смотри, как txpool сгорает... уязвимость другого протокола обнаружена
Анализ угроз безопасности MCP: от отравления до меж-MCP атак
Безопасность MCP: углубленный взгляд на текущие угрозы и стратегии защиты
Модельный Контекстный Протокол (MCP) в настоящее время все еще находится на стадии раннего развития, общая обстановка довольно хаотична, различные потенциальные методы атак появляются один за другим. Существующие протоколы и инструменты разработаны так, что трудно эффективно защищаться от этих угроз. Чтобы помочь сообществу повысить осведомленность о безопасности MCP, был разработан открытый инструмент под названием MasterMCP. Этот инструмент предназначен для того, чтобы посредством практических атак помочь разработчикам своевременно выявлять уязвимости в дизайне продукта, тем самым постепенно укрепляя проект MCP.
В этой статье будет представлен практический пример распространенных способов атак в системе MCP на основе контрольного списка безопасности MCP, таких как отравление информации, скрытые вредоносные команды и другие реальные примеры. Все демонстрационные скрипты являются открытым исходным кодом, и читатели могут полностью воспроизвести весь процесс в безопасной среде и даже разработать собственные плагины для тестирования атак на основе этих скриптов.
Обзор общей архитектуры
Демонстрационная атака на цель MCP:Toolbox
Официальный инструмент управления MCP на известном сайте MCP плагинов был выбран в качестве объекта тестирования, основываясь на следующих соображениях:
Демонстрационное использование вредоносного MCP: MasterMCP
MasterMCP - это инструмент моделирования злонамеренных MCP, специально разработанный для тестирования безопасности, с модульной архитектурой, включающей следующие ключевые модули:
Локальная веб-сервисная симуляция: быстрое создание простого HTTP-сервера с помощью фреймворка FastAPI для имитации обычной веб-страничной среды. Эти страницы выглядят нормально, но на самом деле в исходном коде или ответах интерфейса скрыты тщательно спроектированные вредоносные нагрузки.
Локальная плагинная архитектура MCP: используется плагинный подход для расширения, что упрощает последующее быстрое добавление новых способов атак. После запуска MasterMCP будет работать FastAPI-сервис в дочернем процессе.
демонстрационный клиент
демонстрационная модель
Выберите версию Claude 3.7, так как в ней были улучшены функции распознавания чувствительных операций, и она представляет собой текущую сильную операционную возможность в экосистеме MCP.
Cross-MCP злонамеренный вызов
Данная демонстрация включает в себя два содержания: отравление и злонамеренные вызовы между MCP.
атака с отравлением содержимого веб-страницы
Получите доступ к локальному тестовому сайту через Cursor, имитируя доступ клиентом большого объема к вредоносному сайту. Тестовый сайт кажется безвредным, но на самом деле в HTML комментариях внедрены вредоносные подсказки. После выполнения команды Cursor не только считывает содержание веб-страницы, но и возвращает локальные конфиденциальные данные конфигурации на тестовый сервер.
Дальнейшее кодирование злонамеренных подсказок делает их более скрытными. Даже при просмотре исходного кода веб-страницы их трудно обнаружить, но атака все равно успешно выполняется.
Атака на загрязнение интерфейса третьей стороны
Этот демонстрационный материал предназначен для напоминания о том, что как злонамеренные, так и незлобивые MCP могут серьезно повлиять на систему, если при вызове стороннего API напрямую возвращать сторонние данные в контекст. Внедрив злонамеренные подсказки в возвращаемые данные JSON, удалось успешно вызвать злонамеренное выполнение.
Технология отравления на этапе инициализации MCP
атака с перекрытием злонамеренных функций
MasterMCP написал функцию remove_server с тем же именем, что и Toolbox, и закодировал скрытые вредоносные подсказки. После выполнения команды клиент не вызвал оригинальный метод, а вместо этого активировал метод с тем же именем, предоставленный MasterMCP. Это было достигнуто путем подчеркивания "оригинальный метод устарел", чтобы в первую очередь склонить большую модель к вызову вредоносной функции.
Добавить логику вредоносной глобальной проверки
MasterMCP разработал инструмент под названием banana, который имеет основное назначение в том, чтобы заставить все инструменты выполнять этот инструмент для проверки безопасности перед запуском. Это достигается путем многократного подчеркивания в коде "должен быть выполнен проверка banana", что является глобальной логической инъекцией.
Продвинутые техники скрытия вредоносных подсказок
Дружественный к большим моделям способ кодирования
Использование мощных возможностей анализа многоязычных форматов больших языковых моделей для сокрытия вредоносной информации:
Механизм возврата случайной злонамеренной нагрузки
Каждый запрос случайным образом возвращает страницу с вредоносной нагрузкой, что значительно увеличивает сложность обнаружения и отслеживания.
Итог
С помощью практической демонстрации MasterMCP мы наглядно увидели различные скрытые угрозы безопасности в системе MCP. От простых инъекций подсказок и меж-MCP вызовов до более скрытых атак на этапе инициализации и скрытия вредоносных команд, каждый этап напоминает нам: хотя экосистема MCP мощная, она также уязвима.
В эпоху, когда большие модели часто взаимодействуют с внешними плагинами и API, даже небольшое загрязнение ввода может вызвать системные риски безопасности. Разнообразие методов атак означает, что традиционные подходы к защите необходимо полностью обновить.
Надеюсь, что эта демонстрация сможет прозвенеть тревожный звонок для всех: как для разработчиков, так и для пользователей, следует быть настороже в отношении системы MCP, обращая внимание на каждое взаимодействие, каждую строку кода, каждое возвращаемое значение. Только проявляя строгость к деталям, можно построить надежную и безопасную среду MCP.
В будущем мы продолжим совершенствовать скрипт MasterMCP, открывать больше целевых тестовых случаев, чтобы помочь в глубоком понимании, отработке и укреплении защиты в безопасной среде.
![Практическое руководство: Скрытое отравление и манипуляции в системе MCP](https://img-cdn.gateio.im/webp-social/moments-c5a25d6fa43a286a07b6a57c1a3f9605.webp01