← 回總覽

Anthropic 因 npm Source Map 文件配置错误意外泄露 Claude Code 源码

📅 2026-04-07 16:00 Steef-Jan Wiggers 人工智能 2 分鐘 1293 字 評分: 87
Anthropic Claude Code 安全泄露 npm Source Maps
📌 一句话摘要 由于 Source Map 文件配置错误,Anthropic 在 npm 上意外泄露了其 Claude Code CLI 工具的完整 TypeScript 源代码。 📝 详细摘要 安全研究员 Chaofan Shou 发现,Anthropic 的 @anthropic-ai/claude-code 软件包 2.1.88 版本包含一个 source map (.map) 文件,该文件暴露了未经混淆的完整 TypeScript 源代码。此次泄露归因于发布打包过程中的人为失误,导致代码库被迅速归档到 GitHub 上。本文解释了技术原因——Bun 默认生成 source map

📌 一句话摘要

由于 Source Map 文件配置错误,Anthropic 在 npm 上意外泄露了其 Claude Code CLI 工具的完整 TypeScript 源代码。

📝 详细摘要

安全研究员 Chaofan Shou 发现,Anthropic 的 @anthropic-ai/claude-code 软件包 2.1.88 版本包含一个 source map (.map) 文件,该文件暴露了未经混淆的完整 TypeScript 源代码。此次泄露归因于发布打包过程中的人为失误,导致代码库被迅速归档到 GitHub 上。本文解释了技术原因——Bun 默认生成 source map 的机制,并为开发者提供了实用的预防策略,例如使用 .npmignore、在 package.json 中进行显式白名单配置,以及在发布前使用 npm pack 对软件包进行审计。

💡 主要观点

- 通过 npm source maps 导致完整源代码暴露 公共 npm 仓库中配置错误的 .map 文件指向了托管在云存储上的原始、未经混淆的 TypeScript 源文件,从而导致整个代码库泄露。

发布打包过程中的人为失误 Anthropic 澄清称,此次事件是打包失误,而非客户数据泄露,这凸显了 CI/CD 流水线中手动操作步骤的风险。
Bun 运行时默认设置是促成因素 Bun 运行时默认会生成 source maps;开发者必须主动在生产构建和发布阶段禁用或排除它们。
npm 开发者的标准化预防方法 本文建议使用 .npmignore,在 package.json 中使用 “files” 字段进行白名单限制,并在发布前运行 “npm pack --dry-run” 来审计软件包内容。

💬 文章金句

- 这是一个由人为失误导致的发布打包问题,而非安全漏洞。

  • 一个配置错误的 .npmignore 或 package.json 中的 files 字段就可能导致一切泄露。
  • 预防此类问题并不复杂:将 *.map 添加到 .npmignore,在 package.json 的 files 字段中维护显式白名单,或者在发布前运行 npm pack --dry-run 来审计包含的文件。

📊 文章信息

AI 评分:87

来源:InfoQ

作者:Steef-Jan Wiggers

分类:人工智能

语言:英文

阅读时间:4 分钟

字数:942

标签: Anthropic, Claude Code, 安全泄露, npm, Source Maps

阅读完整文章

查看原文 → 發佈: 2026-04-07 16:00:00 收錄: 2026-04-07 18:00:50

🤖 問 AI

針對這篇文章提問,AI 會根據文章內容回答。按 Ctrl+Enter 送出。