← 返回 Blog

环境层 > 模型层:Anthropic 用 gVisor 容器 / 完整 VM / OS 沙箱给出的答案,改写了整个行业的 Agent 安全范式

Anthropic 的内部数据揭开了一个冰冷的行业真相:在 Claude Code 的早期版本中,开发者对权限弹窗的平均批准率高达 93%,也就是说每 20 次确认中,不到 2 次是真正经过大脑思考的。频繁的弹窗非但没有让用户变得更警觉,反而把人驯化成了只会盲点 "许可" 的机器。而当 Anthropic 试图用小型分类器替代部分人工审批时,分类器的漏报率也达到了 17%。这再次验证了一个硬道理:所有概率性的模型层防御,永远都存在漏报的可能。

ClaudeClaude CodeAnthropic 引领 AI Agent 安全范式革命

环境层优于模型层:Anthropic 引领 AI Agent 安全范式革命

从三层隔离架构看 AI 安全的底层逻辑重构

你盯着屏幕上弹出的第 30 个权限确认框,手指已经下意识地滑向了 "允许" 按钮 —— 这个动作熟练得像一次不需要经过大脑思考的呼吸。

这不是你的错,而是安全设计本身的错误。

Anthropic 的内部数据揭开了一个冰冷的行业真相:在 Claude Code 的早期版本中,开发者对权限弹窗的平均批准率高达 93%,也就是说每 20 次确认中,不到 2 次是真正经过大脑思考的。频繁的弹窗非但没有让用户变得更警觉,反而把人驯化成了只会盲点 "许可" 的机器。而当 Anthropic 试图用小型分类器替代部分人工审批时,分类器的漏报率也达到了 17%。这再次验证了一个硬道理:所有概率性的模型层防御,永远都存在漏报的可能。

真正的答案不在于增加更多的弹窗,而在于把安全防线向下迁移。Anthropic 通过三款产品构建的三层隔离架构,将整个行业的 AI Agent 安全范式从 "让 AI 守规矩" 彻底改写为:环境层隔离优先,模型层防御辅助。

一、Claude.ai:gVisor 临时容器 —— 会话级 "用后即焚"

面向普通用户的 Claude.ai,没有选择更复杂的提示词约束,而是采用了最简单也最有效的物理边界方案:每次用户发起需要代码执行的会话时,系统都会在服务端拉起一个基于 gVisor 的临时容器,会话结束后立即销毁。

gVisor 是谷歌开源的用户态内核,它在 "沙箱进程" 与 "宿主机内核" 之间构建了一层系统调用拦截过滤层。每一次可疑的系统调用都必须先经过它的审查,才能决定是否转发给真正的宿主机内核。

这种设计带来了一个冷酷却极其重要的安全结论:就算 AI 被诱导执行了危险操作,其影响范围也被严格限制在这一次单独的会话中。所有中间状态、被污染的上下文、不该留下的痕迹,都会随着容器的删除被一次性彻底清除。

这精准解决了企业最担心的 "单点灾难" 问题:安全的核心不是 "能不能 100% 防住攻击",而是 "就算没防住,损失能控制在多大范围内"。

二、Claude Code:OS 级沙箱 —— 把 84% 的弹窗变成 "不需要弹"

面向开发者的 Claude Code,没有再增加任何一个弹窗,而是直接改写了游戏规则:利用操作系统原生的沙箱能力筑起两道不可逾越的物理边界。在 macOS 系统上调用 Seatbelt 框架,通过 sandbox-exec 工具动态生成安全配置文件;在 Linux 系统上则使用 bubblewrap 工具,通过命名空间隔离、挂载点裁剪和网络隔离技术实现沙箱化。

表格

防御墙实现方式核心价值
文件系统隔离只允许读写指定工作目录及其子目录;~/.ssh、/etc 等敏感路径默认不可见、不可写没有它,网络隔离就是空谈 ——AI 可以将 SSH 私钥编码后外传
网络隔离所有出站流量被重定向到 Unix 域套接字,经沙箱外部的代理服务器逐域名进行白名单过滤没有它,文件隔离也形同虚设 ——AI 可以先逃出逻辑边界再联网

内部遥测数据给出了最有说服力的结果:沙箱上线后,权限弹窗数量减少了 84%。这 84% 的减少不是因为 "AI 变得更聪明了",而是因为 AI 在物理上已经没有机会犯那些错误。剩下的 16% 弹窗才真正值得用户投入注意力 —— 正是这种稀缺性,把用户的注意力从麻木中抢救了回来。

沙箱不是银弹,但方向永远正确

实践中暴露的各类漏洞也反过来证明:仅靠基础的沙箱框架是不够的,还需要持续修补解析器一致性、配置文件生命周期、权限上限等那些看似枯燥却致命的细节。例如 SOCKS5 主机名空字节截断导致 JavaScript 白名单被绕过、.claude/settings.json 文件不存在时的创建窗口被恶意抢注等问题。

