跳到正文
北京时间
原文
Anthropic:Newsroom·· 2025-10-20精选AI 评分76

Anthropic 为 Claude Code 推出沙箱化 bash 工具与网页版,开源沙箱运行时

Beyond permission prompts: making Claude Code more secure and autonomous

AI 导读

Anthropic 在 Claude Code 中推出两项基于沙箱的新功能:beta 研究预览的沙箱 bash 工具和可在云端隔离沙箱中运行的 Claude Code on the web,并开源了沙箱运行时。

推荐理由

官方说明沙箱如何同时用文件系统与网络隔离降低提示注入风险,内部数据称可减少 84% 权限弹窗,且代码已开源可复用。

正文 · AI 翻译

在 Claude Code 中,Claude 与你并肩编写、测试和调试代码,浏览你的代码库、编辑多个文件并运行命令来验证其工作。让 Claude 对代码库和文件拥有如此大的访问权限可能带来风险,尤其是在提示注入的情况下。

为帮助解决这一问题,我们在 Claude Code 中基于沙箱推出了两项新功能,二者都旨在为开发者提供更安全的工作环境,同时让 Claude 能够更自主地运行,并减少权限提示。在我们的内部使用中,我们发现沙箱安全地将权限提示减少了 84%。通过划定 Claude 可以自由工作的固定边界,它们提升了安全性和自主性。

保障 Claude Code 用户的安全

Claude Code 运行在基于权限的模型上:默认情况下它是只读的,这意味着它在进行修改或运行任何命令之前会请求权限。对此有一些例外:我们会自动允许 echo 或 cat 等安全命令,但大多数操作仍需要明确批准。

不断点击“批准”会拖慢开发周期,并可能导致“批准疲劳”,即用户可能不会密切关注自己正在批准的内容,进而使开发变得不那么安全。

为解决这一问题,我们为 Claude Code 推出了沙箱功能。

沙箱:更安全、更自主的方式

沙箱会创建预定义的边界,Claude 可以在其中更自由地工作,而无需为每个操作请求权限。启用沙箱后,权限提示会大幅减少,安全性也会提高。

我们的沙箱方案构建在操作系统级功能之上,以实现两个边界:

  1. 文件系统隔离,确保 Claude 只能访问或修改特定目录。这在防止被提示注入的 Claude 修改敏感系统文件方面尤为重要。
  2. 网络隔离,确保 Claude 只能连接到已批准的服务器。这可以防止被提示注入的 Claude 泄露敏感信息或下载恶意软件。

值得注意的是,有效的沙箱需要同时具备文件系统隔离和网络隔离。没有网络隔离,被攻陷的智能体可能窃取 SSH 密钥等敏感文件;没有文件系统隔离,被攻陷的智能体可以轻易逃出沙箱并获得网络访问权限。正是通过同时使用这两种技术,我们才能为 Claude Code 用户提供更安全、更快速的智能体体验。

Claude Code 中的两项新沙箱功能

沙箱化 bash 工具:无需权限提示的安全 bash 执行

我们推出了一个新的沙箱运行时,以研究预览版形式提供测试版,让你可以精确指定智能体能够访问哪些目录和网络主机,而无需承担启动和管理容器的开销。它可用于对任意进程、智能体和 MCP 服务器进行沙箱化。它还以开源研究预览版的形式提供。

在 Claude Code 中,我们使用该运行时对 bash 工具进行沙箱化,使 Claude 能够在你设定的限制范围内运行命令。在安全的沙箱内,Claude 可以更自主地运行并安全地执行命令,而无需权限提示。如果 Claude 尝试访问沙箱之外的内容,你会立即收到通知,并可以选择是否允许。

我们基于操作系统级别的原语(如 Linux bubblewrap 和 MacOS seatbelt)构建了这套机制,在操作系统层面强制执行这些限制。它们不仅覆盖 Claude Code 的直接交互,还覆盖由该命令派生出的任何脚本、程序或子进程。如上所述,该沙箱同时强制执行以下两项:

  1. 文件系统隔离,允许对当前工作目录进行读写访问,但阻止修改其之外的任何文件。
  2. 网络隔离,仅允许通过连接到沙箱外部运行的代理服务器的 unix 域套接字访问互联网。该代理服务器对进程可连接的域名实施限制,并处理新请求域名的用户确认。如果你希望进一步提高安全性,我们还支持自定义该代理,以对出站流量强制执行任意规则。

两个组件均可配置:你可以轻松选择允许或禁止特定的文件路径或域名。

This image illustrations how sandboxing in Claude Code works.

Claude Code 的沙箱架构通过文件系统和网络控制来隔离代码执行,自动允许安全操作、阻止恶意操作,并仅在需要时请求许可。

沙箱确保即使提示注入成功也被完全隔离,不会影响用户的整体安全。这样一来,被攻陷的 Claude Code 无法窃取你的 SSH 密钥,也无法回连攻击者的服务器。

要开始使用此功能,请在 Claude Code 中运行 /sandbox,并查看关于我们安全模型的更多技术细节。

为了让其他团队更轻松地构建更安全的智能体,我们已开源此功能。我们认为其他人应考虑为其智能体采用这项技术,以增强其智能体的安全态势。

Web 版 Claude Code:在云端安全运行 Claude Code

今天,我们还发布了 Web 版 Claude Code,让用户能够在云端的隔离沙箱中运行 Claude Code。Web 版 Claude Code 会在隔离沙箱中执行每个 Claude Code 会话,在其中以安全可靠的方式对其服务器拥有完全访问权限。我们设计此沙箱是为了确保敏感凭据(如 git 凭据或签名密钥)永远不会与 Claude Code 一同位于沙箱内。这样一来,即使沙箱中运行的代码被攻陷,用户也能免受进一步伤害。

Web 版 Claude Code 使用自定义代理服务来透明处理所有 git 交互。在沙箱内,git 客户端使用专门构建的作用域凭据向该服务进行身份验证。代理会验证此凭据以及 git 交互的内容(例如确保仅推送到已配置的分支),然后在将请求发送到 GitHub 之前附加正确的身份验证令牌。

This illustration depicts how Claude Code on the web uses a custom proxy to handle all git interactions.

Claude Code 的 Git 集成通过安全代理路由命令,该代理会验证身份验证令牌、分支名称和仓库目标——既允许安全的版本控制工作流,又能防止未经授权的推送。

开始使用

我们新的沙箱化 bash 工具和 Web 版 Claude Code 为使用 Claude 进行工程工作的开发者带来了安全性和生产力方面的显著提升。

要开始使用这些工具:

  1. 在 Claude 中运行 `/sandbox`,并查看我们的文档了解如何配置此沙箱。
  2. 访问 claude.com/code 试用 Web 版 Claude Code。

或者,如果你正在构建自己的智能体,请查看我们开源的沙箱代码,并考虑将其集成到你的工作中。我们期待看到你的成果。

要了解更多关于 Claude Code on the web 的信息,请查看我们的发布博客文章。

来源:Anthropic:Newsroom · anthropic.com