Ryujiyasu/ClaudeCodeSecurityReport

GitHub: Ryujiyasu/ClaudeCodeSecurityReport

针对 Claude Code 源码泄露事件后出现的篡改分支进行安全审计,提供了可复用的差异比对审计工具包,并揭露了以泄露源码为诱饵分发木马的供应链攻击。

Stars: 0 | Forks: 0

# Claude Code 安全报告 针对源码地图泄露事件(2026-03-31,v2.1.88)后出现的篡改版 Claude Code 构建的安全审计。 ## 背景 2026 年 3 月 31 日,`@anthropic-ai/claude-code` npm 包 v2.1.88 意外包含了 `cli.js.map`,暴露了完整的 TypeScript 源码(约 51.2 万行,1900 个文件)。这衍生出了大量的分支、篡改版本以及至少一次恶意软件分发活动。 本仓库记录了我们对最知名分支的安全审计结果。 ## 总结 | 仓库 | 严重性 | 后门 | 数据窃取 | 命令注入 | 结论 | |-----------|----------|----------|-------------|---------------|---------| | paoloanzn/free-code | **中危** | 无 | 无 | 无 | 仅移除了安全护栏,无恶意行为 | | leaked-claude-code/leaked-claude-code | **严重** | **疑似** | 待定 | 待定 | **木马分发陷阱** | | beita6969/claude-code | **低危** | 无 | 无 | 无 | 合法的研究分支 | | kennyzheng-builds/claude-yolo | **低危** | 无 | 无 | 无 | `--dangerously-skip-permissions` 封装脚本 | | instructkr/claw-code | **低危** | 无 | 无 | 无 | 干净的 Rust 重写 | ### 关键发现:leaked-claude-code 是一个木马陷阱 `leaked-claude-code/leaked-claude-code` 仓库使用真实的泄露源码作为诱饵,但通过 GitHub Releases 分发**预编译的 Windows 二进制文件**(`ClaudeCode_x64.7z`)。该源码**没有构建系统**(没有 package.json,没有 tsconfig.json,没有构建脚本)——它的存在仅仅是为了建立可信度。该二进制文件应被视为**疑似恶意软件**。 **已确认的细节:** - **二进制文件**:`ClaudeCode_x64.7z`(108 MB),SHA256:`06f63fe3eba5a2d1e2177d49f25721c2bdd90f3c46f19e29740899fa908453bf` - **下载量**:1,239+(截至 2026-04-01) - **发布时间**:2026-03-31 12:54 UTC —— 泄露发生后数小时内 - **攻击者账户**:`idbzoomh1` —— 创建于 2025-09-21,零仓库,零关注者(休眠账户) 危险信号: - 尽管包含 TypeScript 源码,但没有构建系统 - `.7z` 压缩分发绕过了 GitHub 的自动病毒扫描 - 虚假声明:“越狱模式”、“企业级功能”、“浏览器指纹欺骗”——源码中均未实现 - 使用预先准备好的休眠资料的弃用账户 - 无关的 `.gitignore`(Dynamics 365 Business Central 模板) ## 报告 - **[完整报告 (JP)](audit/reports/summary-2026-04-01.md)** — 総合レポート(日本語) - **[审计方法](audit/README.md)** — 工具与方法 ## 审计工具包 可复用的基于差异对比的审计脚本,用于将任何 Claude Code 分支与官方 npm 包进行比对: ``` # 获取 target ./audit/scripts/fetch-target.sh # 运行 audit ./audit/scripts/audit.sh audit/targets//package ``` 该工具包仅提取相对于官方基线新增/更改的行,然后扫描以下内容: - 外部 URL / C2 端点 - 响应操纵(tool_use 注入) - 命令注入 / 权限绕过 - 凭据窃取 / 数据外泄 - 混淆 / 动态代码执行 - 供应商二进制文件篡改 ## 分类矩阵 ``` Malicious Non-malicious ┌──────────────────┬──────────────────────────┐ Modified │ leaked-claude- │ free-code (guardrails │ │ code (trojan │ stripped) │ │ distribution) │ │ ├──────────────────┼──────────────────────────┤ Unmodified│ │ beita6969 (build system) │ / Minor │ │ claude-yolo (wrapper) │ │ │ claw-code (Rust rewrite) │ └──────────────────┴──────────────────────────┘ ``` ## TODO - [ ] `ClaudeCode_x64.7z` 的沙箱分析 (VirusTotal / ANY.RUN) - [ ] 针对 leaked-claude-code 提交 GitHub 滥用报告 - [ ] 审计 `aashunaidu/claude-code-unlimited` (OpenRouter 密钥轮换) - [ ] 调查 41,500+ 分支生态系统中的其他分支 ## 负责任的披露 本研究作为白帽安全研究进行。有关恶意软件分发的发现将通过滥用报告提交给 GitHub。 ## 作者 Ryuji Yasukochi — 安全研究员,[M2Labo](https://m2labo.com) CTO
标签:Claude Code, Cutter, DAST, ESC8, GitHub安全, npm包, OpenCanary, 云资产清单, 信息泄露, 恶意软件分析, 数据窃取, 暗色界面, 木马, 源码泄露, 社会工程学, 网络安全, 逆向工程, 隐私保护