Anthropic 确认 Claude Code 源码泄露:60MB 源映射文件暴露 50 万行代码

早报8小时前发布 小马良
5 0

AI 巨头 Anthropic 今日证实,其闭源产品 Claude Code 的完整源代码因一次“人为打包错误”意外泄露。在发布的 NPM 包版本 2.1.88 中,包含了一个高达 60MB 的源映射文件(cli.js.map),该文件内嵌了约 1900 个文件、50 万行代码的完整原始内容。尽管 Anthropic 迅速发布补丁并发起 DMCA 下架投诉,但源码已在 GitHub 等平台广泛传播。此次泄露不仅揭示了包括“主动模式”和“梦境模式”在内的未公开功能,还恰逢官方确认存在导致用户配额快速耗尽的严重 Bug。

乌龙泄露!Claude Code 源码全网曝光,Anthropic 因一个低级疏忽,把底牌送进公众视野

事件回顾:一个文件引发的“裸奔”

1. 泄露源头:被遗忘的 sourcesContent

今日早些时候,Anthropic 向 NPM 发布了 Claude Code 的 2.1.88 版本。然而,构建配置中的疏忽导致一个名为 cli.js.map 的源映射文件被一同打包发布。

  • 什么是源映射? 它本用于开发调试,将压缩后的代码映射回源代码。
  • 致命错误: 该文件开启了 sourcesContent 选项,直接将所有原始 TypeScript/TSX 代码的完整文本嵌入其中。
  • 后果: 任何下载该包的人,只需提取 JSON 中的 sourcesContent 数组,即可完美还原整个项目的源代码树,无需任何反编译技术。

2. 泄露规模

  • 文件大小:60 MB
  • 代码量:约 50 万行
  • 文件数:约 1900 个内部文件
  • 暴露内容:核心业务逻辑、系统提示词(System Prompts)、工具调用协议、UI 渲染逻辑(基于 React + Ink)以及内部架构设计。

3. 官方回应

Anthropic 向 BleepingComputer 发表声明确认了此事:

“今天早些时候,一次 Claude Code 发布包含了一些内部源代码。没有涉及或暴露敏感的客户数据或凭证。这是一个由人为错误导致的发布打包问题,而非安全漏洞。我们正在采取措施防止此类事件再次发生。”

目前,Anthropic 已发布修复版本,并开始向托管源码的 GitHub 仓库发送 DMCA 侵权通知要求下架,但镜像传播已难以完全阻断。

源码揭秘:发现两大“神秘模式”

随着开发者对泄露源码的深入分析,两个从未在官方文档中提及的“未来功能”浮出水面:

1. “主动模式” (Active Mode)

  • 描述:一种全天候运行的编码模式。在此模式下,Claude 不再被动等待指令,而是持续监控项目状态,主动寻找优化点、修复 Bug 或重构代码。
  • 意义:这标志着 AI 编程助手从“副驾驶”(Copilot)向“自主智能体”(Autonomous Agent)的重大转变。

2. “梦境模式” (Dream Mode)

  • 描述:当用户离开或暂停工作时,Claude 可在后台进入“梦境”状态。它会利用这段时间持续思考、发展创意、推演解决方案,甚至在用户返回前就尝试解决复杂问题。
  • 意义:这种“离线思考”机制旨在突破实时交互的延迟限制,利用空闲算力进行深度推理,可能是未来处理超长上下文和复杂任务的关键。

并发危机:使用限额 Bug 致用户配额“秒没”

就在源码泄露的同一天,大量用户报告遭遇另一项严重问题:Claude Code 的使用限额消耗速度异常加快

现象

  • Pro/Max 用户受影响:即使是付费最高的 Max 套餐(通常有 5 倍额度),用户也在短短几分钟的交互后耗尽了当日配额。
  • 非正常消耗:有用户反馈,仅发送几条消息、上下文并不大的情况下,使用量直接飙升至 100%。

官方确认

Anthropic 工程师 Lydia Hallie 在 X 平台上确认这不是策略调整,而是一个 Bug

“我们意识到人们遇到 Claude Code 使用限制耗尽的速度比预期快得多。正在积极调查,有进展时将分享更多信息。”

截至美东时间 3 月 31 日下午,该问题仍未完全解决,官方表示这是团队的“首要任务”。部分用户猜测这可能与服务器负载或新功能的后台测试有关,但在官方定论前,一切仅为推测。

行业警示:生产环境切勿包含 Source Map

此次事件为所有发布 JavaScript/TypeScript 库的开发者敲响了警钟:

  1. 检查构建配置:确保生产环境构建(Production Build)关闭了 source map,或至少不包含 sourcesContent 字段。
  2. 审查 package.json:使用 files 字段白名单机制,明确只发布必要的文件(如 dist/),严禁通配符误包含源码目录。
  3. 自动化扫描:在 CI/CD 流水线中加入检查步骤,自动拦截包含 .map 文件或源码目录的发布包。
  4. 零信任原则:永远不要假设客户端代码是安全的。核心逻辑、密钥和敏感 Prompt 应尽可能部署在服务端。
© 版权声明

相关文章

暂无评论

none
暂无评论...