深度

Claude Code 沙箱隔离深度指南:OS 级文件系统与网络隔离、Auto-allow 模式与逃生舱机制

Claude Code 沙箱隔离深度指南:传统权限模型三大问题(审批疲劳/效率损失/自主性受限)、文件系统隔离(写入限当前目录/读取全系统/OS 级子进程继承)、网络隔离(代理服务器域名控制/allowManagedDomainsOnly)、三平台实现(macOS Seatbelt/Linux bubblewrap/WSL2 支持/WSL1 不支持)、安装启用(/sandbox 命令)、两种沙箱模式(Auto-allow 自动批准 vs Regular 标准流程)、settings.json 完整配置(allowWrite/denyWrite/denyRead/路径前缀/多层合并行为)、工具兼容性(kubectl/watchman/docker 处理方式)、逃生舱机制(dangerouslyDisableSandbox/allowUnsandboxedCommands 禁用)、三项安全收益和沙箱局限性。

2026/3/95分钟 阅读ClaudeEagle

沙箱(Sandboxing)是 Claude Code 的原生安全功能,通过 OS 级原语实现文件系统和网络双重隔离,让 Agent 在定义好的边界内自主运行,同时大幅减少权限提示疲劳。

为什么需要沙箱?

传统基于权限的安全依赖用户持续审批 Bash 命令,导致:

  • 审批疲劳:反复点击「批准」导致注意力下降,反而不安全
  • 效率损失:频繁中断开发流程
  • 自主性受限:Claude 必须等待审批,无法高效工作

沙箱通过预先定义边界解决这些问题:边界内的安全命令无需审批,超出边界则立即触发通知。

有效的沙箱需要同时启用文件系统和网络隔离。只有网络隔离而无文件系统隔离时,受攻击的 Agent 可能通过文件系统后门获取网络访问;反之则可能通过网络泄露敏感文件(如 SSH Key)。

沙箱工作原理

文件系统隔离

默认行为说明
写入权限当前工作目录及其子目录
读取权限整个系统(部分被拒目录除外)
外部写入需要显式授权才能修改工作目录外的文件

这些限制在 OS 级别强制执行,所有子进程命令(包括 kubectlterraformnpm 等)都继承同样的边界,不仅限于 Claude 的文件工具。

网络隔离

通过运行在沙箱外的代理服务器控制网络访问:

  • 域名限制:只有批准的域名可被访问
  • 用户确认:新域名请求触发权限弹窗(启用 allowManagedDomainsOnly 后直接拒绝未允许域名)
  • 全面覆盖:限制适用于所有脚本、程序和子进程

OS 级实现

平台沙箱技术
macOSSeatbelt(内置,开箱即用)
Linux / WSL2bubblewrap
WSL1❌ 不支持(bubblewrap 需要 WSL2 内核特性)

安装与启用

macOS:无需安装,开箱即用。

Linux / WSL2:先安装依赖:

bash
# Ubuntu / Debian
sudo apt-get install bubblewrap socat

# Fedora
sudo dnf install bubblewrap socat

启用沙箱

/sandbox

打开菜单选择沙箱模式。若缺少依赖,菜单显示平台安装指引。

两种沙箱模式

模式说明
Auto-allow mode沙箱内的 Bash 命令自动允许,无需权限提示。无法沙箱化的命令(如需访问非允许主机)回退到常规权限流程;已配置的 ask/deny 规则始终有效
Regular permissions mode所有 Bash 命令经过标准权限流程,即便在沙箱内也需审批,提供更多控制

注意:Auto-allow mode 独立于权限模式设置。即使不在「accept edits」模式,沙箱内的 Bash 命令也会自动执行——包括修改文件的命令。

配置沙箱

通过 settings.jsonsandbox 键配置:

json
{
  "sandbox": {
    "enabled": true,
    "filesystem": {
      "allowWrite": ["~/.kube", "//tmp/build"],
      "denyWrite": ["/secrets/**"],
      "denyRead": ["~/.ssh/**"]
    }
  }
}

路径前缀含义

前缀含义示例
//从文件系统根的绝对路径//tmp/build/tmp/build
~/相对于 home 目录~/.kube$HOME/.kube
/相对于 settings 文件所在目录/build$SETTINGS_DIR/build
./ 或无前缀相对路径(由沙箱运行时解析)./output

多层 settings 合并行为

allowWritedenyWritedenyRead 数组在多层 settings 中合并(不覆盖)。如 managed settings 允许写 //opt/company-tools,用户添加 ~/.kube,最终配置包含两者。

工具兼容性说明

工具/情况处理方式
kubectlterraformnpm 需写外部路径使用 allowWrite 授权特定路径
watchman(Jest 默认使用)与沙箱不兼容,使用 jest --no-watchman
docker与沙箱不兼容,在 excludedCommands 中排除
CLI 工具需要访问特定主机首次使用时授权,后续自动允许

