ClaudeCode源码泄露,我解除了限制
一、前言2026年3月31日发现Anthropic的Claude Code CLI工具通过source map文件暴露了完整源代码。这一发现迅速引发技术社区关注。本次泄露的核心价值不在于代码本身,Claude Code作为客户端工具其大部分逻辑本就可通过反编译获取,而在于它完整暴露了Anthropic的安全控制架构、提示词工程策略以及权限边界设计。对于安全研究人员而言这是一份难得一见的商业级AI Agent安全实现参考样本。二、源码恢复工程的技术路径泄露的源码并非原始开发仓库而是基于已发布包中的cli.js与cli.js.map进行反推恢复。这种恢复方式在技术上具有以下特点2.1 恢复方法ounter(line原始产物 → Source Map解析 → TypeScript源码重构 → 工程化还原构建工具esbuild重新打包替代官方原始构建链运行时环境Bun非Node.jsUI框架React Ink终端渲染框架架构模式模块化工具架构支持懒加载与动态发现2.2 工程结构恢复后的代码库呈现典型的分层架构层级核心模块功能定位入口层src/entrypoints/,src/bootstrap/启动分流、全局状态初始化交互层src/components/,src/ink/,src/screens/终端UI渲染、事件处理业务层src/services/,src/tools/,src/tasks/API调用、工具实现、任务执行基础设施src/utils/,src/constants/,src/state/配置管理、权限控制、状态容器三、安全限制机制解构3.1 提示词级安全边界泄露代码中最受关注的安全控制点位于src/constants/cyberRiskInstruction.ts。该文件定义了一个系统级指令常量被注入到所有对话模式的系统提示词中。原始指令内容泄露版本ounter(lineexport const CYBER_RISK_INSTRUCTION IMPORTANT: Assist with authorized security testing, defensive security, CTF challenges, and educational contexts. Refuse requests for destructive techniques, DoS attacks, mass targeting, supply chain compromise, or detection evasion for malicious purposes. Dual-use security tools (C2 frameworks, credential testing, exploit development) require clear authorization context: pentesting engagements, CTF competitions, security research, or defensive use cases.该指令在src/constants/prompts.ts中被注入到两个关键位置普通模式getSimpleIntroSection()函数第182行自主代理模式Proactive模块的系统提示词模板第474行3.2 安全策略的层级设计Claude Code的安全架构并非单一依赖提示词控制而是采用多层防御┌─────────────────────────────────────────────────────────────┐│ Layer 1: 系统提示词控制 (System Prompt) ││ - CYBER_RISK_INSTRUCTION (网络安全限制) ││ - URL生成限制、提示词注入检测、OWASP防护 │├─────────────────────────────────────────────────────────────┤│ Layer 2: 权限系统 (Permission System) ││ - 危险命令模式匹配 ││ - 权限检查流程 ││ - 自动模式分类器 (yoloClassifier) │├─────────────────────────────────────────────────────────────┤│ Layer 3: 工具级安全检查 (Tool-Level Security) ││ - PowerShell AST安全分析 ││ - Bash破坏性命令警告 ││ - 沙箱文件系统隔离 │├─────────────────────────────────────────────────────────────┤│ Layer 4: 输入清理 (Input Sanitization) ││ - Unicode隐藏字符攻击防护 │└─────────────────────────────────────────────────────────────┘3.3 权限系统的实现细节权限控制核心位于src/utils/permissions/目录模块功能dangerousPatterns.ts定义危险命令的正则匹配模式permissions.ts权限检查主流程yoloClassifier.ts自动模式ML分类器权限级别枚举ounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineenum PermissionLevel { ALWAYS_ALLOW always_allow, // 持久化授权 ALLOW_ONCE allow_once, // 单次授权 DENY deny, // 拒绝 ASK ask // 需要用户确认默认}四、安全限制移除的技术分析GitHub仓库Ta0ing/claude-code_evil展示了如何通过最小化修改绕过提示词级安全控制。项目地址https://github.com/Ta0ing/claude-code_evil4.1 修改点文件src/constants/cyberRiskInstruction.ts修改前ounter(lineexport const CYBER_RISK_INSTRUCTION IMPORTANT: Assist with authorized security testing...修改后ounter(lineexport const CYBER_RISK_INSTRUCTION 4.2 移除限制修改仅移除了提示词层面的安全边界其他安全机制仍然生效安全机制状态说明URL生成限制✅ 生效prompts.ts第183行提示词注入检测✅ 生效prompts.ts第191行OWASP安全漏洞防护✅ 生效prompts.ts第234行敏感操作确认✅ 生效prompts.ts第255-266行危险命令模式匹配✅ 生效dangerousPatterns.tsBash/PowerShell安全分析✅ 生效工具级检查沙箱隔离✅ 生效sandbox-adapter.ts扫码进入AI交流群— 关于我们 —镇江刺掌信息科技有限公司成立于2020年公司旗下MS08067安全实验室专注于网络安全领域教育、培训、认证产品及服务提供商。近两年线上培训人数近10万人次培养网络安全人才近6000名。公司被认定为国家高新技术企业、国家科技型中小企业、江苏省创新性中小企业、江苏省民营科技企业、江苏省软件企业。并荣获机械工业出版社“年度最佳合作伙伴”、电子工业出版社-博文视点“优秀合作伙伴”、镇江市企业发展服务中心优质合作伙伴、镇江市网络安全应急支撑服务单位等荣誉称号。如果喜欢我们 欢迎 在看丨留言丨分享至朋友圈 三连