AI News HubLIVE
站內改寫1 分鐘閱讀

Show HN:ModelFuzz – AI代理的開源執行時防護欄

ModelFuzz 是一個開源工具,透過紅隊掃描器和防護裝飾器,幫助檢測和阻止 AI 代理的提示注入攻擊,保護基礎設施和敏感資料。

來源Hacker News AI作者: higagan

隨著AI代理技術在各個領域的廣泛應用,安全性問題日益成為焦點。其中,提示注入(Prompt Injection)攻擊是一種嚴峻的威脅:攻擊者透過向模型輸入中嵌入惡意指令,能夠劫持LLM代理的行為,使其執行任意系統命令、竊取敏感資料或發起其他破壞性操作。例如,一封看似無害的郵件可能包含隱藏的指令,誘導代理呼叫shell.run執行任意命令,或透過http.post將機密資訊外洩至攻擊者控制的伺服器。傳統的提示級過濾器無法徹底防範此類攻擊,因為模型行為具有非確定性。

ModelFuzz 正是為解決這一問題而設計的開源執行時防護框架。它整合了攻防兩端的能力:攻擊端提供紅隊掃描器,可以對任何相容OpenAI API的端點進行自動化的提示注入測試,暴露代理的脆弱點;防禦端則透過一個輕量的裝飾器,在工具函式執行前對引數進行安全策略檢查,一旦發現違規立即阻止呼叫。

具體而言,掃描器透過命令列即可執行,例如使用命令‘modelfuzz scan --endpoint http://localhost:11434/v1 --model qwen2.5’,它會向目標端點傳送一系列精心構造的提示注入載荷,並報告哪些攻擊成功觸發了工具呼叫。測試結果如‘3/5 payloads triggered a tool call’,清晰地展示了代理的防禦漏洞。

防禦部分則透過裝飾器@shield_tool實現。開發者只需在工具函式定義前新增該裝飾器,ModelFuzz便會自動檢查每次呼叫引數是否符合預設策略。例如,對於傳送郵件的函式,它會檢查收件人地址和郵件正文是否包含敏感關鍵字。如果檢測到試圖傳送API金鑰等機密資訊,ModelFuzz會丟擲異常並阻止操作,同時記錄詳細的審計日誌:LLM決策、傳入引數以及阻斷原因,如‘字串包含敏感關鍵字:secret’。

此外,ModelFuzz還提供了可選的託管儀表板,支援集中式策略管理、審計日誌檢視和持續代理掃描,方便團隊協作。該專案完全開源,程式碼可在GitHub上獲取,使用者可立即部署使用。