Повний аналіз безпекових ризиків MCP: від атак з отруєнням до стратегій захисту

robot
Генерація анотацій у процесі

Обговорення ризиків безпеки системи MCP та заходів захисту

MCP (Model Context Protocol) система наразі перебуває на ранній стадії розвитку, загальне середовище є доволі хаотичним, різні потенційні способи атак з'являються один за одним, існуючі протоколи та інструменти розроблені так, що важко ефективно захищатися. Щоб підвищити безпеку MCP, Slow Mist відкрила вихідний код інструменту MasterMCP, який покликаний допомогти виявити вразливості в дизайні продукту через практичні тренування атак, поступово зміцнюючи проект MCP.

У цьому документі буде використано контрольний список безпеки MCP, щоб на практиці продемонструвати читачам поширені методи атак у рамках системи MCP, такі як інформаційне отруєння, приховані зловмисні команди та інші реальні випадки. Усі демонстраційні сценарії будуть відкритими, щоб кожен міг відтворити їх у безпечному середовищі та розробити свої власні плагіни для тестування атак.

Практичний старт: Схема MC - приховане отруєння та контроль

Загальний огляд архітектури

Демонстраційна ціль атаки MCP: Toolbox

Toolbox є офіційним інструментом управління MCP, випущеним веб-сайтом плагінів MCP. Вибір Toolbox в якості цільового об'єкта для тестування базується на наступних пунктах:

  • Велика база користувачів, має репрезентативність
  • Підтримка автоматичної установки інших плагінів для доповнення деяких функцій клієнта
  • Містить чутливі налаштування, зручні для демонстрації

демонстраційне використання шкідливого MCP: MasterMCP

MasterMCP - це інструмент для моделювання шкідливих MCP, спеціально розроблений для тестування безпеки, з архітектурою на основі плагінів, який містить такі ключові модулі:

  1. Локальний веб-сервіс симуляції: за допомогою фреймворку FastAPI створено простий HTTP-сервер, що імітує звичайне веб-середовище. Ці сторінки виглядають нормально, але насправді в вихідному коді або у відповіді API приховані ретельно спроектовані шкідливі вантажі.

  2. Локальна плагінна архітектура MCP: використовує плагінний підхід для розширення, що полегшує швидке додавання нових способів атак у майбутньому. Після запуску MasterMCP запустить службу FastAPI в дочірньому процесі.

Практичний старт: Схема MCP - приховане отруєння та маніпуляції

демонстраційний клієнт

  • Cursor: один з найбільш популярних у світі IDE для програмування з підтримкою AI
  • Claude Desktop: офіційний клієнт певної компанії

демонстраційне використання великої моделі

Виберіть версію Claude 3.7, оскільки вона має певні покращення в ідентифікації чутливих операцій, а також представляє собою досить сильну операційну здатність у поточній екосистемі MCP.

Cross-MCP зловмисний виклик

атака отравлення веб-контенту

  1. Коментований отруєння

Шляхом доступу до місцевого тестового сайту, моделювання впливу доступу клієнта великої моделі до злочинного сайту. Результати показують, що клієнт не лише зчитував вміст веб-сторінки, але й повертав чутливі налаштування з локального середовища на тестовий сервер. Зловмисні підказки були вбудовані у вигляді HTML коментарів, хоча і були досить зрозумілими, але вже могли викликати злочинні дії.

Практичний старт: Приховане отруєння та маніпуляції в системі MCP

  1. Кодовані коментарі отруєння

Відвідування закодованих шкідливих веб-сторінок, навіть якщо вихідний код не містить відкритих підказок, атака все ще успішно виконується. Цей спосіб робить отруєння більш прихованим і важким для безпосереднього виявлення.

Практичний старт: приховане отруєння та маніпуляції в системі MCP

атака забруднення через сторонній інтерфейс

Демонстрація показує, що незалежно від того, є MCP зловмисним чи незловмисним, пряма передача даних третьої сторони у контекст може мати серйозні наслідки під час виклику API третьої сторони. Зловмисні ключові слова можуть бути вставлені в повернуті дані JSON і безперешкодно викликати зловмисне виконання.

Практичний старт: приховане отруєння та маніпуляції в системі MCP

Техніка отруєння на етапі ініціалізації MCP

атака на перезаписування зловмисних функцій

