AI 编码智能体:攻击者盯上的是凭据,而非模型
2026 年针对 Codex、Claude Code、Copilot 和 Vertex AI 的六个漏洞利用,全都绕过了模型层防御,直击同一个目标——智能体的运行时凭据。其根本原因是身份治理缺口,而非提示词问题。
这是什么?
在截至 2026 年春季的九个月里,六个独立研究团队披露了针对部署最广泛的 AI 编码智能体——OpenAI Codex、Anthropic Claude Code、GitHub Copilot 和 Google Vertex AI——的漏洞利用。VentureBeat 于 2026 年 4 月 30 日发布的综述清晰地揭示了这一模式:这些攻击没有一个针对模型的输出。它们全都直击同一个目标——智能体用于向生产系统进行身份验证的运行时凭据。
这重新界定了威胁。LLM 安全的主流叙事关注的是操纵模型所说的内容(提示词注入、越狱)。而这些披露关注的是智能体所持有的东西:OAuth 令牌、服务账户身份、shell 会话。智能体在没有任何人类会话锚定请求的情况下向 GitHub、Google Cloud 或开发者的机器进行身份验证,构成入侵的是凭据——而非模型。
工作原理
最清晰的例子是 BeyondTrust Phantom Labs 于 2026 年 3 月 30 日披露的 Codex 命令注入漏洞(公告、Decipher)。Codex 的云容器使用嵌入在 git 远程 URL 中的 GitHub OAuth 令牌克隆仓库,而攻击者控制的分支名未经清洗就流入了初始化 shell 脚本。为在 Web 门户中隐藏恶意分支,研究人员在 main 后追加了 94 个表意空格字符(Unicode U+3000),使其显示得与真实分支一模一样。OpenAI 将其评定为严重级 P1,并在 2025 年 12 月 16 日开始披露后,于 2026 年 2 月 5 日完成修复。
据 VentureBeat 报道,相同的模式在各厂商间反复出现:
- Claude Code ——
CVE-2026-25723允许管道命令逃逸写入沙箱(已在 2.0.55 修复);CVE-2026-33068在显示工作区信任对话框之前就加载了.claude/settings.json的权限,因此恶意仓库可设置bypassPermissions而该提示从不出现(已在 2.1.53 修复)。Adversa 另外发现,一旦命令超过 50 个子命令,拒绝规则的执行就会被悄然丢弃(已在 2.1.90 修复)。 - GitHub Copilot ——
CVE-2025-53773:拉取请求描述中的隐藏指令会翻转.vscode/settings.json中的自动批准,从而启用 shell 执行(已在微软 2025 年 8 月更新中修复)。Orca Security 另外通过一个 GitHub issue 从 Codespaces 流程中窃取了特权GITHUB_TOKEN。 - Vertex AI —— Unit 42 发现,附加到每个智能体的默认服务身份(P4SA)拥有过度权限,可触及 Cloud Storage 存储桶以及 Google 自有的 Artifact Registry 仓库。
在每个案例中,模型层或沙箱防御都存在却被绕过;底层凭据仍可访问。
为何重要
AI 编码智能体在很大程度上对身份与访问管理(IAM)不可见。企业会盘点人类身份并轮换其凭据,但大多数企业对这些智能体在安装时获得的 OAuth 令牌和服务账户既没有 CMDB 类别,也没有 PAM 接入,更没有生命周期管控。这些智能体往往持有比开发者更多的权限,因为权限是按速度和广度来配置的。两个放大因素使问题尤为严峻:补丁会在约 72 小时内被逆向工程,而智能体将利用窗口压缩到几秒;同时,流水线从未当作代码处理的不可信输入——分支名、PR 描述、GitHub issue、仓库配置文件——成为了注入面。
防御
缓解措施属于身份治理纪律,而非模型调优:
- 盘点每一个智能体身份。 列出每个 AI 编码智能体(Codex、Claude Code、Copilot、Cursor、Gemini Code Assist、Windsurf)及其持有的确切 OAuth 范围与服务账户。若 CMDB 中没有非人类身份类别,则创建一个。
- 限定为最小权限并轮换。 将 Vertex AI 迁移到自带服务账户模式;将智能体凭据纳入 PAM/IGA,进行轮换,并在编写代码的智能体与部署代码的智能体之间实施职责分离。
- 将智能体身份收敛到人类身份。 代表你行事的智能体绝不应超过你自己的权限,其操作应绑定到经过验证的人类会话。
- 将仓库元数据视为不可信输入。 监控分支名、PR 描述、issue,以及
.vscode/settings.json或.claude/settings.json的更改,以发现权限模式翻转、命令链接和 Unicode 混淆(U+3000)。 - 更新到当前版本。 Claude Code ≥ 2.1.90;核实 Copilot 的 2025 年 8 月修复;确认 Codex 的修复。
状态
| 厂商 / 产品 | 问题 | 披露 | 修复 |
|---|---|---|---|
| OpenAI Codex | 经分支名的命令注入 → 窃取 GitHub 令牌 | 2026 年 3 月 30 日(BeyondTrust) | 2026 年 2 月 5 日修复 |
| Claude Code | 沙箱逃逸 CVE-2026-25723;信任对话框绕过 CVE-2026-33068;50 子命令拒绝规则绕过 | 2026 | 2.0.55 / 2.1.53 / 2.1.90 |
| GitHub Copilot | 经 PR 描述的注入 CVE-2025-53773;Codespaces 令牌窃取(Orca) | 2025–2026 | 2025 年 8 月更新 |
| Google Vertex AI | 默认 P4SA 服务身份权限过度 | 2026(Unit 42) | 自带服务账户 |
主线是:每个厂商都交付了一道防御,而每道防御都在凭据层被绕过。在 AI 编码智能体未能像特权人类身份那样得到同等严格的治理之前,攻击面不是模型——而是智能体。