AIレッドチーミング完全ガイド(Garakチュートリアル付き)
本記事では、AIレッドチーミングの概念、攻撃タイプ(プロンプトインジェクション、機密情報漏洩、過剰な権限など)、OWASP Top 10 for LLM、主要ツール(Garak、PyRIT、DeepTeamなど)について詳しく解説し、Garakを使った実践的な手順を提供します。
今年初め、自律型AIエージェントが古いSQLインジェクションの脆弱性を悪用してマッキンゼーの内部AIプラットフォームに侵入しました。認証情報や人間の指示は不要で、2時間足らずで本番システムに到達し、数百万件のチャットメッセージと数十万件のファイルを暴露しました。この事件は、AIセキュリティが変化し、従来の前提がもはや通用しないことを示しています。
レッドチーミングとは、外部の攻撃者に先んじて自社のAIシステムを能動的に破壊するセキュリティ手法です。軍事用語に由来し、レッドチームが攻撃者、ブルーチームが防御者を担当します。大規模言語モデル(LLM)では、最も悪質な入力をモデルに送り、その反応を観察します。機密情報を漏らさないか?拒否すべき要求に応じてしまわないか?意図された範囲を超えて操作できるか?通常のテストは正常な使用を確認するのに対し、レッドチーミングは積極的な攻撃を想定します。
レッドチーミングは、「分からない」を「分かり、修正済み」に変えることでリスクを低減します。テスト担当者は自ら攻撃し、脆弱性が見つかれば、そのプロンプトだけでなく根本原因を修正し、変更のたびに再テストして問題が再発しないことを確認します。
OWASP Top 10 for LLMは、AIセキュリティリスクの業界標準チェックリストです。プロンプトインジェクション、機密情報漏洩、サプライチェーン、データ汚染、不適切な出力処理、過剰な権限、システムプロンプト漏洩、ベクター/埋め込みの弱点、誤情報、無制限な消費の10項目が含まれます。プロンプトインジェクションは最も一般的で、監査されたAI導入の約4分の3で確認されています。
実際の攻撃タイプ:
- プロンプトインジェクション:モデルが指示とデータを区別できず、攻撃者のテキストをコマンドとして扱う。直接、間接、脱獄(DANなど)の3種類。
- 機密情報漏洩:モデルが非公開データ(システムプロンプト、トレーニングデータ、不正なエンドポイント経由のデータ)を漏らす。マッキンゼー事件はこれに該当。
- 過剰な権限:モデルやエージェントが必要以上のツール、権限、自律性を持つ。
レッドチーミングの手法:
- ドメイン固有テスト:アプリのリスクに特化(例:医療チャットボットで誤った投薬量をチェック)。
- LLMを使った攻撃生成:別のAIに攻撃プロンプトを生成させる。
- オープンエンドテスト:チェックリストなしで自由に試す。
- 新しいモダリティのテスト:画像や音声に隠された指示。
- クラウドソーシング:外部の専門家を多数招いてテスト。
主要ツール:
- Garak(NVIDIA):100以上の攻撃プローブを内蔵し、最速で開始可能。
- PyRIT(Microsoft):複雑な多段攻撃に強力。
- DeepTeam(Confident AI):OWASP Top 10にマッピングし、コンプライアンスレポートとして利用可能。
- Promptfoo(元オープンソース、2026年3月にOpenAIが買収):汎用テストフレームワークで回帰テストとレッドチーミングを統合。
- Giskard:LLMセキュリティと従来のMLテストをカバー。
実践的なワークフロー:攻撃カテゴリと手法を選択、ツールが攻撃プロンプトを生成;モデルに送信し応答を記録;成功した攻撃を評価;脆弱性を修正し再テストします。
まとめ:AIレッドチーミングはLLMアプリケーションのセキュリティを確保する上で不可欠です。体系的な攻撃模拟と修正により、組織は攻撃者に先んじてシステムを強化できます。