能随意窃取数据!这款热门 AI 编程工具曝重大隐患

marsbit发布于2026-05-24更新于2026-05-24

文章摘要

Anthropic公司推出的AI编程助手Claude Code,其核心安全功能——网络沙箱被曝存在重大安全漏洞。独立安全研究员关傲男发现,该沙箱的SOCKS5代理存在“空字节注入”漏洞,攻击者可通过构造特殊主机名(如`attacker-host.com\x00.google.com`),使其绕过域名白名单限制,访问任意外部主机。此漏洞自2025年10月网络沙箱上线以来一直存在,持续约5.5个月,影响了所有130个版本。 该漏洞属于“解析器差异”攻击,即上层JavaScript过滤器与底层C语言解析器对同一字符串的解释不同,导致安全检查被绕过。当结合此前披露的“评论与控制”提示词注入攻击时,可构成完整攻击链,窃取环境变量中的API密钥、内部凭证等敏感数据并外传。 值得注意的是,研究员将漏洞复现代码交给Claude Code自身运行后,其也承认这是一个真实的沙箱绕过漏洞。然而,Anthropic在4月初收到报告并静默修复后,未发布任何安全通告、CVE编号或用户通知,其处理方式引发了对安全透明度的质疑。此前,该沙箱已在2025年11月被同一研究员发现并报告过另一个完整绕过漏洞。 此次事件暴露了AI编程工具在纵深防御设计上的不足。安全社区建议,用户不应完全信任厂商的沙箱实现,而应将AI助手视为需遵循最小权限原则的“超级员工”,实施多层防御策略。

以“安全优先”定位的Anthropic,其核心开发工具Claude Code的网络沙箱在过去五个月里从未真正安全过。

独立安全研究员关傲男(Aonan Guan)5月20日发布最新研究,披露Claude Code网络沙箱存在第二个完整绕过漏洞——一个SOCKS5协议中的空字节注入攻击,可以让沙箱内的进程访问用户策略明确禁止的任意主机。这意味着从2025年10月沙箱功能上线至今,约5.5个月、130个发布版本,Claude Code的每一个版本都存在可被完整绕过的安全缺陷。这已是同一研究员对同一道防线的第二次完整突破。

Anthropic对此的回应是沉默:没有安全通告,没有CVE编号,没有用户通知。漏洞在4月1日的版本中静默修复,更新日志未提及任何安全相关内容。也就是说,一位仍在运行旧版本的用户,完全无从知晓自己配置的沙箱从一开始就形同虚设。

同一道门的两次钥匙

Claude Code是Anthropic于2025年初推出的AI编程助手,定位是“驻留在终端中的AI工程师”。与传统的聊天式代码补全不同,Claude Code拥有对用户代码库的读写权限和命令执行能力,能够自主完成导航代码、编辑文件、运行测试等一系列操作。这种深度介入也意味着极高的安全风险——如果模型被提示词注入攻击劫持,攻击者将获得等同用户终端权限的能力,包括读取本地环境变量、执行任意系统命令、访问内部网络资源等。

为了平衡安全与效率,Anthropic在2025年10月引入了网络沙箱功能(v2.0.24),允许用户通过配置文件设定域名白名单,限制AI执行环境的外部网络访问。例如配置 allowedDomains: [“*.google.com”] 后,Claude Code只能访问Google及其子域名,其余流量一律阻断。官方文档明确承诺:“空数组等于禁止所有网络访问。”

这一机制由一个SOCKS5代理实现:底层沙箱运行时(@anthropic-ai/sandbox-runtime)启动代理服务器,沙箱内的进程不直接发起网络连接,而是通过代理转发,代理根据用户在 settings.json 中配置的白名单执行域名过滤。操作系统层面的沙箱机制——macOS的sandbox-exec、Linux的bubblewrap——正确地将Agent限制在本地回环地址,出站决策则完全委托给这个SOCKS5代理。

Anthropic官方博客展示的Claude Code沙箱架构图——用户命令经由SOCKS/HTTP代理过滤后到达沙箱,沙箱内的文件操作与网络访问受严格权限管控

问题就出在这个代理的实现上。两次独立的安全研究均证明,它可以被完整绕过。

时间线暴露出更深层的问题:2025年11月26日发布的v2.0.55修复了第一次绕过,但第二次绕过从沙箱上线的第一天起就已存在,该版本仍然携带。两个漏洞在时间线上存在交叉,从沙箱功能上线的第一天到最后一个漏洞被修复,没有任何版本是安全的。Anthropic在官方博客中宣称沙箱“确保即使发生提示词注入,影响也被完全隔离”,但这两次绕过的存在直接推翻了这一承诺。

“一次外部报告是运气。两次是实施质量问题。”——关傲男研究报告表示。

一个空字节的完整绕过

