Un fallo crítico en Cohere AI Terrarium permite saltarse el sandbox y ejecutar código como root

Wait 5 sec.

Una vulnerabilidad crítica en Cohere AI Terrarium permite salir del entorno aislado y ejecutar código arbitrario con privilegios de root dentro del contenedor, alcanzando el proceso host de Node.js. El fallo, identificado como CVE-2026-5752 y con CVSS 9.3, es especialmente relevante en despliegues que ejecutan código no confiable enviado por usuarios.Los servicios que ofrecen ejecución de código ‘segura’ en backend suelen apoyarse en una combinación de sandboxing, WebAssembly y contenedores Docker para separar el código no confiable del resto de sistemas. En ese contexto, Cohere AI Terrarium se planteó como un entorno para ejecutar código, a menudo generado o asistido por un LLM, recibiéndolo por HTTP y devolviendo artefactos de salida producidos por esa ejecución. El problema es que una vulnerabilidad recién divulgada rompe precisamente la promesa central del aislamiento.El defecto, registrado como CVE-2026-5752, permite un escape de sandbox aprovechando una travesía de la cadena de prototipos de JavaScript en el entorno de Pyodide sobre WebAssembly. En términos prácticos, un atacante con capacidad de enviar código para ejecutarse en Terrarium puede manipular objetos del entorno JavaScript para alcanzar constructores peligrosos, como Function constructor, y desde ahí obtener acceso a globalThis. Una vez se llega a ese punto, se abre la puerta a interactuar con internals del entorno de Node.js, incluyendo la posibilidad de llegar a require() y cargar funcionalidades que no deberían estar disponibles para el código ‘encapsulado’.La causa técnica se relaciona con la forma en que Terrarium construye ciertos objetos globales en su configuración, concretamente en service.ts al preparar jsglobals. En lugar de usar objetos sin prototipo o estructuras endurecidas, se utiliza un objeto literal para simular document, que hereda de Object.prototype. Ese detalle facilita que el atacante encadene accesos a propiedades como proto y patrones del tipo constructor.constructor hasta lograr un salto fuera del modelo de seguridad previsto.El impacto es alto porque la explotación puede traducirse en ejecución de código arbitrario con privilegios de root en el proceso host de Node.js, además de ejecución de comandos del sistema como root dentro del contenedor. Con ese nivel de control, es factible leer o modificar ficheros sensibles del entorno, por ejemplo /etc/passwd, y exfiltrar variables de entorno que a menudo contienen credenciales, tokens o endpoints internos. También aumenta el riesgo de movimiento lateral dentro de la red accesible desde el contenedor, alcanzando potencialmente bases de datos u otras APIs internas que se daban por protegidas al estar ‘detrás’ del sandbox.Aunque el hallazgo se centra en el escape del sandbox y el control dentro del contenedor, existe además la posibilidad de un escape del contenedor o escalado adicional en función de cómo esté desplegado Terrarium, qué capabilities tenga el contenedor, si se ejecuta en modo privilegiado, si hay montajes de volúmenes sensibles, o qué controles imponga el runtime. El escenario varía por despliegue, pero el riesgo subyacente es claro: cuando el código no confiable obtiene ejecución como root en un contenedor, cualquier error de configuración o superficie extra en el host puede convertir un incidente aislado en una intrusión mayor.En cuanto a condiciones de explotación, se trata de un ataque que requiere acceso al servicio para ejecutar código, no necesita interacción adicional del usuario ni privilegios especiales dentro de la aplicación, lo que encaja con el modelo típico de plataformas de ejecución bajo demanda. Además, el propio diseño de Terrarium indica que ‘recicla’ el entorno de Pyodide en cada invocación y que no mantiene estado entre llamadas, lo que ayuda frente a persistencia dentro del runtime, pero no mitiga un escape que permite ejecutar comandos del sistema y acceder a secretos disponibles en el contenedor.La situación se complica porque, en el momento de la divulgación coordinada, no se indicaba un parche disponible y el repositorio cohere-ai/cohere-terrarium aparece archivado, con la advertencia de que el proyecto ya no tiene soporte y que quien quiera continuar debe bifurcarlo. Esto obliga a las organizaciones a priorizar controles compensatorios y endurecimiento del despliegue. Entre las medidas más inmediatas está deshabilitar temporalmente cualquier funcionalidad que permita a usuarios enviar o ejecutar código en Terrarium si es viable, o restringirla de forma drástica a usuarios y servicios estrictamente autorizados.Si el servicio debe seguir funcionando, es clave reducir el impacto potencial: ejecutar el proceso host sin root, aplicar el principio de mínimos privilegios, eliminar capacidades innecesarias del contenedor, y reforzar el aislamiento envolviendo Terrarium en una capa adicional, por ejemplo una máquina virtual dedicada o un dominio separado. En paralelo, conviene segmentar la red para limitar el alcance a otros servicios, y revisar qué destinos puede alcanzar el contenedor a nivel de egress.En detección y respuesta, es útil instrumentar alertas sobre patrones típicos de esta clase de ataques, como accesos a proto, usos de constructor.constructor, o señales de creación de procesos y ejecución de comandos desde el contexto del sandbox. Complementariamente, un WAF puede ayudar a bloquear tráfico sospechoso hacia el endpoint HTTP que recibe código y ficheros de entrada, pero debe acompañarse de controles de autorización estrictos, límites de recursos y registros detallados de ejecuciones. También se recomienda monitorizar el contenedor para identificar comportamientos anómalos, como lecturas inesperadas de rutas sensibles o conexiones hacia servicios internos.A medio plazo, si se decide mantener Terrarium mediante un fork, una línea de mitigación técnica es intentar bloquear o congelar prototipos en el entorno de JavaScript cuando el diseño lo permita, para dificultar la manipulación de la cadena de prototipos. En cualquier caso, esta vulnerabilidad refuerza una lección recurrente en plataformas de ejecución: un sandbox basado en WASM y contenedores no debe considerarse un perímetro suficiente por sí solo, y menos aún si el componente host corre con privilegios elevados y expone superficies como Node.js a código no confiable.Más informaciónThe Hacker News – Cohere AI Terrarium Sandbox Flaw Enables Root Code Execution, Container Escape : https://thehackernews.com/2026/04/cohere-ai-terrarium-sandbox-flaw.htmlCERT Coordination Center (CERT/CC) – Vulnerability Note VU#414811 : https://kb.cert.org/vuls/id/414811?utm_source=openaiNVD – CVE-2026-5752 Detail : https://nvd.nist.gov/vuln/detail/CVE-2026-5752?utm_source=openaiTenable – CVE-2026-5752 : https://www.tenable.com/cve/CVE-2026-5752SentinelOne – CVE-2026-5752: Terrarium Sandbox Escape RCE Vulnerability : https://www.sentinelone.com/vulnerability-database/cve-2026-5752/GitHub (cohere-ai) – cohere-ai/cohere-terrarium : https://github.com/cohere-ai/cohere-terrariumLa entrada Un fallo crítico en Cohere AI Terrarium permite saltarse el sandbox y ejecutar código como root se publicó primero en Una Al Día.