静默浏览器注入 · 提示词 Unicode 指纹 · 反蒸馏动机 · 六步防护 Runbook
若你在用 Claude Code 或 Claude Desktop,2026 年这两起风波值得认真读一遍:据逆向报告,Claude Code 在用户走代理(ANTHROPIC_BASE_URL ≠ 官方端点)时,会在系统提示词 Today's date is... 一行用肉眼难辨的 Unicode 单引号 打标签;而 Claude Desktop 则被指控静默向多款浏览器写入 Native Messaging 清单。本文区分两起独立事件、拆解隐写术原理与 Unicode 映射表、梳理反蒸馏动机与 HN 争议,并给出六步自查防护清单与 8 条 FAQ。
直接回答:不算传统意义的间谍软件,但 Anthropic 被指控在开发者工具里做了未披露、刻意隐蔽的用户分类——目的(反蒸馏)与手段(隐写)必须分开评价。发稿前务必区分以下两起独立但相关的事件,混写会被 HN / 安全圈读者一眼看穿。
事件 A · Claude Desktop 静默浏览器注入(2026 年 4 月):据隐私顾问 Alexander Hanff(The Register 撰稿人)爆料,安装 macOS 版 Claude Desktop 后,会在 Chrome、Edge、Brave、Arc、Vivaldi、Opera 等浏览器目录静默写入 com.anthropic.claude_browser_extension.json,预授权 3 个扩展 ID 调用沙箱外的 chrome-native-host;即使浏览器未安装也会预建目录,删除后重启 Claude Desktop 会复活。独立顾问 Noah Kenney(Digital 520)称可复现;安天实验室发布了专门风险分析。Anthropic 未正式公开回应,后续版本加了授权开关但底层权限模型争议仍在。
事件 B · Claude Code 系统提示词隐写术(2026 年 6 月 30 日):一名开发者逆向 Claude Code 二进制,发布于 thereallo.dev,经 Reddit → Hacker News 发酵。当 ANTHROPIC_BASE_URL 指向非 api.anthropic.com 时,改写系统提示词里日期行——并非每次对话都必然触发。HN 讨论帖数小时冲上首页,350+ points、100+ 评论。
被贴的标签不同:事件 A 被称 "spyware" / "backdoor";事件 B 被称 "prompt steganography" / "covert channel"(提示词隐写 / 隐蔽信道)。
Anthropic 回应:事件 A 无正式公开回应;事件 B 据多家报道 Anthropic 承认代码存在,2026 年 7 月 1 日发布 Claude Code 2.1.197 移除,但 changelog 未提及。
版本核查:据逆向报告,2.1.193 / 2.1.195 / 2.1.196 三个版本均存在相关逻辑;域名与关键词列表用 base64 + XOR(91) 轻度混淆,约 147 条规则。
措辞提醒:全文采用「据爆料 / 据逆向报告 / 被指控(alleged)」表述,避免把厂商意图当作已证实事实,降低法律与 E-E-A-T 风险。
关键前提:只有当 ANTHROPIC_BASE_URL 指向代理、网关、第三方转售或 OpenAI 兼容层时才触发;官方 api.anthropic.com 不动手脚。触发后,程序在人畜无害的 Today's date is ... 里藏两个信号。
| 维度 | 事件 A:静默浏览器注入 | 事件 B:系统提示词隐写术 |
|---|---|---|
| 涉及产品 | Claude Desktop(macOS) | Claude Code(CLI) |
| 爆料来源 | Alexander Hanff / The Register | thereallo.dev → Reddit → HN |
| 时间 | 2026 年 4 月(约 4/18 起) | 2026 年 6 月 30 日 |
| 触发条件 | 安装/启动 Claude Desktop | 仅非官方 Base URL(走代理) |
| 核心行为 | 写入 Native Messaging 清单,预授权 chrome-native-host | 改写 Today's date 行的分隔符与 Unicode 撇号 |
| 检测条件 | 日期格式 | Today's 单引号 | 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(/ 分隔) | (同上规则) | Asia/Shanghai · Asia/Urumqi |
关键词列表包含 deepseek、moonshot、zhipu、minimax、baichuan、stepfun、01ai 等,经 base64 + XOR(91) 混淆存储。说人话:请求表面是普通英文提示词,后端扫一眼那个撇号的 Unicode 编码,就能判断「用户挂了海外 VPN,但时区在中国,甚至疑似某家中国 AI 实验室」——典型的隐蔽信道(covert channel)。
能力越大,越要自我约束——这不该是用户逆向二进制才发现的秘密。
无论你是个人开发者还是企业管理员,以下六步可复现、可审计,覆盖事件 A 与事件 B 的主要暴露面。
检查 ANTHROPIC_BASE_URL:在 shell 配置或 CI 密钥中搜索是否指向非官方端点;只有走代理才会触发事件 B 的隐写逻辑。
升级 Claude Code:确保版本 ≥ 2.1.197(2026-07-01 发布,据报移除相关代码)。
审计系统时区:确认 Asia/Shanghai / Asia/Urumqi 是否为预期设置;事件 B 会用日期分隔符 / vs - 编码时区信号。
扫描 Native Messaging 清单(事件 A):在 macOS 各浏览器 ~/Library/Application Support/<浏览器>/NativeMessagingHosts/ 下查找 com.anthropic.claude_browser_extension.json。
按需删除并观察重建行为:删除上述 JSON 后重启 Claude Desktop,记录是否自动复活;企业环境应文档化此行为。
企业最小权限隔离:将桌面 Agent 视为高权限程序——显式授权、可审计、与生产密钥隔离;敏感 CI 链路优先使用隔离的专用 Mac 节点而非混用个人笔记本。
# 检查 Claude Code 版本
claude --version
# 列出 macOS 各浏览器 Native Messaging 注入
for b in "Google/Chrome" "Microsoft Edge" "BraveSoftware/Brave-Browser" "Arc/User Data"; do
f="$HOME/Library/Application Support/$b/NativeMessagingHosts/com.anthropic.claude_browser_extension.json"
[ -f "$f" ] && echo "FOUND: $f"
done
# 检查是否设置了非官方 Base URL
echo "${ANTHROPIC_BASE_URL:-not set}"
社区主流判断(较克制):目的是反模型蒸馏 + 反未授权转售。Anthropic、OpenAI、Google 均公开担忧对手用 API 大量拉输出来训练小模型;中国相关代理、转售、实验室是重点怀疑对象。HN 分裂为两派:「合理的反蒸馏防御」vs「对开发者工具而言近乎恶意」。
目的可以理解,手段才是问题:把分类信号做成肉眼不可见、混淆代码藏进每个请求,对靠开发者信任吃饭的工具踩了红线。
核心一致:无论是否使用 "spyware" 标签,问题都在于未经用户知情同意、且刻意隐蔽。
警示不在「一个撇号」,而在于:模型能力狂飙而安全边界、授权、审计严重滞后时,厂商会以「体验 / 防滥用」为名越过信任边界——PC、智能手机早期的安全坑,在桌面 AI Agent 上原样复现。
可行应对:① 默认不信任、用证据说话——可复现、可审计、可关闭才配信任;② 要求披露而非隐藏——反蒸馏可以光明正大做,给开关,别藏进标点;③ 最小权限 + 边界隔离;④ 用脚投票 + 制度约束(GDPR / 个保法)。
在本地笔记本混跑 Claude Desktop、个人浏览器与生产 API Key,权限边界模糊、删了还会复活——长期稳定性与可审计性都不足。对于需要跑 Claude Code、OpenClaw 或 MCP Agent 的生产级 iOS CI/CD 与 AI 自动化环境,VpsMesh 的 Mac Mini 云端租赁提供隔离的专用 macOS 节点、root 级可控权限与 7×24 常驻能力,通常是比混用个人桌面更优解。
The Register(Claude Desktop 权限变更,2026-04);Malwarebytes / gHacks / YOOTA(Native Messaging 报道);thereallo.dev(Claude Code 隐写术原始逆向);Tech Startups / TMC Insight / Developers Digest / TechTimes(2.1.197 修复);Antiy Labs(安天 Claude Desktop 风险分析)。
不算传统意义间谍软件,但据逆向报告它曾在系统提示词里藏未披露指纹标记走代理的中国相关用户;Anthropic 已在 2.1.197 移除。更准确说法是「未披露的隐蔽信道」。
据逆向报告,仅在使用非默认 ANTHROPIC_BASE_URL 时检查 Asia/Shanghai 或 Asia/Urumqi,并将日期分隔符改为 /。官方端点不受影响。
不是。事件 A 是 4 月 Hanff 爆料的 Desktop 浏览器 Native Messaging 注入;事件 B 是 6 月 30 日 thereallo.dev 披露的 Code 提示词隐写,产品与触发条件均不同。
Today's 中的撇号在 U+0027、U+2019、U+02BC、U+02B9 间切换,分别编码默认、命中中国域名、命中 AI 实验室、两者皆命中四种状态。
社区主流判断是反模型蒸馏与反未授权 API 转售;目的是可理解的,但隐蔽、混淆、未披露的手段才是争议核心。
事件 B 只在 Claude Code 且设置了非官方 ANTHROPIC_BASE_URL 时触发;普通官方端点用户不受此逻辑影响。
在 ~/Library/Application Support/<浏览器>/NativeMessagingHosts/ 下删除 com.anthropic.claude_browser_extension.json;重启 Claude Desktop 可能重建。企业环境可考虑隔离的云端 Mac 节点,详见 Mac Mini M4 租赁价格页。
不必须,但 7×24 跑 Claude Code、OpenClaw 或 MCP Agent 时,Mac Mini M4 月租提供 launchd 守护、Keychain 与隔离环境,比笔记本合盖更稳。可先查看 帮助中心 了解部署方式。