Claude Code 泄露数千密钥到 GitHub:配置规则未脱敏

11 月 10 日,据 Ars Technica 报道,安全研究团队 Apiiro 在公开的 GitHub 仓库里发现数千条泄露的敏感信息,包括数据库密码、API 令牌和 root 登录凭据,来源是 Claude Code 的项目配置文件。

泄露路径出在审批规则

问题出在 Claude Code 对自动执行 shell 命令的授权处理方式。当用户选择 Yes, and don’t ask again 选项批准运行某条命令时,这个选择会被存成一条规则,写入本机的 .claude/settings.local.json 文件。这条规则有时只编码成一个模式,但命令本身往往被原样写进该文件,其中可能内嵌敏感信息。

本地文件为何流到公网

如果设置文件只留在用户本机,其实不算严重的安全问题。但 Anthropic 在 Claude Code 文档中说明,这个文件会被加入开发者的全局 .gitignore 列表,通常能避免被公开分享。问题在于一旦忽略规则失效、仓库被错误提交或者被复制,敏感内容就随之公开。相关的智能体配置安全自查方法可参考 AGENTS.md 投毒怎么查:Codex 中招率超 90%。

影响范围的边界

从已披露的情况看,泄露对象是开发者本地配置里的命令与凭据,而不是模型本身,风险大小取决于仓库可见性以及被忽略文件是否真的被排除。对经常把智能体项目推到公开仓库的团队来说,这类文件值得单独做一次扫描。

这类问题的典型触发场景是把部署命令连同密钥一起粘贴进终端,例如一段带访问令牌的 curl 调用或一条带数据库口令的迁移脚本。用户点了不再询问之后,整条命令连同其中的凭据就被固化进规则文件。

公开仓库上的扫描结果显示,被泄露的内容类型集中在 API 令牌、数据库连接串与 root 口令这类可以直接复用的凭据。相比之下,泄露面更大的风险在于攻击者拿到令牌后可以直接访问对应服务,无需再破解加密。