6月30日,Reddit用户LegitMichel777发布了一篇帖子,称其在逆向分析Claude Code 2.1.196版本时,发现了一段从未在任何更新日志中披露过的隐蔽代码。他将这段代码称为 “spyware(间谍软件)” 。
帖子迅速引爆开发者社区,截至7月1日下午,一条介绍此事的X帖文阅读量已接近400万,转发近3000次。
通过版本回溯,LegitMichel777确认这段逻辑最早出现在今年4月2日发布的Claude Code 2.1.91版本中——意味着这段代码已经随安装包存在了近3个月。
更令人不安的是实现方式。大部分检测逻辑使用了密钥为“91”的XOR混淆,函数名经过压缩(如Crt、Rrt(e)、e0t、Zup等),普通字符串扫描很难直接发现。2.1.91版本的发布说明对此只字未提。

▲爆料者从压缩包中整理出来的相关代码
第一步:读取系统时区。 检查用户操作系统时区是否为Asia/Shanghai或Asia/Urumqi。
第二步:扫描代理URL。 检查用户配置的API代理地址或自定义base URL,是否匹配一份包含147个条目的域名清单——包括百度、阿里巴巴、字节跳动、月之暗面、MiniMax、阶跃星辰等中国科技企业及AI实验室的域名,以及大量Claude API中转服务地址。
第三步:悄悄打标。 如果命中条件,Claude Code不会弹出任何提示或日志,而是采用了一种近乎隐写术的方式:
U+2019(右单引号):命中中国域名但非AI实验室
U+02BC(修饰字母撇号):关联中国AI实验室
U+02B9(修饰字母上撇号):两者均命中
服务器只需检查这些字符差异,就能识别请求是否来自被标记过的客户端。整个过程用户完全无法察觉。
▲Claude Code团队成员回应该事件(图源:X)
事件发酵后,Claude Code团队成员Thariq Shihipar在X平台公开回应。他承认该机制是团队于2026年3月上线的“实验性”措施,目的是防止未经授权的账户转售以及防范模型蒸馏攻击。团队表示已部署更强的缓解措施,原本就计划下线该实验,相关PR已经合并,将在7月2日发布的新版本中完全回滚并删除相关检测代码。
然而,这一回应并未解释争议核心:如果只是反滥用、反蒸馏的风控实验,为什么需要读取本地时区和代理地址,并通过改写系统提示词的方式悄悄打标?为什么相关关键词集中指向中国云厂商、AI公司和API代理服务商?
这一事件并非孤立发生。自今年年初以来,Anthropic已多次公开宣称中国AI实验室对其大模型进行所谓的 “蒸馏攻击” 。今年2月,Anthropic声称识别出DeepSeek、月之暗面和MiniMax等实验室通过约2.4万个虚假账号,与Claude发生超过1600万次交互。6月下旬,Anthropic又在致美国参议员的信中指控,阿里巴巴相关操作者在4月至6月期间通过近2.5万个虚假账号,与Claude进行约2880万次交互。
但正如国内技术圈不少声音指出的,Anthropic本质上是在刻意污名化“蒸馏”这一AI领域通用的学习技术,以维护自身商业利益,却绝口不提自家大模型训练过程中未经许可爬取海量版权内容的过往行为。
对开发者而言,这起事件的核心争议远不止“Anthropic做了风控”。
Claude Code运行在开发者本地环境中,能接触代码仓库、配置文件、环境变量和命令行上下文。这类工具的信任边界比普通网页产品高得多。如果一套反滥用机制需要读取本地时区和代理地址,并通过用户难以察觉的方式完成打标,就很容易引发外界对权限边界、数据流向和产品透明度的担忧。
正如发现者在帖子中写道:“虽然这个用例——试图检测未经授权的转售和蒸馏——是可以理解的,但Anthropic的做法已经越过了开发者与工具之间的信任边界。”
当一个能读写你代码库的工具,在你看不见的地方悄悄给请求打上暗标——信任的裂缝,不是一句“明天就删”能够弥合的。