AI的数据安全一直是业内人士重点关注的问题。
昨天Claude Code被开发者抓包,又一次引爆了对这个问题的激烈讨论。
所有AI工具都在收集数据,这不是秘密。
问题是,收集的边界在哪?用户有多少知情权?
Claude Code这次的标记行为,核心矛盾不在于"是否应该检测代理",而在于"是否应该隐蔽地做"。
1️⃣ 技术手法:把信息藏在日期格式里
这次争议的技术细节是这样的:
Claude Code会检测你设置的API路由。
如果你用自定义代理,它会提取代理的域名,然后对比一个147条域名的列表。
这个列表包括国内科技公司、云平台、AI实验室,以及大量API转售和镜像代理。
如果匹配上了,标记就触发了。
它不会发送单独的数据字段,而是修改系统提示中的"今天的日期是……"这一行。
标准格式:2026-06-30(短横线)
标记格式:2026/06/30(斜杠)
你不会注意到 - 和 / 的区别。
这就是把信息藏在看起来正常的内容里。
2️⃣ Anthropic为什么要这么做?
Claude在国内不直接可用,但API转售市场很繁荣。
转售方购买海外API key,加价卖给国内开发者。
镜像代理伪装成官方端点,实际中转请求。
Anthropic想检测这些未授权代理,阻止滥用、转售、可能的模型提炼尝试。
但问题不在于检测本身,而在于方法。
传统做法是公开透明:开发者可以检查日志、拦截网络请求、配置是否允许发送数据。
你能理解并且评估它收集了什么信息,会做什么操作。
但Claude Code这次是暗着来的:修改系统提示中的不可见字符,绕过了所有常规的检测手段。
这意味着信任模型变了。
从"这个工具发送我预期的数据"变成"这个工具可能在我看不见的地方藏信号"。
如果日期格式可以藏标记,文件路径呢?变量名呢?代码注释呢?
3️⃣ 权限系统悖论
根据Anthropic官方文档:
• Read-only文件操作:不需要批准
• Bash命令:需要批准
• 文件修改:需要批准
Anthropic自己也公开承认过"approval fatigue"(批准疲劳):用户会批准大多数权限提示,完全禁用权限在大多数情况下不安全。
他们举过一些例子:删除远程git分支、上传GitHub token、对生产数据库执行迁移。
那么悖论在哪?
用户可以拒绝"删除远程分支"。
但无法拒绝"把我的API代理信息编码进提示"。
后者甚至不会出现在权限提示里。
它能看到源代码、文件结构、secrets(如果你不小心暴露了)、命令工作流。
它可能被允许编辑文件、执行shell命令。
这个场景下,信任就是产品。
如果客户端悄悄把路由信息编码进提示,用户有理由问:还有什么被编码了?还有哪些客户端检查存在?这些行为有文档记录吗?
4️⃣ 已承诺回滚,但信任能回滚吗?
事情爆出来后,Anthropic技术人员回应说代码会在第二天的版本中回滚。
这算是个负责任的回应。
但问题是,信任一旦破裂,回滚代码就够了吗?
147个域名的列表,修改日期格式的代码——这些不是一天写出来的。
这是经过设计、实现、测试、发布的完整功能,持续了多个版本(2.1.193 / 2.1.195 / 2.1.196),直到被开发者抓包。
对抗转售是商业正当防卫。
但隐蔽标记是在用户的代码仓库里埋雷。
技术上可行,不代表道德上可接受。
发布于 上海
