CVE-2026-39987: Marimo: Pre-Auth Remote Code Execution via Terminal WebSocket Authentication Bypass
(updated )
Marimo (19.6k stars) has a Pre-Auth RCE vulnerability. The terminal WebSocket endpoint /terminal/ws lacks authentication validation, allowing an unauthenticated attacker to obtain a full PTY shell and execute arbitrary system commands.
Unlike other WebSocket endpoints (e.g., /ws) that correctly call validate_auth() for authentication, the /terminal/ws endpoint only checks the running mode and platform support before accepting connections, completely skipping authentication verification.
References
- github.com/advisories/GHSA-2679-6mx9-h9xc
- github.com/marimo-team/marimo
- github.com/marimo-team/marimo/commit/c24d4806398f30be6b12acd6c60d1d7c68cfd12a
- github.com/marimo-team/marimo/pull/9098
- github.com/marimo-team/marimo/security/advisories/GHSA-2679-6mx9-h9xc
- nvd.nist.gov/vuln/detail/CVE-2026-39987
- www.cisa.gov/known-exploited-vulnerabilities-catalog?field_cve=CVE-2025-39987
- www.cisa.gov/known-exploited-vulnerabilities-catalog?field_cve=CVE-2026-39987
- www.sysdig.com/blog/marimo-oss-python-notebook-rce-from-disclosure-to-exploitation-in-under-10-hours
Code Behaviors & Features
Detect and mitigate CVE-2026-39987 with GitLab Dependency Scanning
Secure your software supply chain by verifying that all open source dependencies used in your projects contain no disclosed vulnerabilities. Learn more about Dependency Scanning →