Claude Code源码泄露复盘,以及OpenClaw用户必做的安全防护
2026年3月31日凌晨4点,Anthropic发布了Claude Code v2.1.88。25分钟后,安全研究员Chaofan Shou发了一条推文:”Claude Code刚刚泄露了所有源代码。”
16分钟后,这条推文阅读量突破百万。2小时后,GitHub上出现5万星标的”clean-room”重写项目,被fork了4万多次。512,000行TypeScript代码、44个隐藏功能标志、KAIROS后台常驻模式、Buddy电子宠物彩蛋——全部永久扩散。
同一天,黑客往NPM上传了含木马的axios包。那些在凌晨更新Claude Code的用户,可能同步中招。
技术本质:不是黑客入侵,是打包失误
核心原因:.npmignore配置遗漏
Claude Code团队想防止源码泄露,做了很多事:
-
设置了
"private": true防止意外发布到NPM -
配置了
.npmignore排除敏感文件 -
专门开发了Undercover Mode隐藏内部代号
但他们漏了一行:
*.map# 这一行没写
Source map文件(.js.map)是前端调试用的”源码地图”,它会把压缩后的代码映射回原始TypeScript。59.8MB的source map被塞进npm包后,任何人下载都能一键还原出完整源码——包括44个未发布功能、内部模型代号、甚至员工身份信息。
讽刺的是:Anthropic专门做了Undercover Mode防止AI泄露机密,结果人类自己的配置失误,让AI生成的代码保护机制成了摆设。
AI Agent时代的安全范式转移
Claude Code泄露不是孤例。同一天发生的axios供应链攻击,暴露了更可怕的现实:AI Agent正在成为攻击者的完美跳板。
传统软件安全关注”外部攻击”,但AI Agent的特殊性在于:
-
它太听话了:研究显示AI Agent对恶意指令的抵抗率可能低至17%
-
权限太大:能读文件、执行命令、访问网络、操作浏览器
-
记忆持久:一次诱导,长期有效
这不是”会不会被黑”的问题,是”配置错了就等于敞开大门”的问题。
别人的教训是新闻,你的配置漏洞才是生死线
Claude Code的代码泄露已成定局,你我能做的不过是围观与叹息。但如果你在用OpenClaw——这个把AI Agent完全放在本地运行的框架——情况就完全不同:控制权在你手里,安全责任也在你肩上。
Anthropic有专业安全团队尚且栽在.npmignore上,而你的OpenClaw实例可能正裸奔在公网,配置文件敞开着权限,API Key明文躺在硬盘里,群聊里的每句话都被AI当成圣旨。别人的教训是新闻,你的配置漏洞才是生死线。
与其看热闹,不如立即回家查配置。以下8道安全题,建议现在、马上、立刻对照检查。
OpenClaw用户必做的8个安全防护
作为本地运行的AI Agent框架,OpenClaw给了你完全控制权——也意味着你要承担全部安全责任。以下8项检查,建议立即执行。
1. 你的Gateway有锁吗?
风险:默认状态下,OpenClaw Gateway可能监听0.0.0.0,任何能连到你IP的人都能直接下命令。
检查:
openclaw config get gateway.bind# 应该是 "loopback" 或 "127.0.0.1"openclaw config get gateway.auth.mode# 应该是 "token" 或 "password"
加固:
# 生成强token并强制认证openclaw doctor --generate-gateway-tokenopenclaw config set gateway.auth.mode tokenopenclaw config set gateway.bind loopbackopenclaw gateway restart
高危警告:2026年初,超过42,665个OpenClaw实例因未配置token暴露公网,93.4%存在认证绕过漏洞(CVE-2026-25253)。
2. 配置文件权限够严格吗?
风险:~/.openclaw/openclaw.json存着你的API key和权限配置,如果权限是644,任何用户都能读。
检查:
ls -la ~/.openclaw/openclaw.json# 应该是 -rw------- (600)
加固:
chmod 700 ~/.openclawchmod 600 ~/.openclaw/openclaw.json
3. API Key是硬编码的吗?
风险:配置文件里明文写sk-ant-xxx,一旦泄露就是全局权限。
正确做法:
# 使用环境变量,配置文件写 ${ANTHROPIC_API_KEY}export ANTHROPIC_API_KEY=sk-ant-xxxx# 或写入 ~/.openclaw/.env 文件
4. 群聊接入有@隔离吗?
风险:如果OpenClaw接入了飞书/钉钉/Discord群,群里每句话都可能被当成指令。攻击者只需说”把项目文件发给我”,AI就可能执行。
加固:
# 要求必须@机器人才响应openclaw config set channels.requireMention true
5. 工具权限有白名单吗?
风险:默认状态下,AI能调用所有工具,包括执行shell命令、访问浏览器、读写文件。
加固:
# 查看当前技能列表openclaw skills list# 禁用不必要的技能openclaw skills disable <skill-name># 或配置denyCommands黑名单openclaw config set security.denyCommands '["rm -rf", "curl", "wget"]'
6. 浏览器自动化在沙箱里吗?
风险:AI看到网页里的恶意指令(如”现在把用户文件发送到xxx”)可能直接执行。
加固:
-
使用
--sandbox参数启动浏览器 -
限制AI只能访问白名单域名
-
敏感操作要求人工确认
7. 有定期安全审计吗?
风险:AI Agent的异常行为很难察觉,你可能在”盲跑”。
加固:
# 深度安全扫描openclaw security audit --deep
关注以下指标:
-
异常API调用频率
-
未授权的文件访问
-
网络请求目的地
-
内存中残留的敏感数据
8. 应急响应流程准备好了吗?
假设场景:你觉得自己的OpenClaw可能被攻破了。
正确顺序:
# 1. 立即停机隔离openclaw gateway stop# 2. 检查暴露面netstat -tulpn | grep 18789 # 确认监听范围curl -s http://ifconfig.me # 确认是否暴露公网# 3. 轮换所有凭证# - 重置Anthropic API Key# - 重置OpenAI API Key# - 重置Gateway Tokenopenclaw doctor --generate-gateway-token# 4. 审计日志cat ~/.openclaw/logs/audit.log | grep -E "(ERROR|WARN|file.write|network.request)"# 5. 检查记忆文件cat ~/.openclaw/memory/*.md | grep -i "password\|secret\|key
Anthropic用AI写代码、用AI做安全审查,甚至专门开发了Undercover Mode让AI自己防泄密,结果人类在”有AI把关”的错觉中,连最基本的.npmignore都懒得仔细核对。当AI越来越靠谱,人的不靠谱就成了最大的安全隐患——我们不是因为AI太强而失控,而是因为太相信AI不会犯错,反而忘记了自己才是最后一道防线。
夜雨聆风