Los servidores MCP son la nueva superficie de ataque
El Model Context Protocol ahora tiene una base de datos de seguridad. Contiene 50 entradas.1
Se registraron treinta CVEs en 60 días. De 2.614 implementaciones de MCP analizadas, el 82% tenía vulnerabilidades en operaciones de archivos propensas a path traversal. Entre el 38% y el 41% de los servidores carecían de autenticación por completo.2 La herramienta oficial MCP Inspector —la que los desarrolladores usan para depurar servidores MCP— tenía una vulnerabilidad de RCE. El paquete ampliamente utilizado mcp-remote tenía un bug de inyección de comandos del sistema operativo.1
Esto no es una superficie de ataque teórica. Son CVEs reales en paquetes reales que desarrolladores reales están conectando a Claude Code, Codex CLI y Cursor en este momento.
TL;DR
Los servidores MCP son la superficie de integración de más rápido crecimiento en el ecosistema de agentes. También son la menos auditada. La base de datos de vulnerabilidades tiene 50 entradas: 13 críticas, 32 altas. Las fallas de validación de entrada y la inyección de prompts representan 30 de las 50. Tres vulnerabilidades SSRF en tres servidores MCP diferentes aparecieron en un solo día esta semana.3 El patrón es claro: la comunidad está publicando servidores MCP más rápido de lo que los revisa.
Puntos clave
- Usuarios de Claude Code: Cada servidor MCP que conectas es un límite de confianza que estás extendiendo. Ejecuta
claude mcp listahora mismo y audita lo que tienes conectado. Si estás usando servidores MCP comunitarios que instalaste hace meses, verifica si han sido parcheados desde entonces. - Constructores de harness: Tus hooks PreToolUse son tu última línea de defensa antes de que una llamada a una herramienta MCP llegue a un servidor no auditado. Considera hooks que validen las entradas de herramientas MCP antes de su ejecución, especialmente para servidores que aceptan URLs, rutas de archivos o comandos de shell.
- Autores de servidores MCP: La especificación MCP dice que “DEBERÍA haber siempre un humano en el ciclo.” Trata eso como un DEBE. Valida todas las entradas. Nunca pases cadenas controladas por el usuario a comandos de shell mediante interpolación de cadenas. Nunca confíes en valores
$refen especificaciones OpenAPI sin validación de URL.
Los números
El proyecto Vulnerable MCP mantiene una base de datos de problemas de seguridad documentados en MCP.1 El estado actual:
| Categoría | Cantidad |
|---|---|
| Validación de entrada (inyección, traversal) | 17 |
| Inyección de prompts / envenenamiento de herramientas | 13 |
| RCE / inyección de comandos | 12 |
| Robo de credenciales | 8 |
| DNS rebinding | 6 |
| Fallas de autenticación | 5 |
| SSRF | 4 |
Severidad: 13 críticas, 32 altas, 5 medias.1 Treinta y dos investigadores de seguridad contribuyeron hallazgos. Los servidores afectados incluyen el propio servidor Git MCP de Anthropic, el MCP Inspector oficial, Microsoft MarkItDown, GitHub Kanban, Figma, Jira, Grafana, Neo4j, Kubernetes y más de 20 servidores construidos por la comunidad.1
El hallazgo de la encuesta es el más contundente: el 82% de 2.614 implementaciones de MCP tenía vulnerabilidades en operaciones de archivos propensas a path traversal.2 Cuatro de cada cinco servidores MCP permiten que un atacante lea archivos a los que no debería tener acceso.
Cinco patrones de ataque
La oleada de CVEs en 60 días reveló cinco patrones recurrentes:2
1. Envenenamiento de herramientas. Instrucciones maliciosas incrustadas en las descripciones de herramientas MCP. El agente lee la descripción, confía en ella y sigue las instrucciones ocultas usando sus propias herramientas autorizadas. La herramienta envenenada nunca se ejecuta —las herramientas legítimas del agente llevan a cabo el ataque. Cubrimos este patrón en la paradoja de desplegar y defender: la confianza es transitiva, la auditoría no.
2. Inyección de prompts vía datos externos. Los servidores MCP que obtienen contenido de issues de GitHub, mensajes de Slack, correos electrónicos o páginas web traen texto controlado por el atacante al contexto del agente. La inyección no apunta al servidor MCP —apunta al agente que lee la salida del servidor. La superficie de ataque de exfiltración silenciosa es el caso general; los servidores MCP son el vector más común.
3. Bypass de confianza después de la aprobación inicial. Claude Code te pide aprobar un servidor MCP la primera vez. Después de eso, las definiciones de herramientas pueden cambiar entre sesiones sin volver a solicitar aprobación en todos los casos —un servidor que era seguro al momento de instalarlo puede comportarse de manera diferente al actualizarse. La brecha de revalidación es estructural: el protocolo no requiere firma criptográfica de las descripciones de herramientas.2
4. Compromiso de la cadena de suministro. Servidores MCP con puertas traseras publicados en registros, incluyendo paquetes que suplantan la identidad de servidores legítimos. El mismo patrón de cadena de suministro que documentamos en la cadena de suministro es la superficie de ataque, aplicado al ecosistema MCP.
5. Exposición entre inquilinos. Entornos de hosting compartido donde múltiples servidores MCP pueden interceptar las llamadas de función de otros antes de su ejecución.4 Los límites de aislamiento que parecen sólidos desde fuera se desmoronan cuando múltiples servidores comparten un proceso o contenedor.
El patrón SSRF
Tres vulnerabilidades SSRF en tres servidores MCP diferentes aparecieron en un solo escaneo esta semana:3
- n8n-mcp: SSRF autenticado vía inyección de host de instancia
- mcp-from-openapi: SSRF vía valores
$refen especificaciones OpenAPI — una especificación maliciosa con URLs internas hace que el servidor obtenga esos recursos durante la inicialización - stata-mcp: Validación insuficiente de URLs proporcionadas por el usuario
El SSRF en servidores MCP es particularmente peligroso porque el servidor típicamente tiene acceso de red que el agente no tiene. Así es como una sola especificación OpenAPI maliciosa se convierte en robo de credenciales:
Paso 1. Un atacante publica un servidor MCP de apariencia legítima que envuelve una API externa. El servidor usa mcp-from-openapi para generar herramientas a partir de una especificación OpenAPI.
Paso 2. La especificación OpenAPI contiene un $ref que apunta a una dirección interna:
components:
schemas:
Config:
$ref: "http://169.254.169.254/latest/meta-data/iam/security-credentials/role-name"
Paso 3. Durante initialize(), el servidor MCP resuelve el $ref obteniendo la URL. El servidor se ejecuta en tu infraestructura —dentro de tu VPC, en tu laptop, en tu contenedor de CI. La solicitud va al endpoint de metadatos de AWS desde una fuente confiable.
Paso 4. El endpoint de metadatos devuelve credenciales IAM temporales: clave de acceso, clave secreta, token de sesión.
Paso 5. El servidor ahora tiene tus credenciales de nube. Puede exfiltrarlas en las respuestas de herramientas, registrarlas en un endpoint externo o usarlas directamente.
El agente nunca hizo nada malicioso. El usuario aprobó el servidor MCP. La especificación OpenAPI se veía normal. La resolución del $ref ocurrió a nivel de biblioteca, por debajo de donde alguien revisa. El SSRF convirtió la posición de red del servidor MCP en la posición de red del atacante.
Microsoft parchó un SSRF crítico en Azure MCP (CVE-2026-26118) en marzo de 2026 — el mismo patrón aplicado a Azure: una vulnerabilidad de elevación de privilegios de alta severidad que podía robar tokens de autenticación y otorgar acceso no autorizado a recursos de Azure.5
Qué hacer
Audita tus servidores conectados. Ejecuta claude mcp list y revisa cada servidor. Compara cada uno con la base de datos del proyecto Vulnerable MCP.1 Elimina los servidores que no estés usando activamente.
Fija las versiones de los servidores. Si instalas servidores MCP desde npm o pip, fija la versión. No permitas actualizaciones automáticas. Revisa los changelogs antes de actualizar —el patrón de bypass de confianza significa que una actualización puede cambiar las definiciones de herramientas sin reaprobación.
Agrega hooks de validación de entrada. Un hook PreToolUse en las llamadas a herramientas MCP puede validar entradas antes de que lleguen al servidor:
#!/bin/bash
# .claude/hooks/validate-mcp-input.sh
INPUT_JSON=$(cat)
TOOL_NAME=$(echo "$INPUT_JSON" | jq -r '.tool_name // empty')
# Block MCP tools that accept URLs from passing internal addresses
if echo "$TOOL_NAME" | grep -q "^mcp__"; then
TOOL_INPUT=$(echo "$INPUT_JSON" | jq -r '.tool_input | tostring')
if echo "$TOOL_INPUT" | grep -qiE '(169\.254\.|10\.|172\.(1[6-9]|2|3[01])\.|192\.168\.|localhost|127\.0\.0\.1|metadata\.google|169\.254\.169\.254)'; then
echo "Blocked: MCP tool input contains internal/metadata address" >&2
exit 2
fi
fi
exit 0
Considera el aislamiento de transporte. Los servidores MCP por HTTP se ejecutan en su propio proceso con límites de red explícitos. Los servidores stdio comparten el contexto de proceso del agente. Ningún transporte es inherentemente seguro —el factor más importante es si el servidor tiene acceso a credenciales, redes internas o rutas de archivos sensibles. Elige el transporte que te brinde los límites de aislamiento que tu modelo de amenazas requiere.
Monitorea la base de datos. El proyecto Vulnerable MCP en vulnerablemcp.info es lo más cercano a un rastreador de CVEs para el ecosistema MCP. Consúltalo antes de instalar nuevos servidores.
El ecosistema MCP está creciendo rápido —más de 3.000 servidores indexados y 100 millones de descargas mensuales.6 La postura de seguridad no está creciendo al mismo ritmo. Cincuenta vulnerabilidades en una base de datos que no existía hace un año. El protocolo no es el problema. Las implementaciones sí lo son.
Fuentes
Preguntas frecuentes
¿Los servidores MCP incluidos con Claude Code están afectados?
Las vulnerabilidades afectan principalmente a servidores MCP construidos por la comunidad y de terceros, no a la infraestructura MCP central de Claude Code. No obstante, la herramienta oficial MCP Inspector sí tenía una vulnerabilidad de RCE, así que “oficial” no significa “inmune.”
¿Debería dejar de usar servidores MCP?
No. MCP es una capa de integración poderosa. Pero trata cada servidor MCP como un límite de confianza. Audita lo que tienes conectado, fija versiones y agrega hooks de validación de entrada para servidores que acepten URLs, rutas de archivos o comandos de shell.
¿Cómo verifico si mis servidores MCP son vulnerables?
Ejecuta claude mcp list para ver tus servidores conectados. Compara cada uno con la base de datos del proyecto Vulnerable MCP. Revisa el repositorio de GitHub del servidor en busca de avisos de seguridad recientes.
-
The Vulnerable MCP Project. Base de datos integral de seguridad MCP. 50 vulnerabilidades documentadas, 13 críticas, 32 investigadores contribuyentes. Cubre Anthropic, GitHub, Microsoft, Docker, Kubernetes y más de 20 servidores comunitarios. ↩↩↩↩↩↩
-
MCP Security 2026: 30 CVEs in 60 Days. Marzo de 2026. Más de 30 CVEs en enero-febrero de 2026. El 82% de 2.614 implementaciones tenía path traversal. El 38-41% carecía de autenticación. Inyección exec/shell: el 43% de todas las vulnerabilidades reportadas. ↩↩↩↩
-
GitHub Security Advisories, 8 de abril de 2026: GHSA-4ggg-h7ph-26qr (n8n-mcp SSRF), GHSA-v6ph-xcq9-qxxj (mcp-from-openapi SSRF), GHSA-jpcj-7wfg-mqxv (stata-mcp validación). ↩↩
-
MCP and Its Critical Vulnerabilities. Strobes, 2026. Escenarios de ataque incluyendo inyección en WhatsApp, ofuscación Unicode, interferencia entre servidores y recomendaciones prácticas de defensa. ↩
-
Microsoft Patches Critical Azure MCP SSRF (CVE-2026-26118). Marzo de 2026. Elevación de privilegios de alta severidad vía SSRF en Azure MCP Server Tools. ↩
-
Ecosistema MCP. Más de 3.000 servidores indexados, más de 100 millones de descargas mensuales a marzo de 2026. ↩