Pillar Security 本周披露了 TrustFall — 一类影响四个主流 AI 命令行编码工具的漏洞:Anthropic 的 Claude Code、Google 的 Gemini CLI、Cursor CLI 和 GitHub 的 Copilot CLI。共同模式:每个工具读取项目内附带的配置文件,每个工具会启动那些 config 文件指向的辅助程序,每个工具用单个对话框请求权限,大多数情况下默认为「是」。所以能让你 clone 恶意 repository 的攻击者 — 或开外部贡献者的 pull request — 可以通过一个按键在你的机器上触发任意代码执行。Cursor 特定实例有 CVE-2026-26268;更广模式影响四个工具,因为它们都做了同样的信任模型假设:项目附带的 config 文件是可信的。

这最糟版本是在持续集成中发生的事。当 Claude Code 在 GitHub Action 上运行 — Anthropic 发布的官方版本 — 以 headless 模式运行。无终端、无人类、甚至连对话框都不出现。来自陌生人的 pull request shipa 恶意 config 文件,CI runner 拾起它,辅助程序对该 runner 能访问的任何凭证执行:源代码、deploy 密钥、cloud secrets、内部工具。Pillar 的 writeup 走过攻击链如何只需要一个先决条件(AI 代理自主从它不拥有的 repo 执行命令),那正是这些工具设计的工作流。Cursor 的根本原因是 Git 中的特性交互,在 AI 代理在不受信任的 repository 中自主执行 Git 操作的那一刻变得可利用。其他三个工具有同样根本原因的变种:AI 完全照其 config 说的做,config 来自攻击者,模型不审计 config 来源。

更广的要点是 AI-coding-tools 类别不得不艰难学到的东西:代表你执行代码的代理继承你的爆炸半径。如果你有可以部署到生产的凭证,你用的 AI 也有那个凭证。默认为「是」的自动批准对话框是 2000 年代初「你想运行这个 ActiveX 控件吗」提示的安全等价物 — 一个隐藏权限授予的复选框。对随意使用这些工具的开发者(一次性脚本、个人项目),实际风险是受控的。对在工作中使用它们的开发者 — 特别是在 CI 管线中、在带公司凭证的机器上,或在具有特权访问的环境中 — 风险模型需要更新。TrustFall 模式将继续找到变种,直到整个类别从「AI 默认执行,除非你停止它」转变为「AI 默认提议,除非你批准」 — 这更接近 Anthropic 上周用 Claude Code Auto Mode 发布的(此处覆盖),但还不是其他地方的默认。

现在做什么。对 Claude Code 用户:更新到有 CVE 补丁的版本,审计你的 CI 管线是否有任何 AI 代理动作在来自外部贡献者的 PR 触发器上运行,检查在你的 build 期间是否任何项目 config 文件被代理读取。对 Cursor 用户:明确更新过 CVE-2026-26268。对 Gemini CLI 和 Copilot CLI 用户:查看 vendor advisories — 补丁以不同速度推出。对所有使用 AI 编码工具的人:config 文件在 repos 内 ship 的信任模型方便但被妥协;像对待陌生人的邮件附件那样对待不受信任的 repository。更广类别级信号:AI 编码工具安全现在是公认的漏洞类别,研究将继续找到更多。自动批准是要设计出去的失败模式,不是默认开启的特性。