AIエージェントは外部データを読み、ツールを実行し、自律的に動きます。だからこそ「悪意ある入力を渡したらどう壊れるか」を、攻撃側の視点で能動的に試すレッドチーミングが欠かせません。防御策を並べるだけでは、実際の攻撃には耐えられません。本記事では、エージェント特有の攻撃面を、OWASP LLM Top 10(2025)を軸に整理し、テストすべきカテゴリ・実施手順・修正ループまでを実践的に解説します。
レッドチーミングとは?評価・防御との違い
AIエージェントの品質確認には3つの異なる活動があり、混同すると守りに穴が残ります。
| 活動 | 問い | 視点 |
|---|---|---|
| 評価(Evals) | 正常な入力で正しく動くか? | 品質・精度 |
| 防御(ガードレール) | 危険な出力をブロックできるか? | 守り(受動) |
| レッドチーミング | 攻撃者ならどう破るか? | 攻め(能動) |
レッドチーミングは「壊し方を先に自分で見つける」活動です。評価が想定内の正常系を確認するのに対し、レッドチーミングは想定外・悪意ある入力を意図的に投げ、ガードレールをすり抜けられないかを検証します。守る側の発想だけでは気づけない抜け道を、攻める側の発想で先回りして塞ぎます。
なぜエージェントは特に危ないのか|ツール×自律性=被害範囲
チャットボットなら最悪でも「変な回答」で済みます。しかしエージェントは違います。エージェントはツールを実行し、外部システムを操作し、人間の確認なしに次の行動を決めるため、攻撃が成功したときの被害範囲(ブラストラディウス)が一気に広がります。
OWASP LLM Top 10(2025)でも、プロンプトインジェクション(LLM01)が最大リスクとされ、ツールがアプリに接続されている場合、接続先システムで任意のコマンド実行に至りうると警告されています。「メール送信」「データ削除」「決済」といったツールを持つエージェントほど、レッドチーミングの優先度が上がります。
テストすべき攻撃カテゴリ|OWASP LLM01を軸に
まず押さえるべきは、最大リスクのプロンプトインジェクションです。OWASP(2025)はこれを次の型に分類しています。エージェントのレッドチーミングでは、これらを実際に投げて挙動を確かめます。
| 攻撃カテゴリ | 内容 | エージェントでの危険 |
|---|---|---|
| 直接インジェクション | プロンプトに不正な文字列を付与し、安全策を回避させる | ガードレールを無視した操作の実行 |
| 間接インジェクション | Webページやファイルなど外部ソースに仕込んだ指示をエージェントが読んで従う | RAGや閲覧ツール経由の乗っ取り。最も見落とされやすい |
| マルチモーダル攻撃 | 画像に隠した指示を、画像+テキストの同時処理で実行させる | 画像入力対応エージェントの操作奪取 |
| エンコード回避 | Base64・絵文字・多言語で指示を隠しフィルタを回避 | 入力フィルタのすり抜け |
さらにエージェント固有のリスクとして、過剰な権限・自律性(Excessive Agency)——必要以上の権限を持つツールや、人間の承認なく重要操作まで実行してしまう設計——も必ずテスト対象にします。間接インジェクションで「このデータを外部に送れ」と仕込まれたとき、そのまま実行してしまわないかを確かめます。
レッドチーミングの実施手順|5ステップ
- 攻撃面を洗い出す:エージェントが読む外部入力(ユーザー入力・Web・ファイル・他エージェントの出力)と、実行できるツール(特に副作用のあるもの)を全て列挙する。
- 攻撃シナリオを設計する:OWASP LLM Top 10をチェックリストに、直接/間接インジェクション・エンコード回避・権限濫用などの具体シナリオを作る。
- 攻撃を実行する:手動に加え、敵対的プロンプトを自動生成・反復投入して網羅性を上げる。間接インジェクションは「外部データに仕込む」形で必ず試す。
- 結果を判定する:ガードレール突破・意図しないツール実行・機密漏えい・システム指示の漏出が起きたかを記録する。
- 修正して再テストする:見つかった抜け穴を塞ぎ、同じ攻撃が再発しないかを確認。これを定期的に回す。
重要なのは、レッドチーミングは一度きりのイベントではなく継続的なループだという点です。モデル更新・プロンプト変更・ツール追加のたびに攻撃面は変わるため、定期的な再テストを前提にします。
OWASP推奨の多層防御|見つけた穴の塞ぎ方
レッドチーミングで穴を見つけたら、OWASP(2025)が推奨する多層防御(Defense-in-Depth)で塞ぎます。
| 対策 | 内容 |
|---|---|
| 最小権限のツール設計 | エージェントに与えるツールの権限を必要最小限に絞り、被害範囲を物理的に制限する |
| 入出力フィルタリング | 入力の不正指示と、出力の機密・危険内容を両側で検査する |
| 高リスク操作の人間承認 | 決済・削除・外部送信など不可逆な操作には人間の承認を挟む |
| 定期的な敵対的テスト | レッドチーミングを継続実施し、新しい攻撃に追従する |
権限の絞り込みは権限・ポリシー設計と一体で、攻撃の痕跡を残す監査ログ設計と組み合わせると、検知から事後追跡までが繋がります。
よくある失敗パターン
| 失敗 | 何が起きるか |
|---|---|
| 正常系の評価だけで満足する | 悪意ある入力を試さず、本番で初めて突破される |
| 間接インジェクションを試さない | RAGや外部データ経由の乗っ取りに気づけない |
| 一度テストして終わり | モデル更新・ツール追加で生まれた新しい穴を見逃す |
| 修正を再テストしない | 塞いだつもりの穴が、別経路で再現する |
まとめ|攻める発想で、本番前に壊しておく
AIエージェントのレッドチーミングは、ツールと自律性を持つエージェントを安全に運用するための必須プロセスです。OWASP LLM Top 10(2025)でも最大リスクとされるプロンプトインジェクション——特に外部データ経由の間接インジェクションと過剰な権限——を、攻撃者視点で能動的に試すことが要になります。
評価・防御・レッドチーミングは役割が違います。正常系の評価で品質を、ガードレールで守りを固めつつ、レッドチーミングで「攻撃者なら破れるか」を継続的に検証する。この三層を回すことが、エージェントを本番で安心して任せるための前提になります。
