一句话看懂:安全公司 Apiiro 发现,Claude Code 的本地配置文件因权限确认机制被误提交到公开 GitHub 仓库,导致数千条数据库密码、API Token 和私钥暴露;Anthropic 团队表示正在研究防护措施,但相关 Bug 报告早在 2025 年 8 月就已出现。
事件核心:发生了什么
Claude Code 在用户批准运行自动化 shell 命令时,若选择“是,且不再询问”,这条命令会以规则形式写入本地 .claude/settings.local.json 文件;命令中内嵌的敏感信息也随之被明文保存。该文件本应被加入全局 .gitignore,但这一设置不覆盖仓库层级,因此文件可能在克隆仓库、文件夹转为仓库等场景下被误上传。许多情况下,Claude Code 自身也会在无用户输入时提交该文件。
Apiiro 研究人员在公开 GitHub 仓库中发现超过 10 万次该配置文件被上传的记录,其中约 1,100 条来自 63 个组织,包含公开 API Token、数据库密码和私钥。即便文件被删除,密钥仍可能残留在 fork 中。另有 215 条密钥未被 gitleaks 和 TruffleHog 两款流行扫描工具识别。
为什么重要
这暴露了 AI 编程代理在权限管理与配置持久化之间的结构性矛盾:产品为了减少重复确认而保存命令,却未充分隔离敏感数据与版本控制。Anthropic 虽在文档中说明该文件应被忽略,但仓库级别的现实场景并未被覆盖。更关键的是,相关 Bug 报告自 2025 年 8 月起被提出后,因 60 天无活动而被关闭且未处理,说明该问题在团队内部优先级曾被低估。对于正快速嵌入企业开发流程的 AI 代理而言,配置泄露会直接转化为云资源、数据库和 CI/CD 凭证的失守风险。
对用户/开发者/创作者的影响
使用 Claude Code 的开发者应立即检查本地和远程仓库中是否存在 .claude/settings.local.json,并确认其未被纳入版本控制;若曾提交,需轮换其中出现的所有密钥。企业团队应将此文件加入仓库级 .gitignore 或预提交钩子检查。Anthropic 的 Boris Cherny 建议启用 auto mode 并配合密钥扫描工具,但他也承认 auto mode 仍可能保存敏感命令,且现有扫描器存在漏报,因此不能完全依赖单一防护。对更广泛的 AI 工具使用者而言,这意味着任何“减少打扰”的自动化授权设计,都需要同步评估其在版本控制和共享场景下的暴露面。
AI 工具推荐
想把多个 AI 模型放在一个入口?
GamsGo AI 集成 ChatGPT、DeepSeek、Gemini、Claude、Midjourney、Veo 等常用模型,适合写作、绘图、视频和日常 AI 工作流。
推广链接:通过此链接购买,我可能获得佣金,不影响你的价格。
值得关注的后续
一是 Anthropic 是否会为配置文件增加仓库级忽略或敏感信息脱敏机制;二是团队是否会将密钥扫描内置到 Claude Code,以及如何弥补现有工具漏报的 215 条案例;三是 GitHub 侧是否会针对这类 AI 工具配置文件提供更主动的检测或警告。目前公开信息显示,Anthropic 尚未公布具体修复时间表。
来源:Ars Technica


