如果你用 AI 編碼代理交付過任何東西 —— Claude Code、Cursor、Aider、Codex、內部工具 —— 那你已經想過這件事了:當代理同時握有 shell 存取、你的 API 金鑰、以及不受限的網路出口時會發生什麼?「一次被劫持的工具呼叫就能把憑據洩漏到攻擊者網域」不是理論,是結構本身。Pipelock 是 Joshua Waldrep 在 PipeLab 專案下發布的開源 AI 代理防火牆,它從那個真正關鍵的架構選擇上回應這個空白:把執行放在代理*進程之外*。Apache 2.0、約 20MB 的 Go 二進制,當前 v2.3.0,GitHub 倉庫 luckyPipewrench/pipelock。
能力切分(capability split)是承重的設計。代理進程持有金鑰,沒有直接的網路存取;代理(proxy)有網路存取,沒有金鑰;流量在兩區之間穿越一道掃描邊界。網路隔離在部署層強制 —— 網路命名空間、iptables、Docker、Kubernetes NetworkPolicy —— 而不是在代理可以把它關掉的應用層。11 層掃描流水線涵蓋:憑據外洩(48 種模式,涵蓋 API key、token、金融帳號、加密私鑰,配 4 種校驗和驗證器),提示注入(25 種模式 + 6 道規範化預處理),SSRF,路徑穿越,按網域的 DLP 預算,以及響應側對零寬字元、同形異義字、leetspeak 編碼繞過的掃描。協定涵蓋 HTTP 正向代理、CONNECT 隧道、WebSocket 框架、Model Context Protocol stdio、以及 Google 的 Agent-to-Agent 協定。Ed25519 簽名的證據回執,SARIF v2.1.0 接入 GitHub Code Scanning,合規映射到 OWASP MCP Top 10、MITRE ATT&CK、歐盟 AI 法案、SOC 2、NIST 800-53。
Waldrep 給出的框架,正是代理安全這一領域一直需要聽到的那個架構論點:*「大多數代理安全工具仍然需要代理配合。那些控件只在代理還願意繼續呼叫它們的時候有效。」*這就是 SDK 和代理(proxy)路徑的分水嶺。每一種「安全靠回呼」的設計都有同一個結構性弱點 —— 一個被攻陷或越獄的代理只要不再呼叫那個安全函式庫,所有控件就蒸發。進程外執行不需要任何配合;網路邊界由作業系統強制,不由代理強制。可以預計,這種模式會成為「凡是在正式環境裡跑代理、又有真實憑據在場」的部署的標配。Pipelock 不是唯一在這個方向上動的專案(沙箱化執行層、用 mTLS 強制的工具權限、Anthropic 自己 Claude Code 的權限系統都在),但它是這次架構轉向最乾淨的一份開源表達。
如果你在正式環境裡跑 AI 代理,帶 shell 存取和帶憑據的 API 呼叫,那這種東西就該放在代理和網路之間 —— 不是要替換代理內的護欄,而是當那些護欄被繞開時的兜底。Apache 2.0 + Go 二進制 + MCP + A2A 涵蓋意味著今天就能部署。整合之前先讀一遍 GitHub README 裡的威脅模型;按網域的 DLP 預算和提示注入的規範化預處理需要按你自己的使用情境調校。SARIF 整合意味著 findings 可以接入你現有的資安管道,不必重建遙測。更大的那個動作是結構性的:別再讓代理自己監管自己。
