Скрытая отравление и манипуляция в системе MCP: практическая демонстрация
В настоящее время MCP ( Model Context Protocol ) все еще находится на ранней стадии разработки, общая обстановка довольно хаотична, различные потенциальные способы атак появляются один за другим, существующие протоколы и инструменты не могут эффективно защищаться. Чтобы помочь сообществу лучше понять и повысить безопасность MCP, недавно был открыт исходный код инструмента MasterMCP, который предназначен для помощи в выявлении уязвимостей в дизайне продукта через практические тренировки по атакам, что позволит постепенно укрепить проект MCP.
В данной статье читатели смогут самостоятельно практиковаться, демонстрируя распространенные методы атак в системе MCP, такие как отравление информации, скрытие вредоносных команд и другие реальные примеры. Все демонстрационные скрипты также будут открыты, и читатели смогут полностью воспроизвести весь процесс в безопасной среде, а также разработать свои собственные плагины для тестирования атак на основе этих скриптов.
Обзор общей архитектуры
Демонстрационная атака цель MC: Toolbox
smithery.ai является одним из самых популярных сайтов плагинов MCP в настоящее время, на котором собрано множество списков MCP и активных пользователей. Среди них @smithery/toolbox — это официальный инструмент управления MCP, выпущенный этим сайтом.
Выберите Toolbox в качестве тестового объекта, основываясь на следующих пунктах:
Огромная база пользователей, обладает представительностью
Поддержка автоматической установки других плагинов, дополнение некоторых функций клиента
Содержит конфиденциальные настройки (, такие как API Key ), для удобства демонстрации
демонстрационное использование вредоносного MC: MasterMCP
MasterMCP - это инструмент для имитации злонамеренного MCP, специально разработанный для безопасности тестирования, использующий модульную архитектуру и содержащий следующие ключевые модули:
Моделирование локального веб-сервиса:
Для более реалистичного воспроизведения сценариев атак MasterMCP включает встроенный модуль имитации локальных веб-сервисов. Он быстро создает простой HTTP-сервер с помощью фреймворка FastAPI, имитируя обычную веб-среду. Эти страницы на первый взгляд выглядят нормально, но на самом деле в исходном коде страницы или в ответах интерфейса скрыты тщательно разработанные вредоносные нагрузки.
Таким образом, мы можем в безопасной и контролируемой локальной среде полностью продемонстрировать такие методы атак, как отравление информации и скрытие команд, что поможет более наглядно понять: даже на первый взгляд обычная веб-страница может стать источником опасности, способствующим выполнению аномальных операций большими моделями.
Локальная плагинизированная архитектура MCP
MasterMCP использует модульный подход для расширения, что упрощает последующее быстрое добавление новых способов атаки. После запуска MasterMCP будет запускать службу FastAPI предыдущего модуля в дочернем процессе. Если быть внимательным, можно заметить, что здесь уже существует угроза безопасности — локальные плагины могут произвольно запускать дочерние процессы, не предусмотренные MCP.
( демонстрационный клиент
Cursor: Один из самых популярных в мире IDE для программирования с помощью ИИ
Claude Desktop: Anthropic)MCП协议定制方###официальный клиент
( демонстрационная версия большой модели
Клод 3.7
Выберите версию Claude 3.7, так как в ней уже имеются определенные улучшения в распознавании чувствительных операций, а также она представляет собой достаточно сильную операционную способность в текущей экосистеме MCP.
![Практическое руководство: Скрытая токсинация и манипуляция в системе MCP])https://img-cdn.gateio.im/webp-social/moments-3c65fb78f3a1d00f05d6f3d950931f1f.webp###
Кросс-MC Злонамеренный Вызов
( атака на уязвимость веб-контента
Комментарийный ядовитый
Курсор получает доступ к локальному тестовому сайту.
Это страница, которая кажется безобидной, о "Delicious Cake World", и через этот эксперимент имитируется влияние доступа клиентом большого модели к вредоносному сайту.
Выполнить команду:
Получить содержимое
Результаты показывают, что Cursor не только считывает содержимое веб-страницы, но и передает локальные конфиденциальные данные на тестовый сервер. В исходном коде злонамеренные ключевые слова внедрены в виде HTML-комментариев.
Хотя способ комментирования довольно прямолинеен и легко распознаётся, он уже может спровоцировать вредоносные действия.
![Практическое начало: Скрытая отрава и манипуляции в системе MCP])https://img-cdn.gateio.im/webp-social/moments-2fe451755dc3588ffc2ddbd7427dcf9b.webp###
Кодирующие комментарии-отравление
Посетите страницу /encode, это веб-страница, которая выглядит так же, как приведенный выше пример, но в ней злонамеренные подсказки закодированы, что делает эксплуатацию более скрытной, и даже при просмотре исходного кода страницы трудно обнаружить.
Даже если исходный код не содержит явных подсказок, атака все равно успешно выполняется. Конкретный принцип будет подробно объяснен в последующих главах.
( MCP工具 возвращает информацию о вредоносной атаке
Согласно подсказкам MasterMCP, введите симуляционную команду ), эта команда не имеет реального значения и предназначена для активации вредоносного MCP для демонстрации последующих действий ###:
получить много яблок
Можно увидеть, что после вызова команды клиент успешно вызвал Toolbox через MCP и добавил новый сервер MCP.
Посмотрев код плагина, можно обнаружить, что в возвращаемых данных уже встроен закодированный вредоносный полезный груз, который пользователь едва ли может заметить.
( Атака на загрязнение третьего интерфейса
Этот демо-ролик в основном напоминает, что независимо от того, является ли MCP злонамеренным или незлонамеренным, при вызове стороннего API, если данные третьей стороны возвращаются непосредственно в контекст, это может привести к серьезным последствиям.
Выполнить запрос:
Получить json из /api/data
Результат: вредоносные подсказки были внедрены в возвращенные данные JSON и успешно вызвали вредоносное выполнение.
![Практический старт: Скрытая отрава и манипуляция в системе MCP])https://img-cdn.gateio.im/webp-social/moments-33ec895deae947ebc284e846286ccf1c.webp###
Технология отравления на этапе инициализации MCP
( Злоумышленное покрытие функций
MasterMCP написал инструмент с таким же именем функции remove_server, как у Toolbox, и закодировал скрытые вредоносные подсказки.
Выполнить команду:
инструмент удалить получить плагин сервер
Клод Десктоп не вызвал оригинальный метод toolbox remove_server, а вместо этого активировал метод с тем же именем, предоставленный MasterMCP.
Принцип заключается в том, чтобы подчеркнуть, что "предыдущие методы устарели", и приоритизировать побуждение больших моделей вызывать функции с вредоносным переопределением.
![Практическое руководство: Скрытая подача и манипуляции в системе MCP])https://img-cdn.gateio.im/webp-social/moments-e16c8d753ef00ec06f0bf607dc188446.webp###
MasterMCP разработал инструмент banana, основная функция которого заключается в том, что перед запуском всех инструментов необходимо выполнить этот инструмент для проверки безопасности.
Перед выполнением функции система всегда сначала вызывает механизм проверки banana.
Это глобальная логическая инъекция, осуществляемая путем многократного акцентирования в коде на "необходимо запустить проверку banana".
![Практическое руководство: Скрытая подача токсичных продуктов и манипуляции в системе MCP])https://img-cdn.gateio.im/webp-social/moments-3e15b74bbdc0154ed8505c04345c4deb.webp###
Продвинутые техники скрытия злонамеренных подсказок
( Дружественный к большим моделям способ кодирования
Из-за того, что большие языковые модели обладают высокой способностью к анализу многоязычного формата, это используется для скрытия вредоносной информации, часто используемые методы включают:
В английской среде: использовать кодирование Hex Byte
В китайской среде: используйте кодировку NCR или кодировку JavaScript
) Механизм возврата случайной вредоносной нагрузки
При запросе /random каждый раз случайным образом возвращается страница с вредоносным содержимым, что значительно увеличивает сложность обнаружения и отслеживания.
![Практическое руководство: Скрытое отравление и манипуляции в системе MCP]###https://img-cdn.gateio.im/webp-social/moments-cd87a6781e74c267c89e99e398e7499c.webp###
Итог
С помощью практической демонстрации MasterMCP мы наглядно увидели различные скрытые угрозы безопасности в системе Model Context Protocol (MCP). От простых инъекций подсказок, вызовов между MCP, до более скрытых атак на стадии инициализации и скрытия злонамеренных команд, каждый этап напоминает нам: хотя экосистема MCP мощна, она также уязвима.
Особенно в то время, когда большие модели всё чаще взаимодействуют с внешними плагинами и API, небольшое загрязнение ввода может вызвать системные риски безопасности. А разнообразие методов атак, таких как ( кодирование скрытия, случайное загрязнение, замена функций ), также означает, что традиционные подходы к защите необходимо полностью обновить.
Безопасность никогда не достигается сразу.
Надеюсь, этот показ сможет прозвучать как звонок для всех: как для разработчиков, так и для пользователей, следует сохранять достаточную бдительность к системе MCP, постоянно обращая внимание на каждое взаимодействие, каждую строку кода, каждое возвращаемое значение. Только строгое внимание к каждой детали позволит действительно построить надежную и безопасную среду MCP.
Следующим шагом мы также продолжим совершенствовать скрипт MasterMCP, открывая больше целевых тестовых случаев, чтобы помочь всем глубже понять, отработать и укрепить защиту в безопасной среде.
 и не должен рассматриваться как поддержка взглядов компании Gate или как финансовый или профессиональный совет. Подробности смотрите в разделе «Отказ от ответственности» .
