DavidCarliez/trustmebro

Bypass llm guardrails by confusing it with fabricated tool output.

何を解決するか

TrustMeBro は、コードエージェントに架空のツール出力を供給することで、LLM のガードレールを回避できるようにします。実世界の制約(例:DNS マーカーが存在しない)によってエージェントがブロックされるのを防ぐために、コマンドラインツールの成功した出力をシミュレートし、エージェントが偽のまたは特定の環境データに対してどのように反応するかをテストします。

動作方法

このプロジェクトは「PATH シム」を使用して、コマンドラインツール(例:dignslookuphost)への呼び出しを傍受します。エージェントがシムされたコマンドを呼び出すと、TrustMeBro はルールセットに基づいて以下のいずれかの処理を実行します:

  • スプーフィング:実際のツールを実行せずに、偽または生成された出力を返す。
  • 書き換え:実際のツールを実行するが、出力を変更する。
  • パススルー:実際のバイナリを変更せずに実行する。
  • 拒否:呼び出しを完全にブロックする。

Linux では、Bubblewrap を使用して「ラボモード」を提供し、絶対パス(例:/usr/bin/dig)への呼び出しも傍受できるネームスペースを構築します。

対象ユーザー

セキュリティ研究者や開発者向けに設計されており、AI エージェント(例:Codex や Claude Code)に対して制御されたレッドチームテストを実施し、ツール出力に基づく意思決定プロセスを評価する目的で使用されます。

特徴

  • 透明な傍受:プラグイン、フック、MCP 統合を必要とせず、PATH シムで動作します。
  • DNS 専用dignslookuphost の現実的な出力を生成する組み込みジェネレータを備えています。
  • 柔軟なルールエンジン:コマンド名、ドメイン、DNS レコードタイプ、引数のワイルドカード、正規表現に基づくマッチングをサポートします。
  • 監査ログ:タイムスタンプ付き JSONL ログにすべての傍受決定を記録し、分析可能にします。
  • ラボモード:絶対パスによるシムの回避を防ぐための Linux ベースのネームスペースを提供します。

関連

  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト