Autor: Evan Harris
Riesgo: Alto
Componente afectado: thirdweb MCP Server

Introducción

Como parte de nuestra investigación continua de seguridad sobre servidores del Model Context Protocol (MCP), identificamos una vulnerabilidad de seguridad significativa en el thirdweb MCP Server que permite transacciones de criptomonedas no autorizadas a través de un acceso de red sin autenticación.

Descripción general de la vulnerabilidad

El thirdweb MCP Server, cuando se inicia con la opción --transport sse, expone una interfaz Server-Sent Events (SSE) sin autenticación que, de forma predeterminada, se vincula a 0.0.0.0:8000. Esta configuración permite a atacantes remotos ejecutar transacciones de criptomonedas no autorizadas desde las carteras de las víctimas.

Detalles técnicos

El problema

Cuando se configura con transporte SSE, el servidor:

  • Se vincula a 0.0.0.0:8000, lo que lo hace accesible desde cualquier host de la red
  • No proporciona ningún mecanismo de autenticación para el endpoint /sse
  • Confía en que cualquier cliente conectado ejecute operaciones privilegiadas, incluidas transacciones de criptomonedas

Escenario de ataque

Un atacante puede:

  1. Descubrir el endpoint expuesto en http://victim_ip:8000/sse
  2. Conectarse usando herramientas MCP estándar como MCP Inspector
  3. Ejecutar transacciones no autorizadas usando la herramienta send_transaction
  4. Transferir criptomonedas desde la cartera de la víctima a su propia dirección

Prueba de concepto

Configuración vulnerable

thirdweb-mcp \
  --transport sse \
  --secret-key=sk_... \
  --engine-url=railway_hosted_engine_url \
  --engine-auth-jwt=eyJ... \
  --engine-backend-wallet-address=0xVictimWallet

Ejecución de transacciones no autorizadas

Usando MCP Inspector, un atacante puede conectarse a http://victim_ip:8000/sse y ejecutar la herramienta send_transaction con los parámetros adecuados para transferir criptomonedas desde la cartera de la víctima a una dirección controlada por el atacante.

[Detalles técnicos omitidos a la espera de la disponibilidad de un parche]

Esto da lugar a la transferencia no autorizada de criptomonedas desde la cartera de la víctima sin ninguna autenticación ni consentimiento del usuario.

Evaluación del impacto

Esta vulnerabilidad permite:

  • El robo directo de criptomonedas de las carteras de las víctimas sin el consentimiento del usuario
  • Una exposición a nivel de toda la red que afecta a cafeterías, oficinas, redes públicas y cualquier red privada comprometida

Factores de riesgo

  • Exposición de red: La vinculación predeterminada a 0.0.0.0 hace que el servicio sea accesible en toda la red
  • Sin autenticación: Cualquier cliente puede conectarse y ejecutar operaciones privilegiadas
  • Objetivo de alto valor: Acceso directo a transacciones de criptomonedas
  • Operación silenciosa: Los ataques pueden producirse sin que el usuario se percate

Mitigaciones recomendadas

Para usuarios (inmediato)

  • Evite usar --transport sse en entornos de red compartidos
  • Use la vinculación a localhost modificando la configuración predeterminada
  • Implemente restricciones a nivel de red (cortafuegos, VPN)

Para desarrolladores (a largo plazo)

  • Cambie la vinculación predeterminada de 0.0.0.0 a 127.0.0.1
  • Implemente autenticación para todas las interfaces de transporte
  • Añada advertencias de seguridad en la documentación y en la salida de la CLI
  • Considere modelos de seguridad específicos para cada transporte

Esta vulnerabilidad se comunicó al equipo de thirdweb mediante prácticas de divulgación responsable. Recomendamos a los usuarios actualizar a la versión más reciente en cuanto haya parches disponibles.

Implicaciones más amplias

Este hallazgo pone de relieve consideraciones de seguridad importantes para los servidores MCP:

  1. Los mecanismos de autenticación son esenciales para cualquier servicio MCP accesible desde la red
  2. Los valores predeterminados de vinculación de red deberían priorizar la seguridad sobre la comodidad
  3. La seguridad de la capa de transporte debería utilizarse para mitigar ataques basados en HTTP
  4. La documentación de seguridad debería describir los riesgos de despliegue

Cronología de la divulgación

  • 2025-05-23: Vulnerabilidad descubierta y comunicada al equipo de thirdweb
  • 2025-07-18: Correo de seguimiento solicitando la confirmación de recepción de la divulgación
  • 2025-09-02: Comprobación final confirmando que el informe se haría público
  • 2025-09-03: Divulgación pública y publicación del aviso de seguridad

Conclusión

La capacidad de realizar transacciones no autorizadas en el thirdweb MCP Server demuestra la importancia crítica de los valores predeterminados seguros en las herramientas de desarrollo que integran blockchain e inteligencia artificial.

A medida que crece la adopción de MCP, implementar medidas de seguridad robustas resulta aún más esencial para proteger los activos digitales de los usuarios y mantener la confianza en el ecosistema.

Las organizaciones y personas que despliegan servidores MCP deberían realizar revisiones de seguridad exhaustivas, aplicar estrategias de defensa en profundidad y mantener la conciencia sobre los riesgos de exposición de red.

Referencias