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上獲取,用户可立即部署使用。