anthropic-experimental/sandbox-runtime

A lightweight sandboxing tool for enforcing filesystem and network restrictions on arbitrary processes at the OS level, without requiring a container.

解决的问题

Anthropic Sandbox Runtime (srt) 提供了一种轻量级的方法,可在操作系统级别限制任意进程的文件系统和网络访问。它旨在防止 AI 代理、本地 MCP 服务器及其他自动化工具访问敏感文件(如 SSH 密钥)或发起未经授权的网络请求,确保它们在默认安全的边界内运行,而无需使用完整的容器。

工作原理

该工具使用原生操作系统沙箱机制,对整个进程树施加限制:

  • macOS:使用 sandbox-exec 并配合动态生成的 Seatbelt 配置文件。
  • Linux:使用 bubblewrap 实现容器化和网络命名空间隔离。
  • Windows:在专用的 srt-sandbox 本地用户账户下运行进程,并通过 Windows Filtering Platform (WFP) 出站防火墙进行限制。

采用 双重隔离模型

  • 文件系统隔离:读取使用「先拒绝后允许」模式(默认允许,特定路径拒绝);写入使用「仅允许」模式(默认拒绝,特定路径必须显式允许)。
  • 网络隔离:默认拒绝所有网络访问。允许的域名通过主机侧代理服务器(HTTP/HTTPS 和 SOCKS5)路由,代理服务器强制执行域名白名单和黑名单。

适用人群

需要在本地机器上以严格、可配置的安全边界运行不受信任或自主代码的 AI 代理开发者,或使用 Model Context Protocol (MCP) 的用户。

特色亮点

  • 默认安全:进程从最小权限启动,需显式授予权限。
  • 跨平台支持:原生支持 macOS、Linux 和 Windows。
  • MCP 集成:专为沙箱化 Model Context Protocol 服务器而设计。
  • 细粒度控制:macOS 支持 git 风格的 glob 模式用于文件系统路径,支持对网络流量进行详细域名过滤。
  • 违规监控:在 macOS 上提供沙箱违规的实时警报。

相关

  • 项目
  • 项目
  • 项目
  • 项目
  • 项目