点一下“以后不再询问”,密码、API Key全被上传,Claude Code配置文件泄露数千条敏感信息,Anthropic回应
Claude Code 的权限确认框里,那个看似省事的“以后不再询问”选项,正在把开发者的密码和 API Key 变成公开仓库里的明文素材。安全研究人员发现,当用户批准包含凭证的命令后,敏感信息会被写入 .claude/settings.local.json 配置文件;一旦这个文件被提交到公开 GitHub,SSH 密码、API Key 甚至 Root 账户凭证就可能暴露在所有人面前。
“以后不再询问”成了泄密按钮
问题出在 Claude Code 的权限确认流程。按照设计,用户在遇到需要授权的命令时,可以选择“以后不再询问”,让工具记住这次操作。但安全研究显示,当被批准的命令中包含密码、API Key 等敏感内容时,这些信息会以明文形式写入本地配置文件。
更令人担忧的是,研究人员还发现了 43 条用于登录公网服务器的 SSH 凭证,其中一些甚至涉及 Root 账户密码。这意味着泄露的不只是某个 API Key,而可能是整台服务器的控制权。
.claude/settings.local.json 本应是开发者本地环境的一部分,不应该进入版本控制系统。但现实是,大量开发者在使用 Claude Code 时并未意识到这个文件会被创建,也没有检查它是否被 Git 跟踪。一次普通的 git add .,就可能把本地配置连同其中的明文凭证一起推到公开仓库。
GitHub上躺着两万多个暴露仓库
11 月 9 日,安全公司 GitGuardian 公布了更大规模的调查结果。在 2025 年 1 月至 2026 年 11 月 7 日期间,GitGuardian 在公开 GitHub 上发现了 23,276 个仓库中的 .claude/settings.local.json 文件,累计识别出 31,088 条不同的敏感凭证。

其中,5,343 条在检测时仍然有效。这组数字说明,配置文件泄露并非个别开发者的偶然失误,而是一个已经形成规模、值得整个开发者社区警惕的问题。
- 暴露仓库数量:23,276 个
- 识别出的不同敏感凭证:31,088 条
- 检测时仍然有效的凭证:5,343 条
- 涉及的高风险凭证:43 条 SSH 登录凭证,部分涉及 Root 账户密码
对于攻击者来说,公开 GitHub 是一个成本极低的“凭证矿场”。他们不需要入侵 Anthropic 的服务器,也不需要破解加密通信,只需要搜索文件名和关键词,就能找到大量粗心提交的配置文件。
八月就有人报警,Issue却自动关闭
这并不是一个刚刚出现的问题。早在 2025 年 8 月,就有开发者在 Claude Code 的 GitHub Issue 中报告过类似情况:当用户批准包含凭证的命令时,敏感信息会以明文形式写入配置文件。
此后,社区还陆续出现了其他相关反馈。但这些问题报告最终都因长时间没有更新而被自动关闭,并未得到实质性处理。直到这次安全研究公开,问题才再次引起广泛关注。
在 Hacker News 的相关讨论中,Claude Code 团队负责人 Boris Cherny 亲自作出了回应。他承认,Claude Code 历史上并没有内置敏感信息清理机制,团队正在研究如何避免此类问题。对于配置文件泄露,他解释称,.claude/settings.local.json 本来就不应该被提交到版本控制系统中,Claude Code 在自己创建文件时也会自动将其加入 Git 忽略规则。
但问题在于,自动忽略规则并不能覆盖所有场景。开发者可能在其他目录中手动创建配置文件,也可能在旧版本或异常操作下让文件进入 Git 跟踪范围。一旦文件已经被提交,后续的忽略规则就无法阻止它留在 Git 历史中。

Boris Cherny承认历史欠账,Auto Mode也非万能
面对质疑,Boris Cherny 建议开发者使用 Claude Code 的 Auto Mode,而不是继续手动维护复杂的允许和拒绝规则。按照他的说法,Auto Mode 可以通过分类器自动处理常规权限请求,减少开发者反复维护权限规则的麻烦。
不过,这一建议并没有完全打消社区的担忧。当有用户指出,即使使用 Auto Mode,涉及敏感命令的授权操作仍可能将相关内容写入配置文件时,Cherny 也认可了这一反馈,并表示团队正在考虑如何改进。另有 Claude Code 核心开发者表态称,团队正在紧急排查原因,很快会给出交代。
从回应来看,Anthropic 已经意识到配置文件泄露的严重性,但修复方向仍停留在“研究”和“考虑改进”阶段。对于已经泄露凭证的开发者来说,等待官方补丁并不是最紧迫的事,尽快轮换密钥、清理仓库才是当务之急。
开发者该怎样堵住配置文件漏洞
在官方推出更完善的清理机制之前,开发者需要自己先做一轮排查。重点不是继续争论“以后不再询问”该不该点,而是确认自己的仓库里是否已经躺着明文凭证。
- 立即搜索本地仓库和公开仓库中是否存在
.claude/settings.local.json; - 检查
.gitignore是否已加入该文件,并确认它没有被 Git 跟踪; - 如果文件已经提交,尽快从 Git 历史中清除,而不只是删除当前文件;
- 对曾经写入配置文件的密码、API Key、SSH 凭证进行轮换;
- 避免在授权命令中直接传递明文凭证,改用环境变量或专用密钥管理工具;
- 谨慎使用“以后不再询问”,尤其是在命令涉及登录、部署和服务器操作时。
Claude Code 的这次泄露事件提醒开发者,AI 编程工具的便利性往往伴随着新的安全边界。一个为了减少弹窗而设计的选项,可能在不经意间把最敏感的信息写进最容易被忽略的文件。Anthropic 的回应只是开始,真正需要补齐的,是工具默认安全策略和开发者提交前的检查习惯。