CVE-2026-39987
Acerca de
marimo es un notebook reactivo de Python. Antes de la versión 0.23.0, Marimo tiene una vulnerabilidad de RCE previa a la autenticación. El endpoint WebSocket de terminal /terminal/ws carece de validación de autenticación, lo que permite a un atacante no autenticado obtener un shell PTY completo y ejecutar comandos arbitrarios del sistema. A diferencia de otros endpoints WebSocket (por ejemplo, /ws) que llaman correctamente a validate_auth() para la autenticación, el endpoint /terminal/ws solo comprueba el modo de ejecución y el soporte de plataforma antes de aceptar conexiones, omitiendo por completo la verificación de autenticación. Esta vulnerabilidad está corregida en la 0.23.0.
Análisis del analista Rainforest
marimo es un notebook reactivo de Python, y su endpoint WebSocket de terminal en /terminal/ws omite la autenticación por completo. Mientras que otros endpoints WebSocket como /ws llaman correctamente a validate_auth() antes de aceptar una conexión, /terminal/ws solo comprueba el modo de ejecución y el soporte de plataforma, y luego entrega una conexión al solicitante. Esa conexión es un shell PTY completo, por lo que un atacante no autenticado que pueda alcanzar el endpoint obtiene una terminal interactiva y ejecuta comandos arbitrarios del sistema como el usuario que ejecuta marimo, sin credenciales en ningún paso.
Los servidores de notebooks como marimo tienden a ejecutarse en estaciones de trabajo de desarrolladores, hosts de análisis compartidos y, cada vez más, en interfaces accesibles por red para que los equipos puedan colaborar, y rutinariamente tienen acceso a datos, credenciales y cómputo que hacen valioso un shell en ellos. Un PTY previo a la autenticación es una de las primitivas de compromiso más directas que existen, y requiere solo alcanzabilidad de red al endpoint. Actualice a marimo 0.23.0 o posterior y, mientras tanto, asegúrese de que cualquier instancia de marimo esté vinculada a localhost o colocada detrás de un proxy con autenticación y nunca expuesta a redes no confiables. Cualquier servidor que haya ejecutado una versión vulnerable alcanzable por red debe revisarse en busca de comandos y procesos inesperados.
Referencias
- https://github.com/marimo-team/marimo/commit/c24d4806398f30be6b12acd6c60d1d7c68cfd12a
- https://github.com/marimo-team/marimo/pull/9098
- https://github.com/marimo-team/marimo/security/advisories/GHSA-2679-6mx9-h9xc
- https://www.cisa.gov/known-exploited-vulnerabilities-catalog?field_cve=CVE-2026-39987
- https://www.sysdig.com/blog/marimo-oss-python-notebook-rce-from-disclosure-to-exploitation-in-under-10-hours
CVEs Relacionadas
Preguntas frecuentes
¿Qué es CVE-2026-39987?
marimo es un notebook reactivo de Python. Antes de la versión 0.23.0, Marimo tiene una vulnerabilidad de RCE previa a la autenticación. El endpoint WebSocket de terminal /terminal/ws carece de validación de autenticación, lo que permite a un atacante no autenticado obtener un shell PTY completo y ejecutar comandos arbitrarios del sistema.
¿Qué tan grave es CVE-2026-39987?
CVE-2026-39987 tiene una puntuación base CVSS 3.1 de 9.8, calificada como critical. En el Rainforest Risk Index — que pondera la gravedad junto con lo fácil que es alcanzar la falla y la amplitud de su impacto — obtiene 99 sobre 100, en la banda crítico.
¿Cómo se explota CVE-2026-39987?
Según el vector CVSS (CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H): vector de ataque Red, complejidad de ataque Baja, privilegios necesarios Ninguno, interacción del usuario Ninguna. Impacto en confidencialidad Alto, integridad Alto y disponibilidad Alto.
¿Qué productos afecta CVE-2026-39987?
Los avisos públicos listan como afectados: marimo. Consulta las referencias de esta página para las versiones exactas que confirma cada proveedor.
¿Cómo se corrige CVE-2026-39987?
Aplica la corrección publicada por el proveedor — las referencias de esta página enlazan a los avisos y parches originales. Cuando no se pueda parchear de inmediato, reduce la exposición del componente afectado y vigila los intentos de explotación. Los clientes de Rainforest ven esta vulnerabilidad correlacionada con sus propios activos y priorizada por la exposición real, no solo por la puntuación.
Potencia tu estrategia de seguridad con Rainforest
Descubre vulnerabilidades a tiempo, prioriza amenazas críticas y protege lo que realmente importa. Rainforest simplifica tus operaciones de seguridad, ahorrando tiempo y reduciendo costos, para que te enfoques en lo que impulsa tu negocio.
