MagnoSec
Representación 3D de un cerebro digital con circuitos representando IA y ataques de envenenamiento de memoria MCP sin autenticación

MagnoSec Blog

Ruflo MCP Permite a Atacantes Ejecutar Comandos y Envenenar la Memoria de Agentes de IA sin Autenticación

Por Equipo MagnoSec7 min de lectura

Ruflo MCP bajo ataque: RCE sin autenticación + envenenamiento de memoria de IA en un solo exploit

El ecosistema de agentes de inteligencia artificial tiene un nuevo vector de ataque crítico, y esta vez el objetivo no es el modelo de lenguaje sino el protocolo que lo conecta con el mundo exterior. Ruflo MCP (Model Context Protocol) es una implementación del estándar MCP que permite a agentes de IA —como Claude, GPT o modelos open-source— interactuar con herramientas externas: ejecutar comandos en el sistema, leer archivos, consultar APIs, acceder a bases de datos. La vulnerabilidad descubierta permite a un atacante sin autenticación inyectar comandos maliciosos que el agente de IA ejecuta con los privilegios del proceso MCP, y lo que es más grave, envenenar la memoria contextual del agente de forma persistente. La memoria envenenada sobrevive a reinicios del agente y afecta a todas las conversaciones futuras. Esto significa que un ataque puntual contra el endpoint MCP puede convertir permanentemente un agente de IA legítimo en un caballo de Troya que ejecuta comandos maliciosos mientras aparenta funcionar con normalidad. Es el equivalente digital de implantar un falso recuerdo en un empleado que le hace filtrar información confidencial cada vez que se le pregunta por un tema concreto. Y lo hace sin que el usuario del agente vea nada extraño en la interfaz de chat.

Model Context Protocol (MCP): el protocolo que conecta agentes de IA con herramientas externas y sus riesgos de seguridad

Model Context Protocol (MCP) es el estándar emergente para conectar agentes de IA con el mundo. Funciona como un middleware: el agente de IA no ejecuta comandos directamente en el sistema operativo, sino que envía solicitudes a un servidor MCP, que las traduce en acciones concretas (ejecutar un comando, leer un archivo, llamar a una API) y devuelve el resultado al agente. MCP mantiene un contexto de memoria donde almacena información relevante para las conversaciones del agente: preferencias del usuario, resultados de consultas anteriores, configuraciones. Esta memoria permite al agente recordar información entre conversaciones, personalizar respuestas y aprender del historial de interacciones. El problema de seguridad fundamental es que el endpoint MCP está expuesto en red y, en muchas configuraciones, no requiere autenticación —se asume que solo el agente de IA legítimo va a conectarse—. Pero un atacante que alcance la red donde se ejecuta MCP puede enviar solicitudes directamente al endpoint, saltándose al agente de IA. No necesita engañar al modelo de lenguaje con prompt injection: simplemente habla directamente con el protocolo que ejecuta las acciones. Es como tener una cerradura sofisticada en la puerta principal pero dejar la ventana del sótano abierta. El atacante no intenta forzar la cerradura: entra por la ventana.

La cadena de ataque: de la inyección de comandos al envenenamiento persistente de la memoria del agente

La cadena de ataque de Ruflo MCP tiene dos fases devastadoras. Fase 1 —inyección de comandos—: el atacante envía una solicitud HTTP al endpoint MCP con un payload malicioso que explota una validación insuficiente en los parámetros de entrada. El endpoint MCP procesa la solicitud y ejecuta el comando inyectado con los privilegios del proceso MCP. Esto permite al atacante ejecutar comandos en el servidor que aloja MCP, acceder a archivos del sistema, consultar bases de datos conectadas, o instalar malware. Fase 2 —envenenamiento de memoria—: el atacante escribe información maliciosa en la memoria contextual de MCP. Esta memoria es persistente: se almacena en disco y se carga cada vez que MCP se reinicia. Una vez envenenada, la memoria instruye al agente para que, por ejemplo, incluya información falsa en todas sus respuestas sobre un tema específico, envíe copias de todas las conversaciones a un servidor externo, o ignore comandos de seguridad del administrador. El envenenamiento es sigiloso porque el agente sigue funcionando aparentemente con normalidad —solo que ahora tiene un 'recuerdo' implantado por el atacante que condiciona su comportamiento—. Es la diferencia entre hackear un ordenador y hackear la memoria del administrador que lo gestiona.

El impacto: agentes de IA que ejecutan comandos maliciosos, filtran datos y toman decisiones basadas en memoria envenenada

