乐于分享
好东西不私藏

Claude Code 源码泄露 51 万行:一次 60MB 的低级失误

Claude Code 源码泄露 51 万行:一次 60MB 的低级失误

💡 一句话结论:不是黑客攻击,是发布前少删了一个文件。

文 / 阿囧囧  ·  发布时间:2026 年 4 月 1 日

2026 年 3 月 31 日,一个普通的周二。

区块链安全公司 FuzzLand 的研究员 Chaofan Shou,在 npm 包管理器上发现了一个异常。

Anthropic 发布的 Claude Code CLI 工具包里,有一个 59.8MB 的调试文件。

打开一看,里面是 51.2 万行 TypeScript 源码,1906 个源文件。

Claude Code 的”底裤”,被扒光了。

📊 01 事件概述:51 万行代码泄露

泄露时间:2026 年 3 月 31 日

泄露渠道:npm 包管理器(@anthropic-ai/claude-code)

泄露规模

指标 数值
代码行数 51.2 万行
源文件数量 1906 个
JSON 文件总量 4756 个
工具模块 超过 40 个
泄露文件大小 59.8MB

未泄露内容:

  • ✅ 模型权重
  • ✅ 用户数据
  • ✅ API 密钥/凭证
  • ✅ 核心模型代码

⚠️ 02 泄露原因:一个.map 文件的失误

这次泄露,不是黑客攻击,是人为失误

事故还原

正常流程:
源代码编译打包(删除.map 文件)发布 npm 包

事故流程:
源代码编译打包(未删除.map 文件)发布 npm 包源码暴露

关键失误

环节 问题
.npmignore 配置 未过滤 source map 文件
打包配置 cli.js.map 文件被包含在发布包中
发布前检查 缺少源码泄露检测流程

Source Map(.map 文件)是什么?

源代码与编译后代码的映射文件,用于调试。可将压缩/编译后的代码还原为原始源代码。

行业惯例:生产环境发布前必须删除或加密.map 文件。

Anthropic 这次,没删。

📢 03 官方回应:人为错误,非安全漏洞

4 月 1 日,Anthropic 发言人发布官方声明:

“今天早些时候,一个 Claude Code 版本包含了部分内部源代码。没有涉及或暴露任何敏感的客户数据或凭证。这属于人为错误导致的发布打包问题,并未构成安全漏洞。我们正在采取措施防止此类情况再次发生。”

官方定调

要点 说明
事件性质 人为错误,非安全入侵
用户数据 未涉及、未泄露
API 凭证 未暴露
应对措施 正在采取措施防止再次发生

用户需要做什么?

用户类型 建议
普通用户 ✅ 无需更换 API 密钥,可继续使用
企业用户 ✅ 建议进行安全评估,检查审计日志
开发者 ✅ 可研究学习,但注意版权风险

💰 04 影响评估:谁受损,谁受益?

对用户:风险低

无需更换 API 密钥。

官方确认,泄露的是应用层代码,不涉及用户数据和凭证。

普通用户可以继续使用,不受影响。

对竞品:研究价值高

架构设计、工具调用逻辑、实现细节,全部透明。

竞品公司可以:

  • 研究技术路线
  • 分析提示词逻辑
  • 学习安全机制
  • 了解未发布功能

51 万行代码,等于一份免费的技术文档。

对 Anthropic:品牌信任受损

短期内受质疑,但快速回应缓解了影响。

更严重的是,这已经是Anthropic 短期内第二次类似事件

时间 事件 原因
2026 年 3 月下旬 第三方 CMS 配置错误 近 3000 份内部文件泄露
2026 年 3 月 31 日 npm 打包失误 51 万行源码泄露
2025 年 2 月 同类 source map 疏忽 早期版本曾被曝光

同类问题,犯了三次。

对行业:工程化安全受质疑

AI 公司重模型、轻工程的问题,被再次暴露。

Agent 工程化门槛降低,但安全标准没有跟上。

📋 05 历史对比:AI 公司的”泄露病”

Anthropic 不是第一家。

公司 时间 事件 原因 影响
Anthropic 2026.3.31 Claude Code 源码泄露 npm 打包失误 51 万行代码
Anthropic 2026.3 下旬 CMS 配置错误 人为错误 3000 份文件
OpenAI 2025.11 ChatGPT 路由故障 技术故障 少量查询受影响
OpenAI 2025.8 聊天记录泄露 未知 用户信息暴露
xAI 2025.8 前工程师窃取商业机密 内部泄露 诉讼至联邦法院

AI 公司的工程化安全,仍是巨大短板。

⚙️ 06 技术细节:四道流水线权限分类器

泄露代码中,最值得关注的是 Auto 模式下的安全决策逻辑

双 AI 架构

主 AI(执行任务)+ 权限分类器(安全决策)

四道流水线

  1. 查历史规则 → 命中直接放行
  2. 低风险操作 → 跳过
  3. 只读工具白名单 → 直通
  4. 其余 → 调用独立 Claude Sonnet(温度=0,最保守模式)
     

    •    
    • Allow(允许)
    •    
    • Soft Deny(软拒绝)
    •    
    • Hard Deny(硬拒绝)
    •  

这套安全机制,现在对外完全透明。

🛡️ 07 开发者警示:发布前检查清单

这次事件,给所有开发者敲响了警钟。

发布前检查清单

检查项 说明
.npmignore 配置 确保过滤.map、.ts、.tsx 等源文件
package.json files 字段 明确指定发布文件列表
CI/CD 检测 添加源码泄露自动化检测

推荐的 CI/CD 检测

# 检查 npm 包是否包含 source map
npmpack --dry-run | grep"\.map"

# 检查是否包含 TypeScript 源文件
npmpack --dry-run | grep"\.ts"

# 使用安全扫描工具
npmaudit

行业最佳实践

  • 最小化发布:只发布必要的编译后文件
  • 自动化检测:CI/CD 流程中添加源码泄露检测
  • 人工复核:发布前人工检查包内容
  • 快速响应:发现问题立即下架并修复

📝 08 写在最后

51 万行代码泄露,听起来很严重。

但这次,真的只是一个”低级失误”。

少删了一个.map 文件,仅此而已。

没有黑客攻击,没有数据泄露,没有用户风险。

但它暴露了一个更大的问题:

AI 公司的工程化能力,配不上它们的模型能力。

Anthropic 估值超 180 亿美元,是 AI 行业的领头羊。

但就是这样一家公司,在同一个问题上犯了三次错

  • 2025 年 2 月,source map 疏忽被曝光
  • 2026 年 3 月下旬,CMS 配置错误泄露 3000 份文件
  • 2026 年 3 月 31 日,同样的 source map 问题,泄露 51 万行代码

这不是技术问题,是管理问题。

对于开发者来说,这次事件是一个警示:

发布前,多检查一遍。

一个.map 文件,可能引爆 51 万行代码。

📢 觉得有用?关注「阿囧囧」,一起探讨 AI 时代的更多可能性

【互动话题】 你觉得 AI 公司在工程化安全上还有哪些隐患?欢迎留言分享你的看法。

📚 参考资料:

• Anthropic 官方声明

• npm 包地址:https://www.npmjs.com/package/@anthropic-ai/claude-code

• 每日经济新闻:Claude”底裤”被扒光?超 51 万行源码泄露

• 发现者 Chaofan Shou X/Twitter 爆料