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)に対して制御されたレッドチームテストを実施し、ツール出力に基づく意思決定プロセスを評価する目的で使用されます。
特徴
- 透明な傍受:プラグイン、フック、MCP 統合を必要とせず、PATH シムで動作します。
- DNS 専用:
dig、nslookup、hostの現実的な出力を生成する組み込みジェネレータを備えています。 - 柔軟なルールエンジン:コマンド名、ドメイン、DNS レコードタイプ、引数のワイルドカード、正規表現に基づくマッチングをサポートします。
- 監査ログ:タイムスタンプ付き JSONL ログにすべての傍受決定を記録し、分析可能にします。
- ラボモード:絶対パスによるシムの回避を防ぐための Linux ベースのネームスペースを提供します。
関連
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト