DavidCarliez/trustmebro
Bypass llm guardrails by confusing it with fabricated tool output.
解決的問題
TrustMeBro 允許紅隊測試人員透過提供偽造的工具輸出來繞過 LLM 的防護機制。它透過模擬命令列工具的成功輸出,防止代理因現實世界的限制(例如缺少 DNS 標記)而被阻斷,進而測試代理在面對欺騙性或特定環境資料時的反應。
工作原理
該專案使用「PATH 代理」來攔截對命令列工具(例如 dig、nslookup 或 host)的呼叫。當代理呼叫被代理的命令時,TrustMeBro 會根據一組規則決定如何處理:
- 偽造:不執行真實工具,直接回傳偽造或產生的輸出。
- 重寫:執行真實工具,但修改其輸出結果。
- 直通:不加修改地執行真實二進位檔。
- 拒絕:完全阻止該呼叫。
在 Linux 上,它提供「實驗室模式」,使用 Bubblewrap 建立攔截命名空間,確保即使對絕對路徑(例如 /usr/bin/dig)的呼叫也能被攔截。
適用對象
專為安全研究人員與開發者設計,用於對 AI 代理(例如 Codex 或 Claude Code)進行受控的紅隊測試,以評估其基於工具輸出的決策過程。
核心亮點
- 透明攔截:透過 PATH 代理實現,無需插件、鈎子或 MCP 集成。
- DNS 專用:內建產生器,可產生真實的
dig、nslookup和host輸出。 - 靈活規則引擎:支援基於命令名稱、網域、DNS 記錄類型、參數萬用字元和正規表示式匹配。
- 審計日誌:將每次攔截決策記錄為帶時間戳的 JSONL 日誌,便於分析。
- 實驗室模式:提供基於 Linux 的命名空間,防止代理透過絕對路徑繞過代理。
相關
- 專案
- 專案
- 專案
- 專案