CVE-2026-39987 Marimo 预认证 WebSocket RCE 在本地 Docker 实验环境中的复现与根本原因分析。
本项目聚焦于 CVE-2026-39987,这是 Marimo 中一个与终端 WebSocket 端点 /terminal/ws 相关的预认证远程代码执行漏洞。
Marimo 是一个开源的响应式 Python notebook,允许用户通过 Web 界面编写和执行 Python 代码。由于 notebook 平台可以在服务器端执行代码,诸如终端访问之类的特权功能必须通过适当的身份验证和访问控制来保护。
在存在漏洞的 Marimo 版本中,终端 WebSocket 端点未正确实施身份验证。因此,未认证的用户可能能够访问终端功能,并在 Marimo 运行的环境中执行命令。
本项目的目标是在本地 Docker 实验环境中复现该漏洞,分析根本原因,比较存在漏洞的版本与已修补的版本,并验证修复措施能够防止该问题。
/terminal/ws/terminal/ws 中的根本原因本项目仅供教育目的使用。所有测试都将在本地 Docker 实验环境中进行。