逃生舱机制(Escape Hatch)

Claude Code 内置一个有意为之的逃生舱:当命令因沙箱限制失败时,Claude 会分析失败原因,并可能用 dangerouslyDisableSandbox 参数重试——这类命令进入常规权限流程,需用户审批。

禁用逃生舱(强制所有命令必须在沙箱内运行):

json
{
  "sandbox": {
    "allowUnsandboxedCommands": false
  }
}

禁用后,dangerouslyDisableSandbox 参数被完全忽略,命令要么在沙箱内运行,要么在 excludedCommands 中显式排除。

安全收益

安全能力说明
防止提示词注入即使恶意内容触发危险命令,沙箱边界也能阻止影响超出项目目录
缩小攻击面OS 级强制限制,所有子进程继承边界
透明运行沙箱完全透明,不影响 Claude 正常工作,违规尝试立即通知

沙箱的局限性

  • 不保护 Claude 文件工具本身(Read/Edit/Write),仅限制 Bash 子进程
  • 沙箱是权限系统的补充,不是替代
  • 内存攻击、内核漏洞利用等超出沙箱防护范围

开源

Claude Code 的沙箱实现是开源的,可在 GitHub 查看。


原文:Sandboxing - Claude Code Docs | 来源:Anthropic 官方文档

相关文章推荐

深度Claude Code 沙箱隔离完全指南:文件系统隔离、网络访问控制与 OS 级安全边界Claude Code 沙箱隔离完全指南:文件系统(默认读全机/写当前目录)和网络隔离机制、macOS Seatbelt 和 Linux bubblewrap OS 级执行、两种沙箱模式(Auto-allow/Regular 权限)、allowWrite/denyRead/denyWrite 路径配置、自定义网络代理,以及提示注入防护和已知安全限制。2026/3/3深度Claude Code 环境变量与密钥管理:安全配置 API Key 和敏感信息的完整指南Claude Code 开发中安全处理环境变量和 API 密钥的完整指南:.env 文件规范、dotenv 与系统环境变量的区别、密钥轮换策略、防止密钥泄露到 Git、secrets 加密存储、生产环境的 Vault/AWS Secrets Manager 集成,以及 CLAUDE.md 安全规范配置。2026/3/16深度Claude Code 安全最佳实践:团队项目权限管理与敏感信息防泄漏Claude Code 安全使用完整指南:权限最小化配置(allow/deny 规则)、环境变量与密钥安全管理、CLAUDE.md 安全策略、企业团队管控配置(managed-settings.json)、CI/CD 密钥保护、防止敏感信息泄漏的 10 个规则。2026/3/15深度Claude Code 权限系统深度解析:规则语法、5 种权限模式与 Hooks 扩展Claude Code 权限系统完整解析:三层工具类型(只读/Bash/文件修改)审批规则、/permissions 管理界面(Allow/Ask/Deny 规则 deny→ask→allow 优先顺序)、5 种权限模式(default/acceptEdits/plan/dontAsk/bypassPermissions 及禁用方式)、权限规则语法(Tool/Tool(specifier)/通配符/空格边界规则/Shell 操作符感知)、四种路径前缀格式(//绝对路径/~/home/项目根/相对)、MCP 工具和 Agent 权限规则、WebFetch 网络控制局限性(无法阻止 Bash curl)及三种可靠 URL 过滤方案、PreToolUse Hooks 扩展权限、工作目录扩展(--add-dir/additionalDirectories),以及权限与沙箱互补关系和两个配置示例。2026/3/9深度Claude Code 安全机制全解:权限架构、提示词注入防护、云端隔离与团队安全最佳实践Claude Code 安全机制完整解析:最小权限原则(默认只读/一次性批准/白名单)、四大内置保护(Sandbox/写入范围限制/权限疲劳缓解/Accept Edits)、八大提示词注入防护(权限系统/上下文分析/命令黑名单/隔离 Context/Fail-closed 匹配)、隐私保障与凭证加密、MCP 安全注意事项(Anthropic 不审计)、云端 VM 六大安全控制 vs Remote Control TLS 本地执行,以及个人和团队安全最佳实践。2026/3/6深度Claude Code 权限系统深度解析:Allow/Deny 规则、五种权限模式与通配符语法Claude Code 权限系统完全解析:三类工具默认审批规则、Allow/Ask/Deny 三种规则类型及优先级、五种权限模式(default/acceptEdits/plan/dontAsk/bypassPermissions)、通配符语法详解(空格词边界的关键区别),以及 Read/Edit/WebFetch/MCP/Agent 各工具权限规则示例。2026/3/3