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(执行任务)+ 权限分类器(安全决策)
四道流水线
- 查历史规则 → 命中直接放行
- 低风险操作 → 跳过
- 只读工具白名单 → 直通
- 其余 → 调用独立 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 爆料
夜雨聆风