Claude Code 一次批准泄露 2539 个密钥
时间:2026年11月6日(北京时间;Apiiro 的研究在美国时间 11 月 5 日发布,中文媒体多在 11 月 6 日跟进)
地点:美国,全球公开 GitHub 仓库与开发者本地项目目录
人物:安全公司 Apiiro 的研究员 Shmulik Cohen 与 Matan Giladi;Anthropic Claude Code 团队;63 家受影响组织
事件详情:安全公司 Apiiro 发布研究称,Anthropic 的 AI 编程工具 Claude Code 在用户选择“Yes, and don't ask again”之后,会把整条被批准的命令原文写进项目目录下的 .claude/settings.local.json,其中包含开发者直接敲在命令行里的数据库密码、令牌和云密钥。Apiiro 扫描了 104,185 份该文件的公开副本,覆盖 103,617 个公开仓库,其中约 1.1%(1,122 份)至少含有一个密钥,合计 1,379 个不同密钥。把 Git 历史中的旧版本、211 个 fork 以及团队共享的 .claude/settings.json(76,011 份副本里有 298 份含密钥)一并计入后,总数升至 2,539 个密钥,分布在 1,994 个仓库、63 家组织。泄露的密钥类型包括 379 个数据库密码、43 个公网服务器 SSH 登录凭据、42 个 GitHub、GitLab 与 npm 令牌、23 个 AWS 密钥。Apiiro 称 gitleaks 只标记出 564 个相关文件,TruffleHog 只识别出 643 个,另有 215 份含凭据的文件两个工具都没有抓到;研究还比对了 16 款编程智能体,称 Claude Code 是其中唯一确认会把完整批准命令默认写入项目文件的一个。有一家公司确认自己泄露的密钥当时仍然有效。
背景:这不是一次需要恶意提示词配合的攻击,而是日常授权流程留下的痕迹。Claude Code 官方文档确认,选择“Yes, and don't ask again”会把该命令写进项目本地设置文件;Anthropic 在 Git 仓库里首次写入该文件时,会把路径加入开发者本机的全局 git excludes,但这条保护不会随项目走,团队自己维护的 .gitignore 也不会自动带上它。类似问题早在 2025 年 8 月就有人提交过 issue(anthropics/claude-code#5544),该 issue 在 2026 年 1 月因长期无活动被自动关闭;安全公司 ironPeak 在 2026 年 2 月也公开写过自己遇到同类情况。Apiiro 称,与 Anthropic 安全团队相关的四份报告都被机器人自动关闭,没有得到回复,其中一份 8 月提交的旧报告在 60 天无进展后于 1 月 3 日以“not planned”结案。Apiiro 收集公开 GitHub 数据的窗口是 11 月 1 日至 3 日,并在 11 月 2 日和 3 日通知了受影响组织。
影响:对使用 Claude Code 的团队来说,排查范围要从代码扩展到工具配置。密钥可能随下一次提交进入公开仓库,也可能出现在 npm 包、Docker 镜像、ZIP 压缩包和同步目录中。Apiiro 统计显示,一半受影响项目把该文件留在默认分支上至少 217 天,734 个密钥只存在于已被删除的旧版本里,211 个 fork 复制了同样的凭据,因此只删当前文件并不能止损。GitHub 的建议是先吊销或轮换密钥,再清理仓库历史;用密钥管理器或运行时变量引用可以避免把明文密码写进命令文本,但写成内联环境变量赋值同样会留在命令里。
总结:这次暴露不需要任何黑客配合,一个“不再询问”的开关就够了。开发者最直接的动作是检查仓库里的 .claude/settings.local.json 与 .claude/settings.json,先轮换其中出现过的凭据,再把 .claude/ 加进项目 .gitignore,并清理历史提交与 fork。Anthropic 尚未公开回应这项研究,也没有说明后续版本是否会默认对命令参数做脱敏。在那之前,1,122 份文件更像是下限而不是上限。
参考来源:
哇塞AI:Claude Code settings.local.json 泄露密钥 1122 份公开副本
https://www.wafai.cn/claude-code-settings-local-json-secret-leak-github/
iTWire:Apiiro 研究员称 Claude Code 批准文件在 GitHub 泄露公司密钥
https://itwire.com/business-it-news/security/claude-code-approval-files-found-exposing-company-secrets-on-github-says-apirro-researchers
Gazeta do Estado:Claude Code 缺陷致 2539 个凭据暴露在近 2 千个公开项目
http://www.gazetadoestado.com.br/geral/falha-no-claude-code-expoe-2539-credenciais-em-quase-2-mil-projetos-publicos-no-github
AI Weekly:Apiiro 称 Claude Code 密钥泄露至 1122 个仓库
https://aiweekly.co/alerts/apiiro-finds-claude-codes-dont-ask-again-leaked-2539-secrets-across-1994-public
Aviatrix Threat Research:Claude Code settings.local.json 密码与密钥暴露分析
https://aviatrix.ai/threat-research-center/claude-code-dont-ask-again-settings-local-json-passwords-keys-1122-github-2026/
Security Arsenal:Claude Code 泄露 1122 个公开 GitHub 仓库的检测与处置指南
https://securityarsenal.com/blog/claude-code-dont-ask-again-file-leaks-1122-public-github-repos-detection-and-remediation-guide
Runtime Wire:Claude Code 的“不再询问”如何让密钥流向 GitHub
https://runtimewire.com/article/claude-code-dont-ask-again-secrets-github-apiiro
Claude Code 官方文档:个人设置如何与仓库隔离(settings.local.json 与“不再询问”)
https://code.claude.com/docs/en/settings
GitHub Issue:Claude Code 批准命令原文入库的早期报告(anthropics/claude-code#5544)
https://github.com/anthropics/claude-code/issues/5544