MasterMCP написав функцію з такою ж назвою, як Toolbox, і закодував приховані шкідливі підказки. Підкреслюючи, що "попередній метод скасовано", він спонукає велику модель спочатку викликати шкідливо перекриту функцію.

Практичний старт: приховане отруєння та маніпуляції в системі MCP

Додати зловмисну глобальну перевірку логіки

MasterMCP написав інструмент, який вимагає обов'язкового виконання перевірки безпеки перед запуском усіх інструментів. Це досягається шляхом повторного підкреслення в коді "необхідно виконати перевірку" для реалізації глобальної логіки вставки.

Практичний старт: Приховане отруєння та маніпуляції в системі MCP

Розширені техніки приховування зловмисних підказок

дружній до великих моделей спосіб кодування

Використання потужних можливостей аналізу багатомовних форматів великих мовних моделей для приховування шкідливої інформації:

  • Англійське середовище: використовуйте кодування Hex Byte
  • Китайське середовище: використання кодування NCR або кодування JavaScript

Практичний старт: Приховане отруєння та маніпуляції в системі MCP

механізм повернення випадкового шкідливого вантажу

Кожен запит випадковим чином повертає сторінку з шкідливим вантажем, що ускладнює виявлення та відстеження.

Практичний старт: приховане отруєння та маніпуляція в системі MCP

Підсумок

Демонстрація MasterMCP в реальних умовах виявила різні загрози безпеці в системі MCP. Від простих ін'єкцій підказок до прихованих атак на етапі ініціалізації, кожен етап нагадує нам про вразливість екосистеми MCP. Часті взаємодії великих моделей з зовнішніми плагінами та API означають, що навіть невелике забруднення введення може спричинити системні ризики безпеки.

Різноманітність методів атаки (приховування коду, випадкове забруднення, перекриття функцій) означає, що традиційні підходи до захисту потребують всебічного оновлення. Розробники та користувачі повинні бути пильними щодо системи MCP, звертаючи увагу на кожну взаємодію, кожен рядок коду, кожне значення, що повертається. Лише приділяючи увагу деталям, можна збудувати надійне та безпечне середовище MCP.

У майбутньому ми продовжимо вдосконалювати скрипт MasterMCP, відкривати більше цільових тестових випадків, щоб допомогти в безпечному середовищі поглибити розуміння, відпрацювати та посилити захист.

![Практичний старт: Схема MCP з прихованим отруєнням та маніпуляцією](https://img-cdn.gateio.im/webp-social/moments-c5a25d6fa43a286a07b6a57c1a3f9605.webp01

Переглянути оригінал
Ця сторінка може містити контент третіх осіб, який надається виключно в інформаційних цілях (не в якості запевнень/гарантій) і не повинен розглядатися як схвалення його поглядів компанією Gate, а також як фінансова або професійна консультація. Див. Застереження для отримання детальної інформації.
  • Нагородити
  • 8
  • Поділіться
Прокоментувати
0/400
liquidation_surfervip
· 07-09 09:11
Не можна перепригнути через питання безпеки.
Переглянути оригіналвідповісти на0
RunWhenCutvip
· 07-09 07:17
Ця диня змушує мене тремтіти всім тілом.
Переглянути оригіналвідповісти на0
HashBardvip
· 07-08 21:03
отже, ще один день, ще одна вразливість у системі безпеки mcp... поезія в хаосі, чи не так?
Переглянути оригіналвідповісти на0
SatoshiHeirvip
· 07-06 20:33
Безсумнівно, ветеран, який переглянув Біла книга більше 200 разів, проходячи повз, вважає, що в цій статті багато помилок.
Переглянути оригіналвідповісти на0
MetaverseVagabondvip
· 07-06 20:32
Не копіюйте продукти, а то відсидите у в'язниці.
Переглянути оригіналвідповісти на0
failed_dev_successful_apevip
· 07-06 20:20
Деталі можуть знищити проект
Переглянути оригіналвідповісти на0
SchroedingerAirdropvip
· 07-06 20:15
Цей неочікуваний код взагалі не можна написати.
Переглянути оригіналвідповісти на0
TokenEconomistvip
· 07-06 20:11
дозвольте мені це пояснити - ключова вразливість полягає в невідповідності стимулів моделі безпеки MCP
Переглянути оригіналвідповісти на0
  • Закріпити