OpenAI 代码智能体 Codex 在 Windows 上缺少原生沙箱支持,导致用户面临效率低下或缺乏监管的两难。工程团队评估了 AppContainer、Windows Sandbox 等方案后,自研了一套基于受限令牌、自定义用户和防火墙规则的沙箱方案,在安全与便捷间取得平衡。
Codex 是 OpenAI 的编程智能体,运行在开发者笔记本上(CLI、IDE 扩展或桌面应用)。它默认拥有真实用户的权限,既能读取文件、运行测试,也可能带来安全隐患。为此,Codex 需要在操作系统层面建立沙箱环境,约束文件写入和网络访问范围。
但 Windows 并不像 macOS(Seatbelt)或 Linux(seccomp)那样提供现成的隔离工具。工程团队评估了三种方案:
这些方案都不适用,团队决定自研。
首版原型不要求管理员权限。它利用 Windows 的安全标识符 (SID) 和写入受限令牌,让子进程只能写入指定目录,同时通过环境变量(如 HTTPS_PROXY 指向不存在的端口)和欺骗 PATH 目录来阻止网络流量。然而这种网络限制只是“建议性”的,恶意代码可以轻松绕过。
为了真正控制网络,团队引入了 Windows 防火墙,这需要管理员权限。新方案创建了两个本地用户:CodexSandboxOffline(被防火墙拦截网络)和 CodexSandboxOnline(允许网络)。子进程通过这两个用户运行,防火墙规则精确限定网络行为。
启动命令的流程改为:先由 codex.exe 以真实用户身份启动一个辅助进程 codex-command-runner.exe(以沙箱用户身份运行),该进程再创建受限令牌并启动最终子进程。
同时,为了确保沙箱用户能读取真实用户目录,需要异步赋予读取 ACL。整个沙箱系统由三个二进制文件组成:codex.exe、codex-windows-sandbox-setup.exe(处理提权设置)和 codex-command-runner.exe。
最终方案不是最简单的,但每一层复杂性都是为了在不打扰用户的前提下实现真正的安全隔离。
Codex 的沙箱体验现已可用,欢迎试用。
免费获取企业 AI 成熟度诊断报告,发现转型机会
关注公众号

扫码关注,获取最新 AI 资讯
3 步完成企业诊断,获取专属转型建议
已有 200+ 企业完成诊断