gadgetsgenial.es

Etiqueta: MCP

  • Falla de diseño en MCP expone hasta 200,000 servidores

    Anthropic lideró la revolución que supuso usar agentes de IA, mediante la creación de estándar MCP
    Anthropic lideró la revolución que supuso usar agentes de IA, mediante la creación de estándar MCP

    Anthropic vuelve al centro del debate de seguridad tras revelarse una vulnerabilidad sistémica en su Model Context Protocol (MCP), el estándar open-source que conecta aplicaciones de IA con sistemas externos. Investigadores de OX Security afirman que el problema podría permitir el control completo de hasta 200,000 servidores.

    Lo que genera polémica es que Anthropic sostiene que el comportamiento es intencional y esperado y no un bug.


    El problema es la ejecución de herramientas MCP a través de STDIO

    El origen del fallo está en cómo MCP usa STDIO (entrada/salida estándar) para lanzar servidores MCP como subprocesos.

    El flujo actual permite:

    1. Ejecutar comandos del sistema operativo.
    2. Si el comando crea un servidor STDIO, devuelve el handle.
    3. Si el comando es malicioso, el error llega después de ejecutarlo.

    El resultado es que esto permite la ejecución arbitraria de comandos (RCE). Claramente, esto abre acceso potencial a:

    • Datos sensibles
    • Bases internas
    • Claves API
    • Historiales de chat

    El impacto es enorme ya que se han dado más de 150 millones de descargas del SDK y hay miles de servidores públicos afectados, con más de 10 CVEs críticos emitidos.


    Las cuatro grandes vías de ataque

    1) Inyección de comandos (con y sin autenticación)

    Algunos frameworks permiten ejecutar comandos directamente desde input del usuario.

    Proyectos afectados:

    • LangFlow (sin CVE aún)
    • GPT Researcher (CVE-2025-65720)

    Investigadores lograron ejecutar comandos en seis plataformas en producción.


    2) Bypass de “hardening”

    Incluso plataformas que intentaron limitar comandos permitidos fueron vulnerables.

    Ejemplos:

    • Upsonic (CVE-2026-30625)
    • Flowise (GHSA-c9gw-hvqq-f33r)

    El truco en estos casos consiste en inyectar comandos dentro de los argumentos permitidos.


    3) Prompt injection “zero-click” en IDEs de IA

    Herramientas de desarrollo con IA también resultaron vulnerables.

    Entre ellas:

    • Google (Gemini CLI)
    • Microsoft (GitHub Copilot)
    • Cursor y Claude Code

    Los proveedores argumentan que requieren permisos explícitos, pero los investigadores consideran que el riesgo sigue siendo alto.


    4) Ataques vía marketplaces MCP

    Los investigadores lograron “envenenar” 9 de 11 registros MCP con una prueba de concepto. Un solo servidor malicioso podría comprometer miles de equipos de desarrolladores.


    La controversia: ¿bug o decisión de diseño?

    Anthropic confirmó que no cambiará la arquitectura del protocolo ya que su postura es que:

    • El modelo STDIO es un “default seguro”.
    • La sanitización de inputs es responsabilidad del desarrollador.

    Tras el informe, la empresa solo añadió una advertencia en su política de seguridad recomendando usar adaptadores STDIO “con cautela”.

    Los investigadores discrepan. Según ellos, un cambio a nivel protocolo podría proteger automáticamente a millones de usuarios. A todas luces, tienen razón, aunque esto forzaría a los desarrolladores a actualizar la librería en los programas clientes de MCP y en los servidores.


    Cómo proteger la infraestructura MCP ahora mismo

    Si usas MCP mediante STDIO, las recomendaciones urgentes son:

    Trata toda configuración externa como no confiable

    • Bloquea input del usuario hacia configuraciones de ejecución.

    No expongas servicios al internet público

    • Especialmente herramientas conectadas a APIs o bases de datos.

    Ejecuta servicios en sandbox

    • Sin acceso completo al disco o shell.

    Usa solo repositorios oficiales

    • Evita registros MCP no verificados.

    Monitorea invocaciones de herramientas

    • Detecta exfiltración de datos o tráfico sospechoso.

    Actualiza o aísla servicios vulnerables

    • Si no hay parche disponible, desactívalos.

    Sin embargo, la preocupación de los investigadores podría ser excesiva. El protocolo STDIO está pensado desde el inicio como un modo sencillo de crear prototipos para los desarrolladores, no para ponerlo tal cual en producción. Quienes lo hayan hecho, lo hicieron por pereza o desconocimiento, ya que el mismo protocolo ofrece otros mecanismos seguros para conectarse a servidores MCP usando protocolos de autenticación.

    Si usas un programa como LocalIntelligence en macOS, puedes conectarte a un servidor MCP no solo mediante STDIO sino también a través de TCP/IP.

    Esto es por lo tanto una llamada de atención a los desarrolladores para que solo usen STDIO durante la fase de desarrollo y nunca en producción.