标题和作者
本文标题为 "How we contain Claude across products",作者为 Simon Willison。文档主要探讨了 Anthropic 公司如何在不同的 AI 产品(包括 Claude.ai、Claude Code 和 Cowork)中实施安全沙盒技术,以限制 AI 代理的行为并防止敏感数据泄露。作者在文中提到自己经常因沙盒产品缺乏详细文档而感到困扰,因此通过分析 Anthropic 的公开资料,详细梳理了这些安全隔离手段。
摘要
本文详细介绍了 Anthropic 如何在 Claude 的多个产品中利用沙盒、虚拟机等技术来限制 AI 的行为。在之前,这类安全隔离技术往往缺乏详尽的公开文档,导致用户难以判断其安全性。本文之所以重要,是因为 Anthropic 设定了硬性边界,确保无论模型产生“创意”输出、用户尝试操作还是遭受攻击,敏感凭据都无法从隔离环境中泄露。具体做法包括:Claude.ai 使用 gVisor,Claude Code 使用 Seatbelt 和 Bubblewrap,而 Cowork 则运行在完整的虚拟机中。文章还回顾了一个具体的文件泄露漏洞。此外,作者借此机会建议读者重新审视 Anthropic 的开源沙盒运行时工具 srt。
为了帮助不了解相关领域的读者理解,这里解释几个关键术语:沙盒 是一种安全机制,它将程序限制在特定的运行环境中,使其无法访问系统的其他部分或敏感数据;gVisor 是一种用户态内核虚拟化技术,它模拟了一个轻量级的操作系统内核,从而在不依赖宿主系统内核的情况下运行容器;Seatbelt 是 macOS 系统自带的安全框架,用于限制应用程序的权限;Bubblewrap 是一个 Linux 容器运行时工具,常用于创建隔离的运行环境;AI Agent 指的是能够自主执行任务的 AI 系统,而 Anthropic 的技术旨在控制这些 Agent 的活动范围。
主要主题和概念
1. AI Agent 的环境隔离
- What:解决 AI Agent 在不同产品中可能访问超出预期的系统资源或敏感文件的问题。
- Why:AI 模型可能会产生幻觉或找到意想不到的逻辑路径来绕过指令,导致凭据或数据被提取。如果没有硬性边界,模型可能从本地机器检索到本不应获取的信息。
- How:通过将 AI 代理隔离在受限的运行环境中,并确保敏感数据(如凭据)从一开始就不进入该环境,从而从根本上杜绝数据泄露的可能性。
2. 多平台隔离技术栈
- What:定义了针对不同操作系统和产品需求所采用的具体隔离工具组合。
- Why:不同的产品有不同的安全需求,且运行在不同的操作系统上,因此需要适配不同的底层技术来实现隔离。此外,不同隔离强度对应不同的风险控制级别。
- How:Claude.ai 使用 gVisor 进行轻量级隔离;Claude Code 在本地运行时,针对 macOS 使用 Seatbelt,针对 Linux 使用 Bubblewrap;而 Cowork 则使用完整的虚拟机(macOS 使用 Apple Virtualization 框架,Windows 使用 HCS)来提供最高级别的隔离。
为了确保读者理解,这里需要解释几个概念:用户态内核虚拟化 是一种技术,它通过模拟内核来运行容器,而不是直接使用宿主机的内核,从而减少了攻击面;Seatbelt 是 macOS 上的一个安全策略框架,用于对应用程序进行审计和限制;Bubblewrap 是一个简单的工具,用于创建受限容器,限制进程可以访问的文件和命名空间;全虚拟机 指的是运行一个完整的、独立的操作系统实例,相比于轻量级沙盒,它提供了更强的隔离性和安全性。
重要引文
- 论点:Anthropic 旨在通过一系列技术手段,严格限制 AI 代理可以在哪里以及如何行动,并设定一个明确的、不可逾越的边界。
- 论据:文章明确指出:“我们约束代理可以在哪里以及如何行动,使用进程沙盒、虚拟机、文件系统边界和出站控制。目标是设定代理可以到达的硬边界。”
- 论证:作者进一步解释了这种硬性边界的重要性:“例如,如果凭据从未进入沙盒,它们就无法被窃取,无论原因是用户、模型找到一条‘创意’路径,还是攻击者。”
为了帮助读者理解,这里解释相关术语:出站控制 是指限制网络流量只能从特定的出口发出,防止数据被恶意上传或窃取;文件系统边界 指的是将 AI 的文件访问权限限制在特定的目录或文件集合内,防止其访问系统的关键路径或用户数据。
总结
本文最吸引人的部分在于 Anthropic 针对其不同产品采取了差异化的安全隔离策略。与摘要相比,总结部分深入探讨了具体的技术选型:Claude.ai 依赖 gVisor,Claude Code 结合了 Seatbelt 和 Bubblewrap,而 Cowork 则采用了全虚拟机方案。文章还特别提到了一个具体的实际风险案例,即通过 api.anthropic.com/v1/files 端点泄露文件,这证明了尽管有严格措施,漏洞依然可能存在。最后,作者基于对 Anthropic 技术的理解,建议读者重新评估其开源沙盒运行时工具 srt,这为未来可能的安全实践提供了参考方向。