Claude Code 配置文件泄露密钥:GitHub 上 1122 份公开副本含密码和 API Key

开发者批准 Claude Code 命令时选择“不再询问”,命令原文(含密码和密钥)会被写入 .claude/settings.local.json;安全公司 Apiiro 发现 GitHub 上 1,122 份该文件的公开副本至少各含一个密钥,而且仅删除文件无法撤销泄露。

一句话看懂:开发者批准 Claude Code 命令时选择“不再询问”,命令原文(含密码和密钥)会被写入 .claude/settings.local.json;安全公司 Apiiro 发现 GitHub 上 1,122 份该文件的公开副本至少各含一个密钥,而且仅删除文件无法撤销泄露。

事件核心:发生了什么

据 The Hacker News 和 Slashdot 报道,Anthropic 的 AI 编程助手 Claude Code 在用户选择“Yes, and don’t ask again”后,会把整条命令逐字保存到项目设置文件 .claude/settings.local.json,若命令里带密码或 API Key,也会一并写入。Apiiro 扫描公开 GitHub 后发现 104,185 份该文件、分布在 103,617 个仓库里,其中 1,122 份至少含一个密钥,合计 1,379 个不同密钥;一半仓库中该文件已存在至少 217 天。泄露内容包括 379 个数据库密码、43 个 SSH 登录凭据、42 个 GitHub/GitLab/npm token 和 23 个 AWS 密钥,涉及 63 家组织,其中包括某数据库厂商的管理员级云密钥和一份病历数据库的 owner 密码。Claude Code 负责人 Boris Cherny 在 Hacker News 回应称,该文件本应只留在本地,Anthropic 会在 Claude 创建文件时自动将其加入 git 排除,但不会写入项目自身的 .gitignore;他也在评估基础密钥扫描和自动模式拦截。

为什么重要

这是 AI 编程助手把便利设计变成安全暴露面的典型案例:权限确认的“不再询问”本意是减少打断,却把敏感信息落到明文配置文件,再随提交进入公共仓库。更关键的是清理难度——旧版本留在 git 历史和 fork 中,删文件不等于止损,按研究人员建议应先轮换所有密码、token 和密钥,再清理历史。对 Anthropic 而言,这也会促使 Claude Code 在密钥扫描、提交拦截等工程能力上补课。

对用户/开发者/创作者的影响

使用 Claude Code 或其他 AI 编程代理的开发者,应立即检查仓库里是否存在 .claude/settings.local.json 并确认其内容是否含敏感信息;若已推送公开仓库,优先轮换密钥,而不是只删文件。团队层面应把该文件加入项目 .gitignore,并开启 GitHub 等平台的 secret scanning。企业采购 AI 编程工具时,可把“默认密钥扫描、敏感命令拦截、提交前检查”列入评估项。

GamsGo AI

AI 工具推荐

想把多个 AI 模型放在一个入口?

GamsGo AI 集成 ChatGPT、DeepSeek、Gemini、Claude、Midjourney、Veo 等常用模型,适合写作、绘图、视频和日常 AI 工作流。

了解 GamsGo AI

推广链接:通过此链接购买,我可能获得佣金,不影响你的价格。

值得关注的后续

目前公开信息显示,Anthropic 尚未公布具体上线时间。可观察三点:Claude Code 是否内置基础密钥扫描并在提交前拦截;自动模式遇到敏感命令时是否真正阻断;以及此前被自动关闭的社区 bug 报告是否会得到正式修复和说明。

来源:Slashdot

celebrityanime
celebrityanime
文章: 33549

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注