El impacto de este ataque redefine lo que significa 'comprometer un sistema'. Un agente de IA con la memoria envenenada se convierte en un insider threat automatizado. Si el agente tiene acceso a datos corporativos, el atacante puede instruirlo para que, cada vez que procese un documento que contenga ciertas palabras clave, envíe una copia a un servidor externo. Si el agente gestiona infraestructura (DevOps, MLOps), el atacante puede instruirlo para que ignore alertas de seguridad, despliegue configuraciones vulnerables, o cree cuentas de acceso para el atacante. Si el agente interactúa con clientes (soporte, ventas), el atacante puede instruirlo para que proporcione información falsa, derive clientes a sitios de phishing, o recolecte datos personales. Y todo esto ocurre sin modificar el código del agente, sin alterar el modelo de IA, sin dejar rastros en los logs de la aplicación. El atacante ha modificado los recuerdos del agente, no su programación. La detección es extremadamente difícil porque el comportamiento del agente, aunque malicioso, es coherente con su memoria envenenada —el agente 'cree' que está haciendo lo correcto basándose en los recuerdos que tiene—. Lo que para un observador externo es un comportamiento malicioso, para el agente es simplemente seguir sus instrucciones basadas en su memoria. La distinción entre 'el agente fue hackeado' y 'el agente está funcionando según su memoria' se difumina.

Cómo MagnoSec está auditando sistemas de IA, pipelines de ML y agentes autónomos

En MagnoSec hemos incorporado la auditoría de sistemas de IA, agentes autónomos y protocolos de conexión como MCP a nuestro catálogo de servicios de seguridad ofensiva. Evaluamos la seguridad de los endpoints MCP expuestos: ¿requieren autenticación? ¿Validan correctamente los parámetros de entrada? ¿La comunicación entre el agente y MCP está cifrada y autenticada? Analizamos la persistencia de la memoria: ¿la memoria del agente puede ser modificada por un tercero sin autenticación? ¿Los datos de la memoria están firmados criptográficamente para detectar manipulaciones? Probamos si es posible inyectar comandos o envenenar la memoria a través de los canales de comunicación del agente. Y evaluamos el sandboxing: ¿el agente se ejecuta en un entorno aislado donde un compromiso no afecta al resto de la infraestructura? ¿El agente tiene acceso solo a los recursos que necesita y nada más? Un agente de IA que ejecuta comandos en el sistema operativo sin sandboxing es un riesgo inaceptable en 2026. La tecnología de agentes autónomos está avanzando más rápido que nuestra comprensión de sus implicaciones de seguridad. Las auditorías de seguridad de IA ya no son una especialización de nicho: son una necesidad para cualquier organización que despliegue agentes en producción.

Defensa: actualización de MCP, validación de entradas, sandboxing de agentes y monitorización de comportamiento anómalo de IA

La defensa contra ataques a agentes de IA y protocolos MCP requiere un enfoque de seguridad en capas adaptado a este nuevo paradigma. Capa 1 —autenticación obligatoria en MCP—: ningún endpoint MCP debe aceptar conexiones sin autenticación. Implementa TLS mutuo (mTLS) entre el agente y MCP, o tokens de API con rotación periódica. Si MCP está expuesto en red, asume que va a ser atacado. Capa 2 —validación estricta de entradas—: todo parámetro recibido por MCP debe ser validado contra una lista blanca de valores permitidos. Nunca pases parámetros del agente directamente a una shell del sistema. Utiliza APIs tipadas que no permitan inyección de comandos. Capa 3 —firma criptográfica de la memoria—: la memoria contextual del agente debe estar firmada criptográficamente para detectar cualquier modificación no autorizada. Si la firma no coincide al cargar la memoria, el agente debe rechazarla y alertar al administrador. Capa 4 —sandboxing—: el proceso MCP y el agente deben ejecutarse en contenedores aislados con acceso mínimo al sistema de ficheros y a la red. Si un atacante compromete MCP, no debe poder pivotar hacia otros sistemas. Capa 5 —monitorización de comportamiento—: implementa detección de anomalías específica para agentes de IA. Monitoriza los comandos ejecutados, las APIs consultadas y los datos accedidos, y alerta sobre desviaciones del comportamiento normal. Un agente que de repente empieza a leer archivos que nunca había leído o a conectarse a IPs externas que nunca había contactado está comprometido, independientemente de lo que digan sus logs. La IA no es mágica: es software. Y como todo software, necesita ser auditada, securizada y monitorizada. La diferencia es que cuando un agente de IA es comprometido, no solo tienes un servidor hackeado: tienes un empleado digital que trabaja para el atacante.

Temas tratados

MCP · IA agente · envenenamiento memoria · RCE · Ruflo · AI security · prompt injection · agentes autónomos

¿Quieres saber si tu empresa tiene estas vulnerabilidades?

Auditamos la seguridad de empresas de toda España con alcance cerrado por escrito, informe técnico y ejecutivo, y retest de las correcciones. Presupuesto en 24 horas y primera consultoría sin coste. Si no sabes por dónde empezar, haz el test de seguridad de 15 preguntas.

¿Quieres más información?