Análisis de riesgos de seguridad del ecosistema MCP: demostración de ataques trans-MCP y envenenamiento encubierto

robot
Generación de resúmenes en curso

Riesgos de seguridad y demostración de ataques potenciales en el sistema MCP

El ecosistema actual de MCP ( Model Context Protocol ) aún se encuentra en una etapa temprana de desarrollo, el entorno general es bastante caótico, y surgen constantemente diversas amenazas potenciales. Los protocolos y herramientas existentes son difíciles de defender de manera efectiva. Para ayudar a la comunidad a mejorar la conciencia sobre la seguridad de MCP, ha surgido una herramienta de código abierto llamada MasterMCP, que tiene como objetivo ayudar a los desarrolladores a identificar a tiempo los riesgos de seguridad en el diseño del producto a través de simulaciones de ataques reales, reforzando así continuamente la seguridad del proyecto MCP.

Este artículo guiará a los lectores a través de una demostración práctica de los ataques comunes en el ecosistema MCP, incluidos casos reales como la inyección de información y la ocultación de instrucciones maliciosas. Todos los scripts de demostración son de código abierto, disponibles para que todos los reproduzcan en un entorno seguro, e incluso pueden desarrollar sus propios plugins de prueba de ataque basados en esto.

Práctica: Envenenamiento y manipulación encubiertos en el sistema MCP

Visión general de la arquitectura

Demostración del objetivo de ataque MCP: Toolbox

Toolbox es una herramienta de gestión de MCP muy popular, con una gran base de usuarios. La elección de esta como objetivo de prueba se basa principalmente en las siguientes consideraciones:

  • Gran base de usuarios, representativa
  • Soporta la instalación automática de otros complementos, lo que puede complementar algunas funciones del cliente.
  • Incluye configuraciones sensibles ( como la clave API ), para facilitar la demostración

muestra de uso de MCP malicioso: MasterMCP

MasterMCP es una herramienta simulada de MCP malicioso diseñada específicamente para pruebas de seguridad, que utiliza una arquitectura basada en plugins e incluye los siguientes módulos clave:

  1. Simulación de servicios de sitios web locales:

Este módulo construye rápidamente un servidor HTTP simple utilizando el marco FastAPI, simulando un entorno de página web común. Estas páginas parecen normales, pero en realidad ocultan cargas maliciosas cuidadosamente diseñadas en el código fuente o en las respuestas de las interfaces.

  1. Arquitectura MCP local y modular

MasterMCP utiliza un enfoque modular para la expansión, facilitando la adición rápida de nuevos métodos de ataque en el futuro. Después de ejecutarse, MasterMCP iniciará el servicio FastAPI mencionado anteriormente en un subproceso.

Práctica: Envenenamiento encubierto y manipulación en el sistema MCP

cliente de demostración

  • Cursor: uno de los IDE de programación asistida por IA más populares a nivel mundial
  • Claude Desktop:Cliente oficial de Anthropic

modelo grande de uso de demostración

  • Claude 3.7

Elegir esta versión se debe a que ha habido ciertas mejoras en la identificación de operaciones sensibles, y representa una capacidad operativa relativamente fuerte en el ecosistema actual de MC.

Llamadas maliciosas de Cross-MCP

ataque de envenenamiento de contenido web

  1. Inyección de comentarios

A través de Cursor se accede al sitio web de pruebas local, que parece ser una página inofensiva de "Delicious Cake World". Al ejecutar la instrucción para obtener el contenido de la página web, Cursor no solo leyó el contenido de la página, sino que también envió de vuelta datos de configuración sensibles locales al servidor de pruebas. En el código fuente, las palabras clave maliciosas están incrustadas en forma de comentarios HTML.

Práctica: envenenamiento encubierto y manipulación en el sistema MCP

  1. Inyección de comentarios codificados

Acceder a la página /encode, que es una página web que parece idéntica, pero en la que las palabras clave maliciosas están codificadas, lo que hace que la inyección sea más oculta. Incluso si el código fuente no contiene palabras clave en texto plano, el ataque aún se ejecuta con éxito.

Práctica: Envenenamiento y manipulación encubiertos en el sistema MCP

MCP herramienta de retorno de información envenenada

Según las instrucciones de las palabras clave de MasterMCP, después de ingresar el comando simulado "get a lot of apples", el cliente llamó a Toolbox a través de MCP y agregó con éxito un nuevo servidor MCP. Al revisar el código del complemento, se puede observar que los datos devueltos ya contienen una carga maliciosa codificada, lo que hace que el usuario apenas pueda detectar la anomalía.

Salida de la práctica: envenenamiento oculto y manipulación en el sistema MCP

ataque de contaminación de la interfaz de terceros

