HackerNews

HackerNews
OpenCode 漏洞允许恶意 MCP 服务器在 Windows 和 WSL 上于登录期间执行代码

OpenCode 漏洞允许恶意 MCP 服务器在 Windows 和 WSL 上于登录期间执行代码

给文章评分:

OpenCode AI 编码智能体中的一个漏洞允许恶意或被劫持的 MCP 服务器在开发者登录时于其 Windows 或 WSL 机器上运行代码。OpenCode 连接 MCP(Model Context Protocol)服务器以添加外部工具,而此类代码将以开发者自身的访问权限运行。

OpenCode 背后的公司 Anomaly 于 9 月 28 日在 1.18.33 版本中修复了该漏洞。它未申请 CVE 或发布安全公告,因此漏洞扫描器不会标记仍面临风险的版本:1.0.137 至 1.18.32。

在该登录过程中,服务器本身提供用户被导向的网址,即 OAuth 的"授权端点"。在 Windows 和 WSL 上,OpenCode 将该地址交给一个辅助程序在浏览器中打开。该辅助程序围绕该地址构建 PowerShell 命令而未对其进行转义,因此一个被编写为携带 PowerShell 命令的地址将执行该命令。

浏览器步骤仅在开发者通过运行 opencode mcp auth 或发出匹配请求来启动登录时才会运行。配置好服务器或打开会话并不会触及它。

攻击者需要控制开发者已添加的远程 MCP 服务器,而该服务器不必从一开始就是恶意的。后来被接管的服务器,或易主的域名,都可能携带相同的地址。

发现并披露该漏洞的 Pillar Security 于 10 月 19 日公布,将其评为严重,建议的严重性评分为 10 分中的 9.8 分。

该漏洞影响 Windows 和 Windows Subsystem for Linux(WSL)上的 OpenCode。macOS 和 Linux 不受影响,因为 OpenCode 在这些系统上打开浏览器时不会将地址通过 shell 传递。

OpenCode 将该修复作为常规更改发布。承载该修复的拉取请求被描述为浏览器启动代码的重构,它和发布说明均未提及安全漏洞。

Anomaly 未申请 CVE 或发布公告。其安全政策称,用户配置的 MCP 服务器"在我们的信任边界之外"。

Pillar 于 8 月 29 日私下报告了该漏洞,后来要求 Anomaly 重新考虑并申请 CVE。据 Pillar 称,Anomaly 的答复是恶意 MCP 服务器不在其威胁模型之内。

由于没有 CVE,该漏洞不会出现在扫描器或依赖告警中,因此查找受影响的安装意味着直接检查 OpenCode 版本。Anomaly 今年已为其他 OpenCode 代码执行漏洞发布过公告,包括一个在 8 月修复的漏洞。

同类漏洞此前也曾出现过。2025 年 7 月,mcp-remote 代理携带了一个几乎相同的缺陷,其中恶意服务器的授权端点到达了命令行。它被分配为 CVE-2025-6514。

OpenCode 的浏览器辅助程序是一个广泛使用的名为 open 的包。其 Windows 行为曾在 2023 年被报告为命令注入风险,并在 open 的 11 版本中修复,但 OpenCode 一直停留在较旧的版本上。

此类漏洞的常规防御是检查地址是否使用 HTTP 或 HTTPS。这在此处无济于事,因为攻击使用的是普通的 HTTPS 地址。OpenCode 也添加了该检查,但漏洞是通过将其更新到修复版本才得以关闭的。

该怎么做

任何在 Windows 或 WSL 上运行 OpenCode 的人都应升级并检查其连接了哪些服务器。

  • 升级到 OpenCode 1.18.33 或更高版本。
  • 如果暂时无法升级,请从 OpenCode 配置中移除任何未经审查的远程 MCP 服务器。
  • 运行 opencode mcp list 查看配置了哪些服务器。

Pillar 报告没有迹象表明该漏洞已被用于攻击,也未发布任何用于检查过去是否被利用的指标。该漏洞与大约同一时间披露的 OpenCode 托管 Console 遭入侵事件无关,后者可能暴露了部分用户存储的 OpenAI、Anthropic 和 Google API 密钥。





消息来源:thehackernews.com;
本文由 HackerNews.cc 翻译整理,封面来源于网络;
转载请注明“转自 HackerNews.cc”并附上原文
分享到:
hackernews

hackernews

该作者暂无简介