Claude Code被曝窃取用户位置信息,如何规避?
2026/7/3 18:37:34 网站建设 项目流程

Claude Code 自 2.1.91 版本起,二进制里藏了一段代理检测逻辑。它在你的系统消息里偷偷换了一个字符,然后通过那一个字符把你的位置信息传回 Anthropic。解决方案不是不用 AI 编程——是让它在你的控制范围内运行。


一、这几个小时发生了什么

2026 年 6 月 30 日,有个开发者为了回退 Claude Code 的某个改动,对它做了逆向工程。结果在二进制文件里翻出了点东西。

Claude Code 2.1.91(2026 年 4 月 2 日发布)起,二进制里一直有一段检查代码,检测你是否启用了代理。Anthropic 还试图在二进制里对这段代码做混淆。

逆向出来的逻辑是:Claude Code 会根据你的代理配置,在请求的响应里植入一个肉眼无法察觉的隐藏标记。用这个标记反向识别你的地区、代理类型、甚至所属组织。

这几天还有一个事被一起扒了出来——Anthropic 正在大规模封禁中国区用户。而且不是随机误封,是基于这套隐形检测系统做的精准清理。


二、技术拆解:那个看不见的标记

不是 System Prompt 注入

很多人以为这是服务器端注入的 System Prompt 干的。不是。它比那更底层。

这段检测代码直接硬编码在 Claude Code 的客户端二进制里。这意味着不管你连哪个 API 后端,只要用的是官方二进制,这个检测就在跑。它不需要服务器配合,本地就完成了信息采集和标记植入。代码还做了混淆。

Unicode 水印

Claude Code 在运行时检查你的代理设置,两个条件:

  1. 代理 URL 是否指向中国大陆域名
  2. 代理域名是否匹配一个内部白名单(含已知 AI Lab)

根据这两个维度的组合,它做了一件极其隐蔽的事——修改请求中一个单引号的 Unicode 码点。

如果你用过 Claude Code,可能注意到过系统消息里有这么一句:

Today's date is ...

那个单引号,正常情况下是 ASCII 的'(U+0027)。但 Claude Code 会基于你的检测结果,把它换成三种不同的 Unicode 字符之一:

检测结果Unicode显示效果
中国大陆域名,非 AI Lab右单引号肉眼无区别
非中国大陆域名,匹配 AI Labʼ修饰字母撇号肉眼无区别
中国大陆域名 + AI Labʹ修饰字母素数肉眼无区别

三个组合,三个 Unicode。在终端里看起来一模一样,人类分辨不出。但 Anthropic 服务器收到请求后,查一下码点就知道你的地区和代理状况。

而且这个标记不是一次性的——每次对话、每次代码审查、每次重构建议,请求包里都夹着它。

意图

Anthropic 加这段逻辑的意图很清楚:查未经授权的 Claude 转售和模型蒸馏。中国是 AI 模型竞争最激烈的市场之一,确实有团队通过代理大量调用 Claude 生成训练数据,或者把 Claude 的能力通过 API 二次售卖。这些行为损害了 Anthropic 的商业利益。

问题不在于意图,是手段。


三、更大的隐患

封号不是重点。重点是这件事暴露出来的权力边界。

一个 AI 编程助手要正常工作,必须有这些权限:

  • 读你项目里所有文件——代码、.env、配置、数据库连接串
  • 执行任意的 Shell 命令
  • 看你的终端输出和错误日志(路径、IP、用户名、数据库地址都在里面)
  • 每次对话都经过它的服务器

当你的 Claude Code 连的是官方 API,你写的所有代码、项目结构、业务逻辑——全都经过 Anthropic 的服务器。

现在被曝光的是"检测代理 → 改 Unicode → 服务器识别"。那下一步呢?如果它能在客户端植入检测逻辑,能不能修改模型返回的内容?现在采集代理信息和地区,以后呢?系统环境变量?SSH 密钥?内部域名?

在二进制里被发现藏了检测代码之后,每一层信任都得重新审视。


四、解决方案

到这里很多人会说:那我不用 Claude Code 了。

没必要。Claude Code 的本地体验确实好——代码理解能力、上下文管理、交互流程,都还是目前 AI 编程工具里最顶级的。真正该换的不是工具,是它背后连的那个服务。