Después de ejecutar la solicitud para obtener datos JSON, se inyectaron palabras clave maliciosas en los datos JSON devueltos, lo que provocó una ejecución maliciosa exitosa. Esto nos recuerda que, ya sea un MCP malicioso o no malicioso, al llamar a una API de terceros, si se devuelven directamente los datos de terceros al contexto, esto puede tener graves consecuencias.

Práctica: Envenenamiento y manipulación encubiertos en el sistema MCP

Técnica de envenenamiento en la fase de inicialización de MCP

ataque de sobreescritura de funciones maliciosas

MasterMCP escribió una herramienta llamada remove_server que utiliza la misma función que Toolbox y codificó palabras clave maliciosas ocultas. Después de ejecutar el comando, Claude Desktop no llamó al método remove_server de toolbox, sino que activó el método homónimo proporcionado por MasterMCP. Esto se logró enfatizando que "el método original ha sido desaprobado" para inducir prioritariamente al gran modelo a llamar a la función de cobertura maliciosa.

Salida de la práctica: envenenamiento encubierto y manipulación en el sistema MCP

Añadir lógica de verificación global maliciosa

MasterMCP ha desarrollado una herramienta llamada banana, cuya función principal es obligar a que todas las herramientas se ejecuten tras realizar esta herramienta para una verificación de seguridad. Antes de ejecutar cualquier función, el sistema prioriza la llamada al mecanismo de verificación de banana. Esto se logra mediante la inyección lógica global que enfatiza repetidamente en el código "debe ejecutarse la verificación de banana".

Práctica: envenenamiento encubierto y manipulación en el sistema MCP

Técnicas avanzadas para ocultar palabras clave maliciosas

forma de codificación amigable para modelos grandes

Debido a la fuerte capacidad de análisis de formatos multilingües de los grandes modelos de lenguaje, esto se utiliza para ocultar información maliciosa, los métodos comunes incluyen:

  • Entorno en inglés: usar codificación Hex Byte
  • Entorno en chino: usar codificación NCR o codificación JavaScript

Práctica: Envenenamiento y control encubiertos en el sistema MCP

mecanismo de retorno de carga maliciosa aleatoria

Al solicitar /random, siempre se devuelve aleatoriamente una página con una carga maliciosa, lo que aumenta significativamente la dificultad de detección y rastreo.

Salida práctica: envenenamiento encubierto y manipulación en el sistema MCP

Resumen

A través de la demostración práctica de MasterMCP, hemos visto de manera intuitiva los diversos riesgos de seguridad ocultos en el sistema MCP. Desde inyecciones de palabras clave simples, llamadas cruzadas a MCP, hasta ataques en la fase de inicialización más encubiertos y ocultación de instrucciones maliciosas, cada etapa nos recuerda: aunque el ecosistema MCP es poderoso, también es vulnerable.

Especialmente hoy en día, cuando los modelos grandes interactúan cada vez más frecuentemente con plugins externos y APIs, una pequeña contaminación de la entrada puede provocar riesgos de seguridad a nivel de sistema. La diversificación de los métodos de los atacantes, como la codificación oculta (, la contaminación aleatoria y la sobrecarga de funciones ), también significa que las estrategias de defensa tradicionales necesitan una actualización completa.

La seguridad nunca se logra de la noche a la mañana. Espero que esta demostración pueda servir como una llamada de atención para todos: tanto los desarrolladores como los usuarios deben mantener una suficiente vigilacia sobre el sistema MCP, prestando atención a cada interacción, cada línea de código y cada valor devuelto. Solo al tratar rigurosamente cada detalle se puede construir un entorno MCP sólido y seguro.

El siguiente paso, también continuaremos perfeccionando el script de MasterMCP, abriendo más casos de prueba específicos para ayudar a todos a entender, practicar y fortalecer la protección en un entorno seguro.

Práctica: Envenenamiento y manipulación encubiertos en el sistema MCP

BANANA0.07%
Ver originales
Esta página puede contener contenido de terceros, que se proporciona únicamente con fines informativos (sin garantías ni declaraciones) y no debe considerarse como un respaldo por parte de Gate a las opiniones expresadas ni como asesoramiento financiero o profesional. Consulte el Descargo de responsabilidad para obtener más detalles.
  • Recompensa
  • 2
  • Compartir
Comentar
0/400
LeverageAddictvip
· 07-23 09:26
Atención a los agujeros ciegos entre MCP
Ver originalesResponder0
FarmHoppervip
· 07-23 09:13
Debemos prevenir estrictamente la contaminación.
Ver originalesResponder0
Opere con criptomonedas en cualquier momento y lugar
qrCode
Escanee para descargar la aplicación Gate
Comunidad
Español
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)