AI News HubLIVE
サイト内リライト2 分で読了

Xaidr – AIエージェント向けのプロセス内ランタイムセキュリティとガバナンス

Xaidr は、AIエージェント向けのローカル・プロセス内ランタイムセキュリティライブラリで、必須依存関係はゼロです。ユーザー入力、ツール呼び出し、モデル出力、エージェント間(A2A)プロトコルメッセージを検査し、プロンプトインジェクション、脱獄、危険なツール呼び出し、秘密情報の漏えい、プロトコル悪用を実行前にブロックまたはフラグします。デフォルトは監視モードで、任意で強制モードやYAMLポリシーにも対応します。

ソースHacker News AI著者: delphiaisec

Xaidr は、AIエージェントの実行層に注目したプロセス内ランタイムセキュリティツールです。多くのガードレール製品がモデル境界でテキストを判定するのに対し、Xaidr はプロンプトがシェルコマンドやデータベース呼び出し、HTTPリクエスト、ツール起動、別エージェントへの委任に変わる「実行層」で動作します。エージェントが実際に行動を起こす前に、危険な操作を検出してブロックできます。

Xaidr の最大の特徴は、完全にローカルでプロセス内に閉じていることです。バックエンドやアカウント、APIキーは不要で、コアのスキャン経路にはネットワーク通信がありません。デフォルトではデータがプロセス外に出ることはありません。インストールは pip で行え、コアパッケージは必須のランタイム依存関係を一切持ちません。Python 3.10 以上が必要です。

開発者は Sensor オブジェクトを作成し、エージェントループの各境界でスキャンを呼び出します。入力境界では外部からの信頼できないテキストを検査し、ツール境界ではツール名と引数を実行前に検査し、出力境界ではモデルの応答をユーザーに返す前に漏えいチェックを行い、A2A境界では委任メッセージの受信時にプロトコルレベルで検査します。各スキャンは ScanResult を返し、action、score、category、rules、latency_ms などの情報を含みます。

action は4つの値を取ります。allowed は通常実行、flagged は観察のみで続行、blocked は実行拒否、approval_required は人間の承認待ちで一時停止です。停止すべきかを判定するガードは blocked と approval_required の両方をチェックする必要があります。is_allowed だけを使うと flagged でも停止してしまうため、意図した観察動作になりません。

デフォルトは監視モードで、判定は計算・出力されますが、ブロックは行われません。これは意図的な設計で、まず測定してから enforcement_mode="block" で強制することを推奨しています。ただし、宛先ブロックは監視モードを含むすべてのモードで有効です。

Xaidr は自らの適用範囲を明確にしています。UIを提供せず、Falco や Trivy のように既存の監視スタックにアラートを出力します。単一プロセスのセンサーでは、別々のエージェントにまたがる攻撃を関連付けることはできません。また、set_origin() はアプリが指定した主体を記録するだけで、トークンを検証するものではありません。

検出機能は追加設定なしで動作し、エージェントの実行層に実際に存在するリスクをカバーします。プロンプトインジェクションや脱獄、ユニコード類似文字や不可視文字を使った難読化攻撃、危険なツール使用、認証情報やAPIキーなどの機密データ漏えい、ツール引数に埋め込まれた秘密情報、シェル経由のホストデータ外部送信、A2Aプロトコルの悪用、偽造された信頼や委任インジェクション、低権限エージェントが高権限エージェントを誘導する権限昇格などです。内部では正規化、多数のパターンセット、マルチシグナル意図合成、言い換え攻撃を捉える意味論レイヤー、専用データ分析が順に動作します。

さらに、YAMLによる認可ポリシーエンジン、W3C Trace Context に基づくプロセス間委任のトレーサビリティ、stdoutやファイル、webhook、OpenTelemetryへの構造化テレメトリ出力を備えています。LangChain向けの公式ミドルウェアも用意されており、直接APIを使うこともできます。