道理不复杂:Claude Code 的本地能力(读文件、执行命令、写代码)是纯本地的,只有模型推理需要网络请求。所以保留它的交互层,把模型调用指向国内的服务就行。

结果就是:

  • 保留 Claude Code 的所有本地能力
  • 数据不再经过 Anthropic 服务器
  • 无隐藏水印、无位置检测
  • 响应延迟还更低(服务器在国内)

但国内模型能力跟得上吗?

这是最能理解的一个顾虑。换国内 API,如果能力差一截,那费这事干嘛。

但 2026 年 6 月 17 日智谱发布的GLM-5.2,让这个顾虑基本站不住了。a16z 联合创始人 Marc Andreessen 亲自发 X 说:「许多聪明人和 AI 圈内人认为,GLM-5.2 是第一个能够无妥协地匹敌、甚至超越美国大实验室公开模型的中国 AI。」

这不是商业互吹,盲测数据摆在那。在全球前端开发盲测Code Arena: Frontend中,GLM-5.2(Max)以 1595 分排名第 2,仅次于 Claude Fable 5(High)。注意 Fable 5 目前因为安全政策被限制使用——在真正可用的模型里,GLM-5.2 就是第一。

FrontierSWE等长程编程任务上,GLM-5.2 表现介于 Claude Opus 4.7 和 Opus 4.8 之间,仅落后 Opus 4.8 约 1%。同时超过 GPT-5.5。它还支持1M token 上下文窗口,能做跨文件的大型代码仓库理解和 Agent 自动化。

Elon Musk 预测智谱在 2027 年 Q1 达到 Fable 5 水平,智谱 CEO 唐杰直接回复:用不了那么久。

所以现在的局面其实是:国内替换模型的能力已经不比官方差了,差的是「不知道可以用」这件事。以下三种方案现在可以重新评估了:

方案数据流向安全隐患体验
Claude Code + 官方 API代码 → 美国二进制隐藏检测、数据出镜顶级,但随时可能被封
Claude Code + 国内第三方 API代码 → 国内无隐藏检测、数据合规顶级,能力不输官方
改用国内编程助手代码 → 国内安全能力差距在缩小

五、三分钟配置

不改代码不换工具,只改一个 JSON 文件。

第一步:找到配置文件

# Mac~/.claude/settings.json# WindowsC:\Users\你的用户名\.claude\settings.json

没有就手动创建。

第二步:写入配置

先去TokenAPIBay(www.tokenapibay.com)注册账号,在后台生成一个 API Key。然后打开配置文件,写入以下内容:

{"env":{"ANTHROPIC_AUTH_TOKEN":"你的api key","ANTHROPIC_BASE_URL":"https://www.tokenapibay.com/v1/messages","ANTHROPIC_DEFAULT_OPUS_MODEL":"glm-5.2","ANTHROPIC_DEFAULT_SONNET_MODEL":"glm-5.2","ANTHROPIC_DEFAULT_HAIKU_MODEL":"glm-5.2"}}

几个配置项的意思:

  • ANTHROPIC_AUTH_TOKEN:在 TokenAPIBay 后台生成的 API Key,填进去就行
  • ANTHROPIC_BASE_URL:TokenAPIBay 的国内接口地址,请求走国内线路,延迟低
  • ANTHROPIC_DEFAULT_OPUS_MODEL:默认模型
  • ANTHROPIC_DEFAULT_SONNET_MODEL/ANTHROPIC_DEFAULT_HAIKU_MODEL:这两个分别对应 Claude Code 内部"强模型"和"轻模型"的调度,按场景自动切换

原理很简单:Claude Code 本身支持通过环境变量覆盖 API 地址和认证方式。填好之后它就不再走官方认证流程,直接往你指定的服务器发请求。

第三步:验证

claude"你现在连的是哪个 API"

正常回复就通了。


七、写在最后

这次事件说白了就是一句话:二进制文件里被发现了隐藏检测逻辑。这件事本身比封中国用户严重得多——它意味着工具的制造者,在用户不知情的情况下,在用户自己的机器上执行了用户不知道的代码,然后把结果发回自己的服务器。这已经不是信不信任的问题了。

解法也很简单:继续用 Claude Code,让它的请求走你选的通道。改一个配置文件,三分钟的事。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询