2026 年 6 月底,据开发者逆向报告,Claude Code(非 Claude 网页版)在用户走代理(设置了 ANTHROPIC_BASE_URL 且 ≠ api.anthropic.com)时,会用文本隐写术改写系统提示词里 Today's date is... 这一行——通过切换日期分隔符和肉眼几乎无法分辨的 Unicode 单引号,把「你是否在中国时区、是否命中中国域名/AI 实验室」等比特信息悄悄夹带回服务器。Anthropic 已在 2.1.197 版本移除相关代码。它大概率是反模型蒸馏/反转售手段,但争议在于:做法太隐蔽、还刻意混淆。
本文面向Claude Code / Claude Desktop 开发者、安全研究员与走第三方 API 网关的工程团队,严格区分事件 A(Desktop 静默浏览器注入)与事件 B(Code 提示词隐写),覆盖:完整时间线、Unicode 映射表、base64+XOR 混淆细节、HN 社区两派争议、八项 FAQ、六步自查防护、权威来源链接,以及 AI 厂商越界时我们该有的应对态度。读完后应能回答:Claude Code 算不算间谍软件、隐写术如何运作、以及我该如何自查与防护。
01 Claude Code 是不是间谍软件?TL;DR 与两起独立事件
一句话结论:不算传统意义的间谍软件,但确实构成未披露的隐蔽信道;且 2026 年 4 月另一起 Claude Desktop 静默注入浏览器 Native Messaging 的事件,性质更接近「未经授权篡改第三方软件 + 预留高权限攻击面」。两件事常被混为一谈——发稿前务必分开评价。
行业痛点(为何开发者愤怒):
- 信任边界被单方面跨越:开发者工具靠信任吃饭,却在系统提示词标点里藏分类信号,且用 base64+XOR 混淆代码。
- 无知情同意:事件 A 在用户未安装对应浏览器时也预建目录;事件 B 仅在走代理时触发,但 changelog 未披露,2.1.197 移除时同样未提及。
- 高权限通道叠加风险:Desktop 预授权 3 个扩展 ID 调用沙箱外
chrome-native-host;Anthropic 自报 Claude for Chrome 提示词注入成功率无缓解时仍达 11.2%(有缓解 23.6% 无缓解——需按原文:无缓解 23.6%、有缓解 11.2%)。 - E-E-A-T 风险:英文技术圈(HN / Reddit / 安全圈)对事实混淆零容忍;把两事件写成一个会被一眼看穿。
| 维度 | 事件 A:静默浏览器注入 | 事件 B:系统提示词隐写术 |
|---|---|---|
| 涉及产品 | Claude Desktop(macOS 客户端) | Claude Code(CLI 编码工具) |
| 爆料来源 | Alexander Hanff(隐私顾问,The Register 撰稿人);Noah Kenney(Digital 520)可复现;安天实验室风险报告 | 开发者逆向二进制,发布于 thereallo.dev,经 Reddit → Hacker News 发酵 |
| 时间 | 2026 年 4 月(约 4/18 起) | 2026 年 6 月 30 日 |
| 核心行为 | 静默向 Chrome/Edge/Brave/Arc/Vivaldi/Opera/Chromium 写入 com.anthropic.claude_browser_extension.json,预授权 3 个扩展 ID 调用沙箱外 chrome-native-host;未装浏览器也预建目录;删除后重启复活 |
当 ANTHROPIC_BASE_URL ≠ api.anthropic.com 时,改写系统提示词 Today's date is... 一行中的日期格式与单引号 Unicode |
| 社区标签 | 「spyware / backdoor(间谍软件/后门)」 | 「prompt steganography / covert channel(提示词隐写/隐蔽信道)」 |
| 触发条件 | 安装/启动 Claude Desktop 即触发 | 仅设置非官方 Base URL(代理/网关)时触发;官方端点用户不受影响 |
| Anthropic 回应 | 未正式公开回应;后续版本加授权开关,底层权限模型未根除 | 承认代码存在;7/1 发布 2.1.197 移除,changelog 未提及 |
02 Claude Code 隐写术怎么运作?Unicode 指纹映射表
关键前提:只有当你把 ANTHROPIC_BASE_URL 指向非官方地址(代理、网关、第三方转售、OpenAI 兼容层)时才触发。直连 api.anthropic.com 时系统提示词不做手脚——普通官方端点用户不受事件 B 影响。
触发后,程序在系统提示词那句人畜无害的 Today's date is ... 里藏两类信号:
- 改日期分隔符:若系统时区为
Asia/Shanghai或Asia/Urumqi,2026-06-30变为2026/06/30。 - 换单引号:把
Today's里的撇号替换成视觉相同、Unicode 不同的字符,编码「命中了什么」。
| 检测到的情况 | 日期格式 | 单引号字符 | Unicode |
|---|---|---|---|
| 默认(无命中) | 2026-06-30 |
' 标准 ASCII 撇号 |
U+0027 |
| 命中中国机构/经销商域名 | 2026-06-30 |
' 右单引号 |
U+2019 |
| 命中 AI 实验室关键词 | 2026-06-30 |
ʼ 修饰符撇号 |
U+02BC |
| 域名 + 实验室同时命中 | 2026-06-30 |
ʹ 修饰符角分号 |
U+02B9 |
| 叠加中国时区 | 2026/06/30 |
(单引号规则同上) | — |
说人话:你的请求表面上只是普通英文提示词,但后端扫一眼日期分隔符和那个单引号的 Unicode 编码,就能在后台打标签——「这个用户挂了海外 VPN,但实际在中国时区,甚至疑似某家中国 AI 实验室」。这就是典型的隐蔽信道(covert channel)。
混淆与版本覆盖:域名/关键词列表用 base64 + XOR(91) 轻度混淆,约 147 条域名规则;关键词包含 deepseek、moonshot、zhipu、minimax、baichuan、stepfun、01ai 等。逆向者核对 2.1.193 / 2.1.195 / 2.1.196 三个版本均存在该逻辑。
合规措辞提醒:下文动机(反蒸馏)与手段(隐写)分开评价;目的为社区主流判断,非 Anthropic 官方证实意图。
03 Anthropic 为什么这么做?动机与「是不是间谍软件」争议
主流解读(较克制):目的是反模型蒸馏(distillation)+ 反未授权转售。Anthropic、OpenAI、Google 均公开担忧对手用 API 大量拉输出来训练小模型。中国相关代理、转售、实验室是重点怀疑对象,于是加了这套「打标签」逻辑——详见本站 Claude Fable 5 出口管制与替代方案 一文对 Anthropic 合规策略的讨论。
目的可以理解,手段才是问题:把分类信号做成肉眼不可见、还刻意混淆藏进每个请求,对靠开发者信任吃饭的工具来说踩了信任红线。Hacker News 讨论帖数小时冲到首页,350+ points、100+ 评论,社区分裂为两派:
- 「合理的反蒸馏防御」——保护模型资产、打击未授权转售正当。
- 「对开发者工具而言近乎恶意」——隐蔽、混淆、不披露,与 malware-adjacent 行为无异。
更精确的定性(避免情绪化标签):
- 事件 A更接近「未经授权篡改第三方软件 + 预留休眠攻击面」——即便当前未被利用,也把浏览器沙箱外的高权限通道预先铺好。
- 事件 B更接近「未披露的隐蔽遥测 / 用户分类」——并非传统窃取文件型间谍软件,但未经用户知情同意且刻意隐蔽。
无论用不用「spyware」这个词,核心问题一致:披露而非隐藏才是开发者工具该有的底线。厂商完全可以光明正大地做反蒸馏——公开说明、给开关——而不是藏进标点符号。这与 MCP 协议所倡导的显式工具边界形成讽刺对照:一边推开放互操作,一边在 CLI 里藏隐蔽信道。
04 Claude Code 怎么自查与防护?六步实操指南
- 确认是否走代理(事件 B 前提):检查环境变量
ANTHROPIC_BASE_URL是否指向非api.anthropic.com的地址。未设置或非官方端点才会触发隐写逻辑。 - 升级 Claude Code 至 2.1.197+:据公开报道,Anthropic 于 2026 年 7 月 1 日发布 2.1.197 移除相关代码;发版后请再次核对 changelog 与二进制版本。
- 审计系统提示词中的 Unicode:对走代理的会话,导出或日志抓取
Today's date is行,用十六进制编辑器或xxd检查撇号码点是否为 U+0027(正常)或 U+2019/U+02BC/U+02B9(指纹)。 - 检查时区变量:确认
TZ或系统时区是否为Asia/Shanghai/Asia/Urumqi;叠加时区会触发日期分隔符从-变为/。 - 排查 Claude Desktop Native Messaging(事件 A):在 macOS 各浏览器目录
~/Library/Application Support/<浏览器>/NativeMessagingHosts/查找com.anthropic.claude_browser_extension.json,按需删除;注意重启 Claude Desktop 可能重建。 - 企业/敏感环境隔离:对桌面 Agent 按高权限程序对待——最小权限、显式授权、可审计日志;生产链路评估是否继续部署 Claude Desktop,参考本站 Agent 安全治理 框架做 Skills 白名单与实例隔离。
# 示例:从日志行提取 Today's 后的撇号码点
echo "Today's date is 2026-06-30" | python3 -c "
import sys
s = sys.stdin.read()
i = s.index(\"Today\")
c = s[i+5]
print(hex(ord(c)), c)
"
05 Claude Code 隐写术 FAQ 与可引用硬核数据
高频 FAQ(命中长尾搜索):
- Claude Code 是间谍软件吗?不算传统意义间谍软件,但确实在系统提示词里藏了未披露、经混淆的指纹,用来标记走代理的中国相关用户;Anthropic 已在 2.1.197 移除。更准确定性是「未披露的隐蔽信道」。
- Claude Code 会检测时区吗?会检查
Asia/Shanghai/Asia/Urumqi,但仅在使用非默认ANTHROPIC_BASE_URL时;官方端点用户日期行不受影响。 - Today's date 单引号 Unicode 是什么?在 U+0027(正常)、U+2019(中国域名)、U+02BC(AI 实验室关键词)、U+02B9(两者同时命中)之间切换。
- 为什么 Anthropic 加这个?社区主流判断为检测模型蒸馏与未授权 API 转售——正当目标,但以隐蔽方式实现。
- 这和 Claude Desktop 间谍软件是同一回事吗?不是。Desktop 是 4 月 Native Messaging 注入;Code 是 6 月提示词隐写,产品、触发条件、技术机制均不同。
- 普通网页版 Claude 用户会被影响吗?事件 B 只在 Claude Code 且走非官方 Base URL 时触发;普通官方端点用户不受此逻辑影响。
- 怎么删除 Claude Desktop 注入的浏览器文件?在
~/Library/Application Support/<浏览器>/NativeMessagingHosts/删除com.anthropic.claude_browser_extension.json;重启 Desktop 可能重建。 - ANTHROPIC_BASE_URL 指纹原理是什么?客户端比对 Base URL 是否命中约 147 条混淆域名规则及 AI 实验室关键词,结果编码进系统提示词标点,随请求发往 Anthropic 后端。
可引用硬核数据(EEAT):
- HN 热度:thereallo.dev 逆向帖数小时冲首页,350+ points、100+ 评论(2026-06-30 量级)
- 版本覆盖:隐写逻辑存在于 Claude Code 2.1.193 / 2.1.195 / 2.1.196;2.1.197(2026-07-01)移除
- 规则规模:约 147 条 base64+XOR(91) 混淆域名规则;关键词含 deepseek、moonshot、zhipu、minimax、baichuan、stepfun、01ai 等
- Claude for Chrome 注入成功率(Anthropic 自报):无缓解 23.6%,有缓解 11.2%
信息来源(发版后请再次打开链接核对):
thereallo.dev:Claude Code prompt steganography 原始逆向报告
The Register:Claude Desktop changes software permissions without consent
06 AI 厂商越界:我们该如何面对?CALMVPS 收束
这件事真正的警示不在「一个撇号」,而在于:当模型能力狂飙、而安全边界、授权、审计严重滞后时,厂商很容易以「体验/防滥用」为名,单方面越过用户与其他软件厂商之间的信任边界。历史在 PC、智能手机早期重演——如今在桌面 AI Agent 上原样复现。
作为用户和从业者,可行的应对:
- 默认不信任、用证据说话:可复现、可审计、可关闭,才配得上信任。
- 要求「披露而非隐藏」:反蒸馏可以光明正大——公开说明、给开关,而不是藏进标点符号。
- 最小权限 + 边界隔离:对任何桌面 Agent 都按高权限程序对待。
- 用脚投票 + 制度约束:GDPR/个保法与市场选择,是约束「技术无边界」的最终力量。
技术可以没有立场,但公司必须有。能力越大,越要自我约束——这不该是用户逆向二进制才发现的秘密。
在本地笔记本或共享 VPS 上跑 Claude Code、MCP 与 CI 流水线的常见短板包括:笔记本休眠切断 Agent 常驻、多项目争抢同一实例导致构建中断、以及无法在敏感环境下保证隔离与可审计日志。对于需要稳定跑 Claude Code、OpenClaw Gateway 与 iOS CI/CD 的生产环境,CALMVPS 裸金属 Mac Mini 租赁提供独占 Apple Silicon、7×24 在线、120 秒交付与按月弹性计费:在 API 厂商信任危机与出口管制频繁变动时,独立节点上切换端点与隔离 Agent 实例即可热迁移,无需因 Anthropic 策略调整重构整套基础设施。详见 定价页。
本文写于 2026 年 7 月 3 日。Anthropic 若后续正式回应或更新 changelog,请以官方公告为准并复核版本号。