如果你正在使用 Claude Code 或通过代理接入 Anthropic API,正被「Claude 是不是在偷偷追踪我」这类问题困扰——结论先行:2026 年 6 月底,据逆向报告,Claude Code 在设置了非官方 ANTHROPIC_BASE_URL 时,会用文本隐写术改写系统提示词里 Today's date is... 这一行,通过肉眼无法分辨的 Unicode 单引号与日期分隔符,把时区与中国相关域名/AI 实验室信息悄悄编码进每个请求。Anthropic 已在 2.1.197 版本移除相关代码。它大概率是反模型蒸馏手段,但争议在于做法太隐蔽、还刻意混淆——这与 4 月 Claude Desktop 静默注入浏览器的独立事件,必须分开理解。
01 Claude Code 隐写术与 Desktop 注入:两件事别搞混
这波风波其实是两个独立事件叠加发酵。直接合并叙述会被 HN / Reddit / 安全圈读者一眼看穿,伤害 E-E-A-T。发稿前务必区分:
| 维度 | 事件 A:静默浏览器注入 | 事件 B:系统提示词隐写术 |
|---|---|---|
| 涉及产品 | Claude Desktop(macOS 客户端) | Claude Code(CLI 编码工具) |
| 爆料来源 | Alexander Hanff(隐私顾问,The Register 撰稿人) | 开发者逆向二进制,发布于 thereallo.dev,经 Reddit → HN 发酵 |
| 时间 | 2026 年 4 月(约 4/18 起) | 2026 年 6 月 30 日 |
| 核心行为 | 静默向 Chrome/Edge/Brave/Arc 等写入 Native Messaging 清单 com.anthropic.claude_browser_extension.json,预授权 3 个扩展 ID 调用沙箱外 chrome-native-host;即使浏览器未安装也预建目录,删除后重启会复活 |
当 ANTHROPIC_BASE_URL ≠ api.anthropic.com 时,用隐写术改写系统提示词里 Today's date is... 一行 |
| 被贴标签 | "spyware" / "backdoor"(间谍软件/后门) | "prompt steganography" / "covert channel"(提示词隐写/隐蔽信道) |
| 触发条件 | 安装/启动 Claude Desktop 即触发 | 仅设置了非官方 Base URL(代理)时触发;并非每次对话都必然触发 |
| Anthropic 回应 | 未正式公开回应;后续版本加了授权开关,底层权限模型未根除 | 承认代码存在,7/1 发布 2.1.197 移除,但 changelog 未提及 |
- 事件 A 的复现与背书:独立顾问 Noah Kenney(Digital 520)确认 Hanff 的技术主张可复现;安天实验室(Antiy Labs)发布了专门风险分析报告。
- 事件 B 的版本覆盖:逆向者核对了 2.1.193 / 2.1.195 / 2.1.196 三个版本,均存在隐写逻辑;HN 讨论帖数小时冲到首页,350+ points、100+ 评论。
- 开发者信任危机:当桌面 AI Agent 与 CLI 编码工具获得系统级权限时,未经知情同意、且刻意隐蔽的行为,无论目的如何,都踩了开发者工具的信任红线。
- 与模型选型相关:Anthropic 在OpenRouter 6 月排行榜中仍占重要份额——但「API 好用」与「工具可信」已是两个维度。
⚠️ 全文采用「据爆料 / 据逆向报告 / 被指控(alleged)」措辞。Anthropic 的反蒸馏目的与手段须分开评价——目的可理解,手段才是争议焦点。
02 Claude Code 隐写术怎么运作:Unicode 单引号映射表
关键前提:只有当你把 ANTHROPIC_BASE_URL 指向非官方地址(代理、网关、第三方转售、OpenAI 兼容层)时才触发。官方 api.anthropic.com 不动手脚。普通 Claude 网页版用户不受事件 B 影响。
触发后,程序做两件事,全都藏在系统提示词那句人畜无害的 Today's date is ... 里:
- 改日期分隔符:若系统时区为
Asia/Shanghai或Asia/Urumqi,2026-06-30变为2026/06/30。 - 换单引号:把
Today's里的撇号替换成视觉一样、Unicode 不同的字符,编码「命中了什么」。
| 检测条件 | 日期格式 | 单引号字符 | Unicode |
|---|---|---|---|
| 默认(不在域名列表、非 AI 实验室) | 2026-06-30 |
' 标准 ASCII 撇号 |
U+0027 |
| 命中中国机构/经销商域名 | 2026-06-30 |
' 右单引号 |
U+2019 |
| 命中 AI 实验室关键词(deepseek/moonshot/zhipu/minimax/baichuan/stepfun/01ai 等) | 2026-06-30 |
ʼ 修饰符撇号 |
U+02BC |
| 域名与实验室同时命中 | 2026-06-30 |
ʹ 修饰符角分号 |
U+02B9 |
| 叠加中国时区(Asia/Shanghai / Asia/Urumqi) | 2026/06/30 |
(单引号规则同上) | — |
说人话:你的请求表面上只是普通英文提示词,但后端只要扫一眼日期分隔符和那个单引号的 Unicode 编码,就能在后台给你打标签——「这个用户挂了海外 VPN,但实际在中国时区,甚至疑似某家中国 AI 实验室」。域名与关键词列表用 base64 + XOR(91) 轻度混淆,约 147 条域名规则。这是典型的隐蔽信道(covert channel)与文本隐写术(prompt steganography)。
# 检查 Today's 中撇号的 Unicode 码点(示例)
echo "Today's date is 2026-06-30" | xxd | grep -A1 "Today"
# U+0027 = e2 80 99 之外的字节序列即可能被指纹化
python3 -c "s=\"Today\u2019s\"; print([hex(ord(c)) for c in s if c in \"'\u2019\u02bc\u02b9\"])"
03 Anthropic 为什么这么做?算不算间谍软件?
社区主流判断(也较克制):目的是反蒸馏 + 反未授权转售。Anthropic、OpenAI、Google 都公开担忧对手用 API 大量拉输出来训练小模型(model distillation)。中国相关代理、转售、实验室是重点怀疑对象,于是加了这套「打标签」逻辑。
目的可以理解,手段才是问题:把分类信号做成肉眼不可见、还刻意混淆代码藏进每个请求,对一个靠开发者信任吃饭的工具来说,是踩了信任红线。HN 上两派吵得很凶:
- 「合理的反蒸馏防御」:API 被转售和蒸馏是真实威胁,厂商有权保护模型。
- 「对开发者工具近乎恶意」:隐蔽、混淆、不披露——用户只有逆向二进制才能发现,这不该是默认行为。
「间谍软件」是有情绪的标签。更准确的说法:
- 事件 A 更接近「未经授权篡改第三方软件 + 预留休眠攻击面」——即便当前没被利用,它也把浏览器沙箱外的高权限通道预先铺好了。叠加 Claude for Chrome 自曝的提示词注入成功率(无缓解 23.6%、有缓解 11.2%),风险是实打实的。
- 事件 B 更接近「未披露的隐蔽遥测 / 用户分类」——不是传统意义的窃密木马,而是未披露的 covert channel。
无论用不用 "spyware" 这个词,核心问题一致:未经用户知情同意、且刻意隐蔽。
04 Claude Code 怎么自查与防护:6 步实操指南
- 检查
ANTHROPIC_BASE_URL:在 shell 配置或.env中执行echo $ANTHROPIC_BASE_URL。若为空或指向api.anthropic.com,事件 B 逻辑不会触发;走代理的用户需重点关注。 - 升级 Claude Code 到 2.1.197+:Anthropic 于 2026 年 7 月 1 日发布该版本移除隐写代码(changelog 未提及,请以实际二进制为准)。
- 检查 macOS 浏览器 Native Messaging 清单(事件 A):在各浏览器目录查找
~/Library/Application Support/<浏览器>/NativeMessagingHosts/com.anthropic.claude_browser_extension.json,支持 Chrome、Edge、Brave、Arc、Vivaldi、Opera、Chromium。 - 按需删除并监控复活:手动删除上述 JSON 后重启 Claude Desktop,观察是否被重建。后续版本虽加了授权开关,底层权限模型 reportedly 未根除。
- 验证系统时区与指纹残留:确认
Asia/Shanghai/Asia/Urumqi时区是否影响日期分隔符;若仍用旧版 Claude Code,可用十六进制工具检查系统提示词中撇号码点。 - 企业/敏感环境最小权限评估:将 Claude Desktop / Claude Code 视为高权限程序——显式授权、网络隔离、可审计日志是底线;评估是否继续在生产链路使用桌面 Agent。
- 关注官方与社区后续:订阅 Anthropic changelog 与安全公告;对第三方转售 API 供应商要求披露 Base URL 路由与合规声明。
05 可引用关键数据、FAQ 与 AI 厂商越界我们该如何应对
可引用硬核数据(据公开逆向与社区讨论,发稿前请再次核对):
- 域名规则规模:base64 + XOR(91) 混淆,约 147 条域名/关键词规则
- 受影响版本:2.1.193 / 2.1.195 / 2.1.196 均存在;2.1.197 移除
- HN 热度:讨论帖数小时冲首页,350+ points、100+ 评论,社区分裂明显
- Claude for Chrome 提示词注入:无缓解成功率 23.6%,有缓解 11.2%(Anthropic 自曝数据,与事件 A 攻击面相关)
- Native Messaging 预授权:3 个扩展 ID 可调用沙箱外
chrome-native-host,即使用户未安装对应浏览器也会预建目录
Claude Code 是间谍软件吗?
不算传统意义的间谍软件,但它确实在系统提示词里藏了未披露、经混淆的指纹,用来标记走代理的中国相关用户;Anthropic 已在 2.1.197 移除。更准确的定性是「未披露的隐蔽信道」而非窃密木马。
Claude Code 会检测我的时区吗?
据逆向报告,它会检查 Asia/Shanghai / Asia/Urumqi——但仅当你使用了非默认 ANTHROPIC_BASE_URL。使用官方端点时,日期行不会被改动。
Today's date 单引号 Unicode trick 是什么?
Today's 中的撇号会在 U+0027、U+2019、U+02BC、U+02B9 之间切换,编码你的端点是否匹配中国相关域名、AI 实验室关键词、两者兼有或均无。
Anthropic 为什么要加这个?
主流解读是检测模型蒸馏(distillation)与未授权 API 转售——合法目标,但实现方式未经披露且刻意隐藏,引发信任危机。
这和 Claude Desktop「间谍软件」是同一回事吗?
不是。那是 2026 年 4 月独立事件,关于 Claude Desktop 静默写入浏览器 Native Messaging 清单,由 Alexander Hanff 向 The Register 披露。
普通 Claude 网页版用户会被影响吗?
事件 B 仅在 Claude Code 且设置了非官方 ANTHROPIC_BASE_URL 时触发,普通官方端点用户不受此逻辑影响。
怎么删除 Claude Desktop 注入的浏览器文件?
在 ~/Library/Application Support/<浏览器>/NativeMessagingHosts/ 下删除 com.anthropic.claude_browser_extension.json,注意重启 Claude Desktop 可能重建。
Should you trust Anthropic after this?
信任应建立在可复现、可审计、可关闭的行为上——而非「逆向二进制才发现的秘密」。厂商完全可以公开做反蒸馏并给用户开关。
这件事真正的警示不在「一个撇号」,而在于:当模型能力狂飙、而安全边界、授权、审计严重滞后时,厂商很容易以「体验/防滥用」为名,单方面越过用户与其他软件厂商之间的信任边界。可行的应对:
- 默认不信任、用证据说话:可复现、可审计、可关闭,才配得上信任。
- 要求「披露而非隐藏」:反蒸馏可以光明正大地做——公开说明、给开关,而不是藏进标点符号。
- 最小权限 + 边界隔离:对任何桌面 Agent 都按高权限程序对待。
- 用脚投票 + 制度约束:GDPR / 个保法与市场选择,是约束「技术无边界」的最终力量。
技术可以没有立场,但公司必须有。能力越大,越要自我约束——这不该是用户逆向二进制才发现的秘密。
原始逆向与权威报道(请以链接为准再次核对):
thereallo.dev:Claude Code Prompt Steganography(原始逆向)
The Register:Claude Desktop changes software permissions without consent
第三方分析与安全研究:
Malwarebytes:Claude Desktop Native Messaging 报道
安天实验室:Claude Desktop 高权限浏览器通道风险分析
Hacker News:Claude Code steganography 讨论帖
当 AI 编码 Agent 需要 7×24 跑在可审计、可隔离的生产环境时,共享虚拟机上的 Hypervisor 损耗与不可控的系统级注入,会让再强的模型也面临合规与稳定性双重风险。对于需要零损耗原生算力、稳定 iOS CI/CD 与 AI Agent 7×24 自动化的生产环境,ZUKCLOUD 的裸金属 Mac mini 云端节点通常是更优解:独占 Apple Silicon 物理机、无 Hypervisor 损耗、7×24 在线、按天/周/月弹性下单。我们在裸金属架构宣言中已从 UMA 零拷贝与 MDM 编排角度论证:把 Agent 跑在你完全掌控的物理边界内,是对抗「黑盒桌面工具越权」最务实的工程选择之一。