Investigadores de ciberseguridad han alertado sobre una vulnerabilidad de severidad máxima que afecta a Ruflo, un proyecto de código abierto para orquestar agentes de IA. En despliegues con configuración por defecto, el problema permite Ruflo RCE sin autenticación: un atacante remoto puede ejecutar comandos, acceder a información sensible y alterar la memoria del sistema.
La falla fue registrada como CVE-2026-59726 con una puntuación CVSS de 10.0. Según el análisis, impacta todas las versiones anteriores a 3.16.3 y se vinculó con la posibilidad de comprometer todo el entorno que expone el servicio afectado.
Qué es Ruflo y por qué el fallo es especialmente peligroso
Ruflo funciona como una plataforma para coordinar múltiples agentes y flujos de trabajo autónomos. Su enfoque permite desplegar enjambres de agentes, ejecutar tareas conversacionales y administrar una memoria persistente para guiar el comportamiento de la IA.
El proyecto integra un puente basado en Model Context Protocol (MCP), que sirve como canal para que componentes del sistema llamen herramientas. El problema reportado se centra en cómo ese puente queda accesible desde la red bajo ciertas condiciones.
El corazón del problema: un puente MCP expuesto sin autenticación
De acuerdo con los investigadores, la parte crítica del incidente no está en una lógica “oculta”, sino en la exposición del servicio. En el caso analizado, el archivo de configuración docker-compose.yml se encontró configurado para enlazar el puerto 3001 en 0.0.0.0 por defecto, es decir, en todas las interfaces de red.
La exposición real dependerá de reglas del firewall, grupos de seguridad y la segmentación de red. Aun así, el escenario descrito es claro: si la instancia es alcanzable por la red, puede explotarse completamente sin autenticación.
Cómo se materializa la explotación: POST remoto que permite ejecutar herramientas
El equipo describió que un atacante podía enviar una petición HTTP POST hacia el servicio del puente MCP para invocar el mecanismo de herramientas y, en particular, la función encargada de ejecutar comandos del sistema.
En esencia, con una sola llamada remota el atacante puede activar la ruta que conecta tools/call con terminal_execute. En los análisis se indica que esto lleva a obtener ejecución de código a distancia (RCE) dentro del contenedor del puente.
Ejecutar un comando no es el final: el acceso al entorno del contenedor abre la puerta a la extracción de secretos y a la manipulación del estado persistente de la plataforma.
Qué puede hacer un atacante después de lograr la RCE
Una vez que la intrusión alcanza el contenedor del puente, el impacto no se limita a “probar” la vulnerabilidad. Los investigadores señalan varias capacidades que potencian el compromiso total del despliegue.
- Robo de claves de API: Ruflo usa credenciales para comunicarse con proveedores de modelos de lenguaje; un atacante puede extraerlas desde el entorno del contenedor.
- Lectura de conversaciones: el sistema almacena conversaciones, y el atacante podría acceder a ese contenido.
- Alteración de la memoria: al interferir con la memoria persistente, el atacante puede influir respuestas futuras del sistema.
- Persistencia: se menciona la posibilidad de desplegar una “carga” maliciosa en el directorio /app para mantener efectos más allá del acceso inicial.
En otras palabras, el comando ejecutado funciona como un “paso intermedio” hacia una toma de control más amplia: robo de credenciales, manipulación del comportamiento del agente y reuso persistente para seguir afectando a usuarios posteriores.
Envenenamiento de memoria de IA: por qué afecta a usuarios futuros
Un aspecto especialmente preocupante es el envenenamiento de memoria. Si un atacante logra escribir instrucciones maliciosas dentro de la memoria persistente del sistema, puede condicionar cómo la IA responde a los usuarios en el futuro.
El análisis advierte que esto puede ocurrir incluso cuando la intrusión original ya no esté activa. La plataforma conservaría patrones o entradas alteradas, guiando el comportamiento posterior del modelo.
En el informe se destaca que, combinado con la RCE, el atacante puede introducir patrones en el almacén de aprendizaje de la plataforma (mencionado como AgentDB) para dirigir las salidas futuras.
Detalles del alcance y versiones afectadas
La vulnerabilidad CVE-2026-59726 tiene severidad máxima (CVSS 10.0) y afecta a todas las versiones de Ruflo anteriores a 3.16.3.
La descripción del fallo en la base de National Vulnerability Database (NVD) indica que, antes de la corrección, los endpoints del puente MCP (por ejemplo POST /mcp y POST /mcp/:group) podían invocarse sin autenticación. Eso permitía invocar tools/call y alcanzar terminal_execute, obteniendo acceso al entorno del contenedor para leer credenciales y envenenar la memoria persistente.
Respuesta y corrección: qué cambió en la versión 3.16.3
Tras el reporte responsable, el 30 de junio de 2026 se introdujo una corrección en un plazo relativamente corto por el mantenedor del proyecto, Reuven Cohen.
Entre los cambios descritos en las notas de la versión, destacan los siguientes:
- Enlace del puente MCP a la interfaz loopback por defecto, reduciendo el acceso desde redes externas.
- Control del uso de terminal_execute mediante mecanismos en el lado del servidor (se menciona el uso de controles tipo executeTool).
- Autenticación para MongoDB, con el objetivo de mitigar el robo de conversaciones.
- El ajuste de configuración para evitar el enlazado “a todas las interfaces” que facilitaba la exposición remota.
Recomendaciones para administradores: acciones inmediatas
Para operadores que tengan instancias expuestas, los investigadores recomiendan actuar sin demora. Aunque el parche es esencial, también es importante tratar las credenciales como comprometidas si el servicio estuvo accesible.
Se sugieren, en particular, estas medidas:
- Cerrar puertos que den acceso al servicio, específicamente 3001 y el relacionado 27017.
- Rotar todas las claves de API de proveedores de modelos de lenguaje, dado el riesgo de exfiltración.
- Auditar el almacén de patrones utilizado por la memoria persistente (se menciona el almacenamiento de patrones asociado a AgentDB) para detectar entradas inyectadas.
- Revisar MongoDB en busca de señales de manipulación o actividad no autorizada.
Además, el análisis subraya que la remediación no debería limitarse a “actualizar”. También se recomienda reconstruir contenedores desde imágenes limpias y revisar el estado interno de la plataforma.
Lecciones clave sobre seguridad en plataformas de agentes
Este caso pone en evidencia un riesgo recurrente en sistemas de agentes y orquestación: cuando un servicio de herramientas queda accesible desde la red sin controles estrictos, la capacidad de ejecutar comandos y acceder a secretos puede convertirse rápidamente en una intrusión completa.
En entornos donde existen credenciales para proveedores de IA y memoria persistente para guiar resultados, la combinación de RCE y persistencia puede afectar la confianza de todo el sistema, incluso después de cerrar el acceso inicial.
Conclusión
La vulnerabilidad Ruflo RCE sin autenticación (CVE-2026-59726) representa una amenaza seria para organizaciones que ejecutan Ruflo sin las protecciones aplicadas en la corrección. Al exponer el puente MCP sin autenticación en despliegues por defecto, un atacante remoto puede ejecutar comandos, extraer credenciales, leer conversaciones y envenenar la memoria persistente para influir en respuestas futuras.
Si usas Ruflo, la prioridad es actualizar a 3.16.3, cerrar el acceso de red a los puertos relevantes y rotar credenciales. Después, audita la memoria persistente y revisa el estado del sistema para confirmar que no haya cambios maliciosos mantenidos en el tiempo.
Fuente: https://thehackernews.com/2026/07/ruflo-mcp-flaw-lets-unauthenticated.html