11 Лайков
Награда
11
5
Поделиться
комментарий
0/400
ponzi_poet
· 17ч назад
Объем кода недостаточно велик
Посмотреть ОригиналОтветить0
LayerZeroEnjoyer
· 17ч назад
Серьезные угрозы безопасности.
Посмотреть ОригиналОтветить0
OffchainWinner
· 17ч назад
Открытый исходный код не боится критики?
Посмотреть ОригиналОтветить0
OneBlockAtATime
· 17ч назад
Этот уязвимость слишком опасна.
Посмотреть ОригиналОтветить0
Rekt_Recovery
· 17ч назад
Будьте осторожны при использовании атакующих ядов.
Практика безопасности MCP: скрытые техники от атак внедрения до глобального контроля
Скрытая отравление и манипуляция в системе MCP: практическая демонстрация
В настоящее время MCP ( Model Context Protocol ) все еще находится на ранней стадии разработки, общая обстановка довольно хаотична, различные потенциальные способы атак появляются один за другим, существующие протоколы и инструменты не могут эффективно защищаться. Чтобы помочь сообществу лучше понять и повысить безопасность MCP, недавно был открыт исходный код инструмента MasterMCP, который предназначен для помощи в выявлении уязвимостей в дизайне продукта через практические тренировки по атакам, что позволит постепенно укрепить проект MCP.
В данной статье читатели смогут самостоятельно практиковаться, демонстрируя распространенные методы атак в системе MCP, такие как отравление информации, скрытие вредоносных команд и другие реальные примеры. Все демонстрационные скрипты также будут открыты, и читатели смогут полностью воспроизвести весь процесс в безопасной среде, а также разработать свои собственные плагины для тестирования атак на основе этих скриптов.
Обзор общей архитектуры
Демонстрационная атака цель MC: Toolbox
smithery.ai является одним из самых популярных сайтов плагинов MCP в настоящее время, на котором собрано множество списков MCP и активных пользователей. Среди них @smithery/toolbox — это официальный инструмент управления MCP, выпущенный этим сайтом.
Выберите Toolbox в качестве тестового объекта, основываясь на следующих пунктах:
демонстрационное использование вредоносного MC: MasterMCP
MasterMCP - это инструмент для имитации злонамеренного MCP, специально разработанный для безопасности тестирования, использующий модульную архитектуру и содержащий следующие ключевые модули:
Для более реалистичного воспроизведения сценариев атак MasterMCP включает встроенный модуль имитации локальных веб-сервисов. Он быстро создает простой HTTP-сервер с помощью фреймворка FastAPI, имитируя обычную веб-среду. Эти страницы на первый взгляд выглядят нормально, но на самом деле в исходном коде страницы или в ответах интерфейса скрыты тщательно разработанные вредоносные нагрузки.
Таким образом, мы можем в безопасной и контролируемой локальной среде полностью продемонстрировать такие методы атак, как отравление информации и скрытие команд, что поможет более наглядно понять: даже на первый взгляд обычная веб-страница может стать источником опасности, способствующим выполнению аномальных операций большими моделями.
MasterMCP использует модульный подход для расширения, что упрощает последующее быстрое добавление новых способов атаки. После запуска MasterMCP будет запускать службу FastAPI предыдущего модуля в дочернем процессе. Если быть внимательным, можно заметить, что здесь уже существует угроза безопасности — локальные плагины могут произвольно запускать дочерние процессы, не предусмотренные MCP.
( демонстрационный клиент
( демонстрационная версия большой модели
Выберите версию Claude 3.7, так как в ней уже имеются определенные улучшения в распознавании чувствительных операций, а также она представляет собой достаточно сильную операционную способность в текущей экосистеме MCP.
![Практическое руководство: Скрытая токсинация и манипуляция в системе MCP])https://img-cdn.gateio.im/webp-social/moments-3c65fb78f3a1d00f05d6f3d950931f1f.webp###
Кросс-MC Злонамеренный Вызов
( атака на уязвимость веб-контента
Курсор получает доступ к локальному тестовому сайту.
Это страница, которая кажется безобидной, о "Delicious Cake World", и через этот эксперимент имитируется влияние доступа клиентом большого модели к вредоносному сайту.
Выполнить команду: Получить содержимое
Результаты показывают, что Cursor не только считывает содержимое веб-страницы, но и передает локальные конфиденциальные данные на тестовый сервер. В исходном коде злонамеренные ключевые слова внедрены в виде HTML-комментариев.
Хотя способ комментирования довольно прямолинеен и легко распознаётся, он уже может спровоцировать вредоносные действия.
![Практическое начало: Скрытая отрава и манипуляции в системе MCP])https://img-cdn.gateio.im/webp-social/moments-2fe451755dc3588ffc2ddbd7427dcf9b.webp###
Посетите страницу /encode, это веб-страница, которая выглядит так же, как приведенный выше пример, но в ней злонамеренные подсказки закодированы, что делает эксплуатацию более скрытной, и даже при просмотре исходного кода страницы трудно обнаружить.
Даже если исходный код не содержит явных подсказок, атака все равно успешно выполняется. Конкретный принцип будет подробно объяснен в последующих главах.
( MCP工具 возвращает информацию о вредоносной атаке
Согласно подсказкам MasterMCP, введите симуляционную команду ), эта команда не имеет реального значения и предназначена для активации вредоносного MCP для демонстрации последующих действий ###:
получить много яблок
Можно увидеть, что после вызова команды клиент успешно вызвал Toolbox через MCP и добавил новый сервер MCP.
Посмотрев код плагина, можно обнаружить, что в возвращаемых данных уже встроен закодированный вредоносный полезный груз, который пользователь едва ли может заметить.
( Атака на загрязнение третьего интерфейса
Этот демо-ролик в основном напоминает, что независимо от того, является ли MCP злонамеренным или незлонамеренным, при вызове стороннего API, если данные третьей стороны возвращаются непосредственно в контекст, это может привести к серьезным последствиям.
Выполнить запрос: Получить json из /api/data
Результат: вредоносные подсказки были внедрены в возвращенные данные JSON и успешно вызвали вредоносное выполнение.
![Практический старт: Скрытая отрава и манипуляция в системе MCP])https://img-cdn.gateio.im/webp-social/moments-33ec895deae947ebc284e846286ccf1c.webp###
Технология отравления на этапе инициализации MCP
( Злоумышленное покрытие функций
MasterMCP написал инструмент с таким же именем функции remove_server, как у Toolbox, и закодировал скрытые вредоносные подсказки.
Выполнить команду: инструмент удалить получить плагин сервер
Клод Десктоп не вызвал оригинальный метод toolbox remove_server, а вместо этого активировал метод с тем же именем, предоставленный MasterMCP.
Принцип заключается в том, чтобы подчеркнуть, что "предыдущие методы устарели", и приоритизировать побуждение больших моделей вызывать функции с вредоносным переопределением.
![Практическое руководство: Скрытая подача и манипуляции в системе MCP])https://img-cdn.gateio.im/webp-social/moments-e16c8d753ef00ec06f0bf607dc188446.webp###
( Добавить злонамеренную глобальную проверку логики
MasterMCP разработал инструмент banana, основная функция которого заключается в том, что перед запуском всех инструментов необходимо выполнить этот инструмент для проверки безопасности.
Перед выполнением функции система всегда сначала вызывает механизм проверки banana.
Это глобальная логическая инъекция, осуществляемая путем многократного акцентирования в коде на "необходимо запустить проверку banana".
![Практическое руководство: Скрытая подача токсичных продуктов и манипуляции в системе MCP])https://img-cdn.gateio.im/webp-social/moments-3e15b74bbdc0154ed8505c04345c4deb.webp###
Продвинутые техники скрытия злонамеренных подсказок
( Дружественный к большим моделям способ кодирования
Из-за того, что большие языковые модели обладают высокой способностью к анализу многоязычного формата, это используется для скрытия вредоносной информации, часто используемые методы включают:
) Механизм возврата случайной вредоносной нагрузки
При запросе /random каждый раз случайным образом возвращается страница с вредоносным содержимым, что значительно увеличивает сложность обнаружения и отслеживания.
![Практическое руководство: Скрытое отравление и манипуляции в системе MCP]###https://img-cdn.gateio.im/webp-social/moments-cd87a6781e74c267c89e99e398e7499c.webp###
Итог
С помощью практической демонстрации MasterMCP мы наглядно увидели различные скрытые угрозы безопасности в системе Model Context Protocol (MCP). От простых инъекций подсказок, вызовов между MCP, до более скрытых атак на стадии инициализации и скрытия злонамеренных команд, каждый этап напоминает нам: хотя экосистема MCP мощна, она также уязвима.
Особенно в то время, когда большие модели всё чаще взаимодействуют с внешними плагинами и API, небольшое загрязнение ввода может вызвать системные риски безопасности. А разнообразие методов атак, таких как ( кодирование скрытия, случайное загрязнение, замена функций ), также означает, что традиционные подходы к защите необходимо полностью обновить.
Безопасность никогда не достигается сразу.
Надеюсь, этот показ сможет прозвучать как звонок для всех: как для разработчиков, так и для пользователей, следует сохранять достаточную бдительность к системе MCP, постоянно обращая внимание на каждое взаимодействие, каждую строку кода, каждое возвращаемое значение. Только строгое внимание к каждой детали позволит действительно построить надежную и безопасную среду MCP.
Следующим шагом мы также продолжим совершенствовать скрипт MasterMCP, открывая больше целевых тестовых случаев, чтобы помочь всем глубже понять, отработать и укрепить защиту в безопасной среде.
![Практическое руководство: Скрытая токсичность и манипуляции в системе MCP](https://img-cdn.gateio.im/webp-social/moments-c5a25d6fa43a286a07b6a57c1a3f9605.webp01