返回
快讯

Amazon Q Developer 缺陷可让恶意 repo 通过 MCP 配置运行代码

Amazon Q Developer 的高严重性漏洞可让恶意 repository 借助 MCP 配置执行命令并窃取开发者的 cloud credentials。Wiz Research 发现,只要在 repo 放入一个 config file,配合 workspace trust,就可能从 git clone 走到 cloud compromise。Amazon 已修补。

CVE-2026-12957CVE-2026-12958CVE-2025-59536CVE-2025-54136CVE-2026-30615

Amazon Q Developer 里的一个高严重性漏洞,能让恶意 repository 运行命令,并窃取开发者的 cloud credentials。攻击路径很短:开发者打开 repo,信任 workspace,剩下的由 Amazon Q 完成。Amazon 已经修补这个问题。

这个问题被追踪为 CVE-2026-12957(CVSS 8.5),漏洞出在 Amazon 的 AI coding assistant 处理 Model Context Protocol(MCP)servers 的方式上。

发现并上报该问题的 Wiz Research 证明,只要在 repo 里放下一个单独的 config file,就足以从 git clone 一路走到 cloud compromise。

攻击是如何运作的

Amazon Q 会从打开的 workspace 读取一个 MCP configuration file,.amazonq/mcp.json,并启动其中定义的 servers。MCP servers 是 AI assistant 可以调用的本地 processes,用来访问 databases、APIs 或 build tools,所以启动一个 server 就等于在机器上运行 commands。

这些 processes 会继承开发者的完整 environment。通常这意味着 AWS keys、cloud CLI tokens、API secrets,以及 SSH agent sockets。

把这两点放在一起,克隆下来的 repo 里只要放一个 file,就可以在附带开发者实时 cloud session 的情况下执行 arbitrary code。不要 password,也不要第二次 sign-in。

在其 proof of concept 里,Wiz 让这个 file 运行 aws sts get-caller-identity,并把输出发送到 attacker server,从而捕获 active AWS session。接下来会发生什么,取决于该开发者的 cloud permissions:可以为 persistence 给 IAM user 加 backdoor、访问 internal services,或者进一步 pivot 到 production。

AWS 和 Wiz 对 consent 步骤的表述并不一样。Amazon 的 advisory 说,用户在提示时必须 trust workspace,而 CVSS 把 user interaction 评为 passive。

Wiz 报告称,在修复前,MCP servers 本身没有单独的 consent 步骤。补丁关闭了这个缺口:现在 Amazon Q 会标记不受信任的 MCP server,并允许开发者在命令执行前拒绝它。

这个漏洞存在于 Language Servers for AWS,也就是驱动 Amazon Q 在 VS Code、JetBrains、Eclipse 和 Visual Studio 中运行的 runtime。四个插件都捆绑了它,所以所有四个都受到了带有旧副本版本的影响。

该怎么做

更新。CVE-2026-12957 已在 Language Servers for AWS 1.65.0 中修复,但 AWS 的 bulletin 建议客户升级到 1.69.0。

这个版本也修复了第二个问题,CVE-2026-12958,这是一个缺失的 symlink check,可能允许在 workspace trust boundary 之外进行 arbitrary file writes。

已修补的插件最低版本:

VS Code: 2.20 或更高

JetBrains: 4.3 或更高

Eclipse: 2.7.4 或更高

Visual Studio toolkit: 1.94.0.0 或更高

language server 会自动更新,除非 network 阻止它,而重新加载 IDE 会拉取最新 build。

目前没有已知的 public exploitation;CISA 的 ADP entry 对 CVE-2026-12957 把它列为 none。Wiz 通过 research 发现这个漏洞,并与 Amazon 协调披露,于 4 月 20 日上报,并在 5 月 12 日看到修复,早于 6 月 26 日的公开文章。

一个模式,不是孤例

Amazon Q 不是第一个在 MCP trust 上出问题的 coding assistant。漏洞并不完全相同,但很相似:project configuration 变成 executable behavior,而围绕这一步转换的 trust checks 一直在失效。

Claude Code(CVE-2025-59536)和 Cursor(CVE-2025-54136)都存在 project-level MCP config,导致 command execution。Windsurf(CVE-2026-30615)则通过不同路径走到同样的结果:attacker-controlled content 重写本地 MCP config,以注册一个 malicious server。

让 project folder 为 AI agent 配置一切的便利性,同时也是 attack surface。repo 携带的 config 是 untrusted input。把它变成一个正在运行的 process,应该需要明确的 yes。