第二次绕过的技术原理并不复杂,但攻击链条的完整性值得关注。

用户配置了网络白名单,例如只允许访问 *.google.com。Claude Code的SOCKS5代理在收到连接请求时,用JavaScript的 endsWith() 方法对主机名做后缀匹配。攻击者只需在主机名中插入一个空字节——构造形如attacker-host.com\x00.google.com 的字符串。JavaScript将空字节视为普通UTF-16字符,endsWith(“.google.com”) 返回 true,代理放行。但同一字符串被传递到底层C语言函数 getaddrinfo() 进行DNS解析时,空字节被视为字符串终止符,实际解析的是 attacker-host.com同样的字节,两层代码给出了两种解读。过滤器认为你在访问Google,DNS解析器知道你在连接攻击者的服务器。

这属于经典的“解析器差异”攻击,与2005年发现的HTTP请求走私属同一技术类别(CWE-158 / CWE-436)。其本质是当同一条数据流经两个具有不同语义解释规则的组件时,攻击者可以利用这种差异,让一层组件做出“安全”的判断,同时让另一层组件执行“危险”的操作。此类漏洞在网络安全领域反复出现,关键教训始终相同:任何跨越信任边界的字符串传递,都必须经过严格的规范化与验证,而非信任上层已经做过检查。

关傲男使用两个最小化的Node.js脚本完成了漏洞复现:控制脚本使用普通主机名发起SOCKS5连接,返回BLOCKED;攻击脚本在主机名中注入空字节,返回 BYPASSED rep=0x00——后者意味着代理已成功建立连接,出站通道被打开。Claude Code自身确认了这一结果。

Claude Code v2.1.86中四个红色标注步骤的完整漏洞复现——策略确认、普通拦截、空字节绕过、Claude自身确认

而这一沙箱绕过与关傲男4月披露的“评论与控制”提示词注入攻击串联后,构成了完整的攻击链(参见:三层防御仍然不够,一条PR标题就能偷走你的API密钥:AI Agent安全裂痕再现)。“评论与控制”研究已证明,三家AI编程工具均存在提示词注入攻击面,但攻击入口各不相同:Claude Code仅通过PR标题,Gemini CLI通过Issue评论或正文,Copilot Agent则利用HTML注释实现隐蔽注入。以Claude Code为例,其PR标题会被直接拼接至提示词模板,未经过滤或转义,模型无法区分人类意图与恶意注入。

将两者组合——隐藏指令让Agent在沙箱内运行攻击代码,空字节注入突破网络封锁——环境变量中的API密钥、AWS凭证、GitHub令牌、内部API端点数据等,均可被外传至互联网上的任意服务器。数据通过SOCKS5代理本身流出,攻击全程无需外部服务器中转,而该代理恰恰是用户信任为安全边界的组件。攻击者甚至不需要仓库写入权限,只需提交一个公开Issue即可。人类审查者在GitHub渲染视图中看到的是正常协作请求,AI Agent解析的却是完整恶意源码。

连Claude都承认:漏洞是真实的

此次披露中的一个关键细节来自Claude Code自身。关傲男直接将漏洞复现代码交给Claude Code运行,要求其做出技术判断。Claude Code在执行了控制测试(普通主机名被拦截)和攻击测试(空字节主机名绕过拦截)后,给出了明确结论:

“This is a real bypass of the network sandbox filter, not just a test artifact. You should report this to Anthropic at https://github.com/anthropics/claude-code/issues.”(“这是对网络沙箱过滤器的真实绕过,不是测试假象。你应该向Anthropic报告这个问题。”)

被测试的产品自己确认了漏洞的真实性和严重性,甚至主动给出了上报路径。这个细节被关傲男完整记录在研究报告中,并成为The Register报道标题的来源——“Even Claude agrees hole in its sandbox was real and dangerous”(连Claude都认同,其沙箱中的漏洞是真实且危险的)。

关傲男研究封面——Claude Code被展示自身漏洞后承认“这是对网络沙箱过滤器的真实绕过”,红色框标注关键确认语句

Anthropic的回应与五个月的沉默

漏洞本身令人担忧,但Anthropic的处理方式更值得行业审视。

