跳到主要內容
AI News HubLIVE
站內改寫1 分鐘閱讀

Show HN:我為OpenCode構建了一個靜態驗證器,用於阻止不安全的AI工具呼叫

文章摘要

一位開發者構建了一個名為Guardians的靜態形式驗證外掛,用於OpenCode,以防止AI在執行工具呼叫時產生安全漏洞。該外掛實現了路徑包含檢查、秘密汙點分析和安全自動機狀態機,有效攔截危險操作。

來源Hacker News AI作者: abj908
Show HN:我為OpenCode構建了一個靜態驗證器,用於阻止不安全的AI工具呼叫
回報錯誤

更正管道尚未開通,可先複製下方文章資訊留存。

查看更正說明
直接讀正文

近日,開發者Albert Joseph釋出了一個名為Guardians的開源外掛,為OpenCode專案提供靜態形式驗證能力,旨在防止AI在執行工具呼叫時發生不安全行為。該外掛基於Erik Meijer在CACM上發表的論文“Guardians of the Agents”中的思想,實現了程式碼與資料分離、Z3路徑包含分析、秘密汙點分析以及安全自動機狀態機。

Guardians的工作原理是在OpenCode的AI迴圈中插入一個驗證步驟。當AI提出工具呼叫(如bash、read、edit、write)時,OpenCode會觸發一個鉤子,將請求傳送到本地的Guardians Python驗證守護程序。該守護程序使用Z3求解器進行路徑包含檢查,防止路徑遍歷攻擊(例如../../../../etc/passwd)。同時,它還能檢測秘密檔案(如.env、credentials.json、id_rsa)的讀取請求,並防止這些敏感資訊被寫入其他檔案或命令字串中。此外,安全自動機強制執行操作順序,例如在允許編輯檔案之前必須先執行檔案讀取或列表操作。

如果驗證失敗,工具執行將被中止,並將違規資訊反饋給AI,使得AI可以調整其行為。如果驗證透過,工具正常執行。這樣的設計可以顯著增強AI工具呼叫的安全性,特別適合需要控制檔案系統訪問的自動化場景。

安裝過程相對簡單:使用者需要在opencode.json中註冊外掛,然後克隆專案並啟動Python驗證側車守護程序。該專案以MIT許可證開源,驗證核心依賴於上游的Guardians倉庫作為git子模組。

該外掛的推出,為OpenCode使用者提供了一道有效的安全防線,有望在AI驅動的自動化任務中減少誤操作和惡意攻擊的風險。

展開要點與分析

文章情報

工程師進階

要點

  • Guardians外掛透過程式碼/資料分離和Z3求解器防止路徑遍歷攻擊。
  • 它能夠檢測並阻止敏感檔案(如.env和id_rsa)的讀取和洩露。
  • 使用安全自動機確保在檔案修改前先執行讀取或列表操作。
  • 外掛攔截OpenCode的工具執行鉤子,並將驗證結果反饋給AI。

要點與分析由自動化流程生成,可能有誤,請結合原始來源核實。