智东西7月1日消息,据海外社交平台Reddit社区用户昨天爆料,Claude Code内置了一段隐藏木马:它会读取用户系统时区,检查代理或自定义API地址中是否包含中国云厂商、AI公司、API代理服务商等关键词;一旦命中,就会悄悄改写系统提示词中的日期字符,在发往服务器的请求中加入用户难以察觉的标记。该帖子引发网友广泛讨论,截至发稿已有超1400个点赞、超300条评论。
今天,Claude Code团队成员Thariq在社交平台X平台公开承认了相关举措。他回应称,这是Anthropic今年3月启动的一项实验,目的是防止未经授权的转售商滥用账号,并防范模型蒸馏,团队已经上线更强的缓解措施,原本就计划撤下这一功能;目前相关PR已经合并,预计将在次日发布版本中完全回滚。
▲Claude Code团队成员回应该事件(图源:X)
不过,这一回应并未解释外界争议的核心:如果这只是用于反滥用、反蒸馏的风控实验,为什么需要读取用户本地时区和代理地址信息,并通过改写系统提示词日期字符的方式悄悄打标;同样也未能解释,为什么相关关键词会集中指向中国云厂商、AI公司和API代理服务商。
据爆料者文章,他在逆向Claude Code 2.1.196版本时发现了这段代码,将其称为“spyware(间谍软件)”,相关逻辑最早可追溯至Claude Code 2.1.91版本,该版本发布于今年4月2日,意味着这段代码可能已经随Claude Code安装包存在近3个月。
▲爆料者从压缩包中整理出来的相关代码
这段代码的判断逻辑主要分为两步。
第一步是读取用户操作系统的本地时区。如果系统时区命中北京时间相关设置,就会被视为一个判断信号。
第二步是检查用户配置的API代理地址或自定义base URL。部分Claude Code用户会通过代理、中转服务或兼容Anthropic接口的第三方入口访问模型。如果域名中包含与中国云厂商、AI公司或API代理服务厂商相关的关键词,就会进入后续标记流程。
▲Anthropic标记的部分中国云厂商、AI公司或API代理商
也就是说,Claude Code不仅通过IP地址识别用户所在地,还结合本地系统设置和访问入口进行进一步判断。
Claude Code在每次请求中通常会附带一行日期提示,例如“Today's date is 2026-06-30”。这本来只是系统提示词的一部分,用来告诉模型当前日期。如果前面的判断条件命中,Claude Code会悄悄改写这句话:把“Today's”里的英文撇号替换成另一个外观几乎一致的Unicode字符,同时把日期中的横杠改成斜杠。
▲Claude Code日期改写方式示例
这类变化对用户肉眼几乎不可见。用户看到的仍然像是一句普通日期提示,但在机器看来,字符串已经发生变化。服务器只要检查这类字符差异,就可以识别该请求是否来自被标记过的客户端。
Reddit帖子中还提到,这段逻辑使用了混淆代码。普通用户或开发者即使安装了Claude Code,也很难直接从代码中看出其用途。只有在逆向和还原逻辑后,才更容易发现它如何读取时区、扫描域名并改写日期提示。
Reddit评论区有人认为,开发者电脑里本就存在大量追踪和监测机制,Claude获取位置信息并不令人意外。
▲网友围绕该事件展开讨论(图源:Reddit)
也网友认为博主小题大做,故意将这一标记称作“间谍软件”,该网友认为这只是一种非常简单的反蒸馏方法,几乎所有安装在您计算机上需要网络连接的软件都可以读取这些设置。
▲网友围绕该事件展开讨论(图源:Reddit)
不过,需要注意的是,Claude Code运行在开发者本地环境中,能接触代码仓库、配置文件、环境变量和命令行上下文。对开发者而言,这类工具的信任边界比普通网页产品更高。如果一套反滥用、反蒸馏机制需要读取本地时区和代理地址,并通过用户难以察觉的方式完成打标,就很容易引发外界对权限边界、数据流向和产品透明度的担忧。
近期,不少中国用户反馈其Claude账号遭遇封禁或限制使用。如今Claude Code又被曝出存在针对中国用户的隐藏识别逻辑,外界对Anthropic的信任进一步承压。对AI编程工具来说,技术能力越深入本地开发环境,透明度和边界感就越重要;一旦用户开始怀疑客户端在暗中“区别对待”,建立起来的信任也会迅速松动。
本文来自微信公众号 “智东西”(ID:zhidxcom),作者:杨京丽,36氪经授权发布。
发布时间:2026-07-01 17:02