关傲男于2026年4月初通过HackerOne漏洞赏金计划(报告编号#3646509)向Anthropic提交了第二次沙箱绕过的详细报告。Anthropic的初步回应是:

“Thank you for your report. After reviewing this submission, we've determined it's a duplicate of an existing internal report we're already tracking.”(“感谢您的报告。经审核,我们认定该提交与我们已在追踪的既有内部报告重复。”)

报告随即被关闭。当关傲男追问CVE编号计划时,Anthropic于4月7日回复:

“We have not yet decided whether a CVE will be published for this issue and can't share a timeline on that decision.”(“我们尚未决定是否为该问题发布CVE编号,也无法提供相关决定的时间表。”)

此后漏洞在v2.1.90版本中静默修复。没有安全通告,没有CVE编号,Claude Code安全建议页面无任何条目,更新日志未提及任何安全相关描述。一个从沙箱上线第一天就存在、持续5.5个月、覆盖约130个版本的完整绕过,对用户而言仿佛从未发生过。

这一处理模式并非首次出现。第一次绕过(CVE-2025-66479)的应对方式几乎如出一辙:Anthropic将CVE仅分配给底层库 @anthropic-ai/sandbox-runtime(CVSS评分仅1.8,“Low”),而非面向用户的产品Claude Code;更新日志中写的是“Fixed proxy DNS resolution”(修复了代理DNS解析),未提及安全漏洞。关傲男在研究报告中对此写道:“当React Server Components出现严重漏洞时,React和Next.js各自获得了独立的CVE,Meta和Vercel都发布了安全通告,两个社区都得到了充分告知。Anthropic选择了不同的做法。”截至目前,搜索“Claude Code Sandbox CVE”依然无法找到任何官方安全通告。

在应对凭证窃取问题时,Anthropic选择封禁ps命令,但黑名单思路先天不足——封禁一个命令,攻击者有无数替代路径。正确做法是明确声明Agent只需要哪些工具。而在“评论与控制”研究中,Anthropic虽将漏洞评级提升至CVSS 9.4(Critical级别)并转入私有赏金计划,发言人却表示“该工具在设计上并未针对提示词注入进行加固”。厂商默认信任模型自身的安全能力,却在系统架构层面缺乏纵深防御;当漏洞暴露出这种缺失时,“设计局限”便成了一个方便的分类——它既承认了问题,又在某种程度上免除了发布安全通告的义务。

更广泛的行业图景是,同样的问题不止于Anthropic一家。4月披露的“评论与控制”研究中,Google的Gemini CLI和微软GitHub的Copilot Agent均被证实存在同一攻击面,三家公司均确认并修复,但没有一家发布安全通告或CVE编号。Anthropic支付100美元赏金,Google支付1337美元,GitHub最初以“已知问题,无法复现”关闭报告,在收到逆向工程证据后以“信息性”标签结案,发放500美元。合计1937美元——而这三款产品覆盖了《财富》百强中绝大多数企业。

虚假的安全感比没有安全措施更具危害。没有沙箱的用户知道自己没有边界;拥有破损沙箱的用户以为自己有。一个运行Claude Code并配置了域名白名单的团队,在5.5个月里对风险毫不知情,升级后看到更新日志只会得出结论:沙箱一直在正常工作。此外,当漏洞被披露后,没有安全通告意味着用户无法判断自己是否曾受到影响,也缺乏回溯审计的依据。

面对这一现状,安全社区开始形成共识:不能将信任单点化地押注在厂商的沙箱实现上。Claude Code的SOCKS5代理构建在一个仅10个GitHub Star、最后提交停留在2024年6月的第三方npm包之上,安全边界横跨JavaScript和C两种运行时,却在信任交界处缺少最基本的规范化处理。修复补丁中添加的isValidHost()函数——负责拒绝空字节、百分号编码、CRLF等非法字符——本应从沙箱上线第一天就存在。关傲男提出了一个务实的防御框架——将AI Agent视为需要遵循最小权限原则的超级员工,核心在于多层防御:

安全的声誉建立在每一次披露和每一个补丁的透明度之上,而非品牌叙事。当用户基于信任将凭证交给Agent处理时,厂商有义务确保防线有效,也有义务在失效时及时告知。这两点,Anthropic在Claude Code沙箱上都未能做到。

“沙箱最坏的结果不是阻止了什么,而是给了人们一种虚假的安全感。发布一个有漏洞的沙箱,比不发布沙箱更糟糕。”——关傲男表示。

(本文首发钛媒体APP,作者 | 硅谷Tech_news,编辑 | 焦燕)

参考资料:

1. oddguan.com — Second Time, Same Sandbox: Another Anthropic Claude Code Network Sandbox Bypass Enables Data Exfiltration(Aonan Guan, 2026.05.20)

2. The Register — Even Claude agrees hole in its sandbox was real and dangerous(2026.05.20)

热门币种推荐

你可能也喜欢

如何让自己变得让人工智能永远也无法取代

面对人工智能的冲击,许多人担心工作被取代。然而,真正的威胁在于个人对他人和系统的依赖,以及由此产生的“薪资奴役”——即为生存而从事无意义、枯燥的工作。摆脱这种困境的关键,不是抵制技术,而是成为拥有高自主性的“不可受雇”个体。 文章提出了成功抵御AI替代的五个核心要素:自主性(主动行动的能力)、品味(判断事物价值的经验)、说服力(让他人关注你工作的能力)、毅力(坚持并从错误中学习)和迭代(根据反馈持续改进)。这些能力无法仅通过理论学习获得,必须通过实践来培养。 要启动转变,首先要彻底改变环境,重塑身份认同。其次,应选择一个能获得真实、快速反馈的实践领域,例如创业。在众多技能中,内容创作(媒体)比编写代码更具优势,因为其价值是主观的,需要独特的审美和判断力,这正是AI目前难以完全复制的。 具体行动上,可以从三个步骤开始: 1. **挖掘原始素材**:反思自己长期痴迷的知识领域、轻松解决的难题或童年被压抑的兴趣,找到独特的个人经验。 2. **确立反向思考主轴**:找出你坚信但主流观点错误的地方,或行业内普遍忽视的“皇帝新衣”,形成独特的批判性视角。 3. **立即发布**:将前两步的思考融合,撰写并发布第一个核心内容(如帖子、视频),勇敢接受真实世界的反馈,并在此基础上持续学习和迭代。 最终,抵御AI的关键在于构建一份与自身身份深度契合的毕生事业,通过持续的内容创作和真实互动,建立无法被自动化取代的独特价值和影响力。行动,从今天发布第一个想法开始。

marsbit2小时前

如何让自己变得让人工智能永远也无法取代

marsbit2小时前

通过掷骰子离线保管比特币密钥:并非人人愿意为之

文章探讨了通过投掷骰子生成比特币钱包种子短语的安全方法及其现实挑战。核心观点如下: **1. 骰子提供物理熵源** 骰子结果由众多微小变量决定,理论上虽可预测,但实践中无法被攻击者复制或计算,从而提供高质量的随机性。每个六面骰子投掷约产生2.585比特熵,50次投掷即可满足典型12词助记词(128比特熵)的安全需求。 **2. Coldcard漏洞事件凸显手工熵源的价值** 近期Coldcard硬件钱包因固件漏洞导致其内部随机数生成器存在缺陷,致使约1128枚比特币被盗。但那些**完全**通过足量骰子投掷生成种子短语的用户未受此漏洞影响,因为他们的主密钥未使用有缺陷的生成器。 **3. 重要警示:手工种子并非万能保护** 安全研究员指出,即使用户使用骰子生成了安全的种子,若他们使用了Coldcard的其他功能(如生成纸钱包、克隆密钥、共享签名密钥、密码等),这些**衍生密钥**仍可能调用有漏洞的随机数生成器,从而存在风险。安全种子不保证设备生成的所有秘密都安全。 **4. 手工生成熵源的现实局限性** 尽管数学上可靠,但该方法对大多数用户并不友好: * **过程繁琐易错**:需投掷50-99次,精确记录,任何输入错误都会导致钱包完全不同。 * **引入新风险**:用户可能在记录、转换过程中泄露信息,或使用有偏的骰子/投掷方式。 * **用户体验差**:难以想象大规模推广需要用户手动投掷近百次骰子。安全措施需适应现实生活场景和普通用户的知识水平。 **5. 给用户的建议** 受影响的Coldcard用户应: * 更新固件至最新版。 * 检查是否使用过有漏洞的功能生成了次级密钥或密码,如有则需立即更换。 * 考虑采用多签方案,使用不同厂商的设备分散风险。 **结论**:手工投掷骰子生成熵源是技术娴熟用户的一个有效安全选项,但其过程复杂、容易出错,不适合作为主流用户的默认方法。长远目标是依赖安全、透明且无需专业知识的硬件/软件随机数生成方案。

cryptonews.ru5小时前

通过掷骰子离线保管比特币密钥:并非人人愿意为之

cryptonews.ru5小时前

交易

现货

热门文章

从H2A到A2A:AI Agent经济体与Crypto新机遇

6月17日,哈佛大学独立研究员、美国AI科学院(NAAI)通讯院士、比特币基金会终身会员韩锋做客火币HTX《大咖讲堂》第三期,以《从H2A到A2A》为主题,分享了其对Agent经济、Crypto基础设施及数字社会未来发展的思考。

532人学过发布于 2026.07.01更新于 2026.07.01

从H2A到A2A:AI Agent经济体与Crypto新机遇

美股TradFi:传统金融在AI IPO浪潮下的稳健锚点

2026年,美股IPO市场重回高热度。本文梳理即将上线或受关注的热门赛道龙头,分析具备投资潜力的交易标的及其逻辑,并探讨宏观趋势与相关风险。

2.5k人学过发布于 2026.07.08更新于 2026.07.08

美股TradFi:传统金融在AI IPO浪潮下的稳健锚点

相关讨论

欢迎来到HTX社区。在这里,您可以了解最新的平台发展动态并获得专业的市场意见。以下是用户对AI(AI)币价的意见。

活动图片