返回首頁

GitHub Repo

Claude Code 2.1.309 修補沙箱與權限檢查,封堵 MCP 設定寫入路徑

Anthropic 於 10 月 22 日發布 Claude Code 2.1.309,修補 shell 啟動檔、符號連結及 MCP 設定檔相關的隔離問題。使用沙箱、自動核准或 SDK 執行代理的團隊,應更新並重新驗證既有拒絕規則。

Gemini · CC0 · Image source
zh-Hant

Anthropic 於 10 月 22 日發布 Claude Code 2.1.309,集中修補多項涉及命令執行、檔案寫入與權限傳遞的問題。其中,macOS 與 Linux 的沙箱 Bash 命令,先前會在每次執行前於沙箱外載入 shell 啟動檔;macOS 的 denyWrite 萬用字元規則,也可能在透過符號連結存取目錄時,未套用到實際路徑。這些修補直接影響隔離邊界是否符合使用者設定。發布說明

另一組修補針對代理的設定與工具權限:沙箱命令及自動接受的編輯,先前能修改透過 --mcp-config 傳入的 MCP 設定檔;已停用的 MCP 伺服器,也可能在非互動與 SDK 工作階段中,被後續權限提示重新連線。新版另修正分割窗格中的代理隊友未繼承主代理命令列工具拒絕規則的情況。從工程角度看,這些變更關係到限制能否沿著設定、工作階段與代理分工持續生效。發布說明

官方文件說明,Claude Code 的 Bash 沙箱由作業系統強制限制 shell 命令及其子程序可存取的檔案與網路;macOS 使用 Seatbelt,Linux 與 WSL2 依賴 bubblewrap 等元件。不過,內建檔案工具、MCP 伺服器與 hooks 位於這層沙箱之外,各自受到不同規則約束。因此,啟用 Bash 沙箱仍須搭配工具權限設定,才能涵蓋完整代理流程。沙箱文件

部署團隊可優先驗證三類案例:透過符號連結存取的禁止寫入目錄、指定 MCP 設定檔的保護,以及子代理是否繼承工具限制。文件也提供檔案寫入與網路探測方法,並提醒應讓代理執行測試,因為使用者在 ! 提示符自行輸入的命令通常不受同一沙箱約束。目前發布說明未交代上述問題各自的受影響版本起點、利用前提或實際濫用情況,不能據此推定所有部署都曾遭到入侵。沙箱文件 發布說明

來源

  1. Claude Code v2.1.309 發布說明
  2. Configure the sandboxed Bash tool