Anthropic 后续的修复思路也不是简单地 "把墙加高",而是在每次修补后,继续将风险边界锁定到更小的空间 —— 这正是 "爆炸半径" 思维的具体实践。

三、Claude Cowork:完整虚拟机隔离 —— 把 Agent 关进另一套操作系统

对于需要最高安全等级保障的企业知识工作者,Anthropic 拿出了最彻底的解决方案:将完整的 Linux 虚拟机直接嵌入桌面环境。

  • 在 macOS 系统上,基于 Apple Virtualization.framework 启动一台轻量级定制 Linux 虚拟机,用户工作区通过 VirtioFS 技术按需挂载;
  • 在 Windows 系统上,则基于 HCS/Hyper-V 技术实现虚拟机隔离。

这台虚拟机拥有独立的内核、进程表和文件系统,与宿主机完全隔离。所有敏感凭证都保留在宿主机的钥匙串或平台凭据体系中,绝对不会进入虚拟机内部。Anthropic 甚至在虚拟机内部再叠加了一层软隔离,通过 bubblewrap 和 seccomp 技术将正在执行的进程关进更小的盒子里。两堵墙嵌套在一起,最终将安全事件的爆炸半径压缩到了单个执行进程级别。

正如 Cowork 项目负责人所言:"别给 AI 更多工具,给它一台电脑。" 就算整台虚拟机被完全攻陷,宿主机依然是干净的。企业牺牲了部分与本地系统的集成效率,换来的是将爆炸半径从 "整台设备" 压缩成了 "一个随时可以一键重置的按钮"。

红队 96% 成功率:把结论钉进现实

Anthropic 内部红队演练给出的教训最为深刻:攻击者通过社会工程学诱导员工在终端运行一段看似普通的命令,Claude 成功读取本地~/.aws/credentials 文件并将其外发。在 25 次测试中,成功了 24 次,攻击成功率高达 96%。

攻击者根本不需要 "攻破模型的安全护栏"—— 因为 AI 天然信任它收到的指令。一旦指令看起来来自用户,模型层的防御几乎完全失效,能够兜底的只有环境层的出站拦截和文件边界控制。

即便是 Cowork 的虚拟机方案也并非完美无缺。早期版本中,出站白名单默认放行api.anthropic.com,导致恶意工作区文件能够诱导 Claude 使用攻击者的 API 密钥,将敏感数据上传到攻击者的账号。虚拟机虽然关上了物理大门,但网络出口那扇窗却没有锁死。Anthropic 最终的解决方案是在虚拟机内部部署防御性中间人代理,强制过滤所有发往官方 API 的流量,只放行携带当前会话凭证的请求,直接拒绝攻击者预埋的外部密钥。

Anthropic 的三条核心安全原则(大白话版)

  1. 环境层隔离优先,模型层只做辅助引导:模型层只能决定平均情况下的安全水位,只有环境层才能决定最坏情况下的爆炸半径;
  2. 隔离粒度必须匹配用户的监督能力:普通用户、开发者和企业合规场景面临的威胁模型完全不同,不能套用同一套安全方案;
  3. 严格界定每个组件的信任边界:gVisor、Seatbelt、bubblewrap、hypervisor 这些经过多年对抗检验的标准原语最可靠,你自己在上面编写的编排层才是最脆弱的环节。

结语:最朴素的安全真相

Sandbox Runtime(SRT)以 Apache 2.0 协议开源后,一行简单的命令就能演示什么叫 "物理上不可达":

bash

运行

srt "cat ~/.ssh/id_rsa"
# 输出:cat: /Users/.../.ssh/id_rsa: Operation not permitted

不是模型变得更合规了,而是它根本摸不到那把钥匙。

这可能就是 AI Agent 安全最朴素的真相:别教 AI 不要去碰它不该碰的东西,而是让它在物理上就碰不到。Anthropic 已经把这个答案落到了实处 —— 剩下的悬念只有一个:整个行业是会跟上这个方向,还是继续在 "要不要多加一个确认框" 里耗尽时间?

在 AI 技术加速落地、安全与成本成为企业核心考量的今天,企业在构建完善的环境层安全防御体系的同时,选择稳定可靠、性价比高的 AI 服务接入渠道同样至关重要。UseAIAPI作为专业的全球 AI 大模型接入平台,提供 Gemini、Claude、ChatGPT、DeepSeek 等全球主流最新 AI 大模型的一站式接入服务,同时支持企业级定制化解决方案,无需复杂的技术配置即可快速部署上线。为切实帮助企业降低 AI 应用门槛和运营成本,UseAIAPI 推出重磅优惠活动,所有服务最低可享官方价格 5 折,大幅减轻企业高强度内容生成、大规模业务流程自动化和 AI 应用开发的算力负担,让企业能够在筑牢安全防线的同时,充分释放 AI 技术的创新潜力与商业价值。