Agentic Evidence
エージェント型AIのためのセキュリティ証跡と可観測性
Agentic Evidence は、エージェント型AIの実行に関するセキュリティ証跡をどのように収集、相関付け、評価するかを探求するOWASPのオープンソースリファレンスプロジェクトです。
エージェントの可観測性は、あるイベントがログに記録されたことを示すことができます。セキュリティ調査では、何が起きたのか、どのアイデンティティと権限が関与したのか、どの入力がそのアクションに影響を与えたのか、どのようなポリシー判断がなされたのか、そして入手可能な証跡が実際にどのような結論を裏付けるのかを明らかにする必要があります。
Agentic Evidence は 証跡の十分性、実行の再構築、セキュリティ調査 に焦点を当てています。これはエージェントセキュリティの分類体系やテストプロジェクトを補完するものであり、それらを重複させるものではありません。
プロジェクトステータス: 本プロジェクトはインキュベーション段階にあり、初期実装が計画されています。本書で説明するアーキテクチャとコマンドは意図されたMVPを表すものであり、実装上の決定が確定するにつれて変更される可能性があります。
目標
- 相関付けられた実行イベントとセキュリティイベントからエージェントの実行を再構築する。
- アクションをアイデンティティ、入力、取得されたコンテンツ、ツール呼び出し、認可判断、および結果に結び付ける。
- 証跡の来歴と証跡の欠落を調査者に可視化する。
- 収集された証跡から何を結論付けられ、何を結論付けられないかを実証する。
- コントリビューターがローカルで実行できる、決定論的で再現可能なシナリオを提供する。
- 拡張可能な証跡分類体系と、セキュリティ実務者向けの実践的なガイダンスを公開する。
初期シナリオ
- 良性の実行: 通常のエージェントワークフローのベースラインを確立する。
- 取得コンテンツのポイズニング: 取得されたコンテンツがエージェントのアクションにどのように影響し得るか、また証跡がその関係を捉えているかどうかを実証する。
- ツール記述子の改ざん: 証跡が、どのツール記述子が観測または使用されたかを明らかにできるか、また改ざんが検出可能かどうかを評価する。
シナリオは決定論的であり、合成データを使用する必要があります。実装とテストがその主張を裏付けない限り、本プロジェクトは攻撃が検出可能であると主張してはなりません。
意図されたMVP
最初のリリースは、以下を備えたローカルリファレンスアプリケーションとして計画されています。
- 決定論的なシナリオランナー。
- バージョン管理されたJSON証跡スキーマ。
- OpenTelemetryによる実行テレメトリと相関付け。
- 証跡レコーダーとローカル証跡ストア。
- 実行タイムライン、イベント詳細、証跡の欠落を備えたセキュリティ調査インターフェース。
- エクスポート可能な証跡バンドル。
- 自動テスト、Docker Compose構成、コントリビューター向けドキュメント。
提案する技術スタック
| コンポーネント | 提案技術 |
|---|
| アプリケーション/API | Python with FastAPI、または適切な場合はGo |
| 証跡フォーマット | JSON Schemaを用いたバージョン管理されたJSON |
| テレメトリ | OpenTelemetry SDKおよびOTLP |
| ローカルストレージ | SQLiteおよび/またはJSONフィクスチャ |
| 調査UI | Streamlitまたは同等の軽量UI |
| ローカルデプロイ | Docker Compose |
| テスト | pytestおよびスキーマ検証 |
| 継続的インテグレーション | GitHub Actions |
これらは提案された実装上の選択であり、すべてのコンポーネントが利用可能であることを保証するものではありません。アーキテクチャ上の決定はリポジトリに文書化し、明確な技術的根拠がある場合にのみ変更すべきです。
本プロジェクトが目指さないもの
初期リリースは、以下を意図するものではありません。
- 本番環境向けSIEMや汎用の可観測性プラットフォーム。
- エージェントランタイム、モデルプロバイダー、または自律的な対応エンジン。
- エージェントが安全であること、または記録された証跡が真実であることの保証。
- 認可の強制、実行時のセキュリティ制御、またはインシデント対応の代替。
- 稼働中のLLM、Kubernetes、またはクラウドインフラストラクチャへの依存。
テレメトリはそれ自体では証明ではありません。 イベントは欠落していたり、誤って相関付けられていたり、侵害されたコンポーネントによって生成されていたりする可能性があります。アプリケーションは、観測された記録、コンポーネントによる主張、独立して検証された証跡、および不明な点を区別しなければなりません。
概念的なワークフロー
- 決定論的なシナリオを実行する。
- 実行イベントとセキュリティイベントを生成する。
- イベントをエージェント実行およびトレースコンテキストと関連付ける。
- イベント構造を検証し、来歴を記録する。
- 実行タイムライン、認可判断、結果、および証拠の欠落を検査する。
- 証拠バンドルをエクスポートし、期待されるシナリオの検出事項と比較する。
リポジトリのドキュメント
- はじめに: ローカルセットアップと初回実行のワークフロー。
- リソース: 標準、仕様、および関連するセキュリティプロジェクト。
- FAQ: プロジェクトの範囲、証拠の信頼性、テレメトリの制限、およびコントリビューションに関する質問。
プロジェクトの原則
- 主張より証拠を優先: 検出事項は明示的な証拠によって裏付けられなければならない。
- 不確実性を可視化する: 証拠の欠落は結果であり、結論を捏造する理由ではない。
- 再現性: シナリオは決定論的な入力とテスト可能な期待結果を持たなければならない。
- データ最小化: デフォルトでは合成入力を使用し、シークレットや不要な個人データの収集を避ける。
- 相互運用性: 適切な場合は、文書化されたスキーマと確立されたテレメトリの慣例を優先する。
- 設計段階からのセキュリティ: 証拠の取り込み、保存、エクスポート、および調査インターフェースをセキュリティ上重要なコンポーネントとして扱う。
コントリビューション
以下の領域でのコントリビューションを歓迎します:
- 証拠スキーマの設計と検証。
- エージェントセキュリティシナリオと再現可能なテストケース。
- テレメトリの収集とイベントの相関。
- 証拠の来歴、完全性、および分析。
- 調査インターフェースの改善。
- 自動テストとドキュメント。
実質的な作業を開始する前に:
- 既存の issue とプロジェクトのロードマップを確認する。
- 提案する変更を説明する issue を開くか、コメントする。
- プルリクエストは焦点を絞り、該当する場合はテストや再現可能な証拠を含める。
- シークレット、実際の顧客データ、または機密の本番トレースを決して提出しない。
現在の要件については、リポジトリのコントリビューションガイドラインに従ってください。
ライセンス
本プロジェクトは Apache License 2.0 を使用することを意図しており、リポジトリで公開されるライセンスファイルに従います。正式な条件については、リポジトリの LICENSE ファイルを参照してください。
謝辞
Agentic Evidence は OWASP プロジェクトです。現在のリーダーシップ、連絡先、およびプロジェクトのステータスについては、公式の OWASP プロジェクト一覧およびリポジトリのメタデータを参照してください。サードパーティのツールやサービスへの言及は、OWASP による推奨を意味するものではありません。