返回首页

Marimo CVE-2026-39987 中的 RCE:9 小时内利用

Marimo 中的严重 RCE CVE-2026-39987 允许通过 /terminal/ws pre-auth root 访问。无 PoC 9 小时内组装利用,Sysdig 记录 honeypot 攻击。建议:更新、密钥轮换、网络防护。

Marimo RCE:无需密码通过 WebSocket 获取 root — 9 小时内利用
Advertisement 728x90

Marimo远程代码执行漏洞:9小时内无公开PoC即遭利用

Marimo版本低于0.23.0时存在严重漏洞CVE-2026-39987(CVSS评分9.3),攻击者可通过WebSocket实现未授权的root shell访问。Sysdig在2026年4月8日发布通告后仅9小时41分钟便捕获到首次攻击。攻击者仅凭技术说明就构建出攻击工具——无需公开的PoC(概念验证)——并在三分钟内从蜜罐中窃取了敏感凭证。

漏洞位于 /terminal/ws 接口:该接口缺少 /ws 接口中存在的 validate_auth() 认证检查。一次简单的WebSocket握手即可获得具备进程级权限的PTTY终端。在默认Docker镜像中,这意味着直接获取root权限,同时暴露存储在 .env 文件中的OpenAI、Anthropic和Google Gemini API密钥。

漏洞技术细节

Marimo使用WebSocket建立持久连接:/ws 处理响应式UI与笔记本单元格,而 /terminal/ws 则驱动嵌入式终端。后者仅校验终端模式标志和平台PTY支持,未进行会话令牌认证

Google AdInline article slot

网络层验证自动生效,因此任何远程客户端均可连接并以服务器权限执行命令。GHSA-2679-6MX9-H9XC将其归类为CWE-306(关键功能缺失认证)。PR #9098 提供的修复方案已补上缺失的 validate_auth() 检查。

Docker部署显著放大风险:容器内进程以root运行,敏感信息存储于 .env~/.aws/credentials。一旦被攻破,将导致对大模型计费系统、模型及数据集的完全控制。

攻击时间线与检测指标

  • 00:00:安全通告发布。
  • 09:41:Sysdig蜜罐首次观测到对 /terminal/ws 的连接。
  • <3分钟:文件系统遍历,读取 .env、SSH密钥、云配置文件。
  • 约1小时:攻击者返回确认持久化访问。

未发现挖矿程序或后门——表明是真实攻击者实施的针对性行动。建议通过代理(如nginx access.log、Caddy stdout)监控WebSocket流量。可疑行为:2026年4月8日后,外部IP地址连接 /terminal/ws

Google AdInline article slot

常见敏感信息泄露路径:

  • .env
  • ~/.ssh/id_rsa~/.ssh/id_ed25519
  • ~/.aws/credentials
  • ~/.config/gcloud/
  • ~/.bash_history

AI工具中的RCE模式

Marimo(GitHub星标2万+)被斯坦福大学、Mozilla AI、OpenAI和黑石集团广泛采用。部署场景涵盖Docker、Hugging Face Spaces及CoreWeave。这已是数月内的第三次RCE事件:

  • Langflow CVE-2026-33017 —— 20小时内被利用。
  • Flowise CVE-2025-59528(CVSS 10.0)—— 补丁发布后立即遭利用。
  • Marimo CVE-2026-39987。

AI工具链(笔记本、工作流)常被视为开发环境,导致网络隔离薄弱、监控缺失、权限过度。现实是:这些系统直接关联生产环境中的模型、数据与计费系统。

Google AdInline article slot

防护措施与审计步骤

立即更新:

  • 运行 marimo --version 确认版本 ≥ 0.23.0。
  • Docker部署:使用非root用户重建镜像。

若您的端口在2026年4月8日后曾对外暴露,极可能已被入侵。请采取以下措施:

  • 立即轮换密钥:大模型API密钥、云凭证、SSH密钥。
  • 审计OpenAI/Anthropic/Google账单日志,排查异常请求。
  • 使用 ss -tlnp | grep LISTEN 检查Marimo、Jupyter或Flowise是否监听0.0.0.0。
  • 启动时添加限制:marimo edit --host 127.0.0.1,并配置反向代理保护(nginx身份验证、Caddy OAuth2)。
  • 通过GitHub安全通告、osv.dev及CISA KEV持续关注最新威胁情报。

核心启示

  • 攻击速度:从通告到成功利用仅9小时41分钟——属于高文档化漏洞的标准响应速度。
  • 默认root权限:Docker版Marimo需显式配置用户,否则默认以root运行。
  • 目标明确.env 文件中的大模型密钥是首要攻击目标。
  • AI-RCE趋势:连续三次RCE事件,凸显生产环境安全实践的紧迫性。
  • 检测重点:在代理日志中监控 /terminal/ws 访问;定期审计大模型使用行为。

— Editorial Team

Advertisement 728x90

继续阅读