エージェント セキュリティ チャレンジ

AI モデルが受動的なチャットボットから、Web を閲覧し、コードを実行し、ファイルを管理できる自律的なエージェントへと進化するにつれて、セキュリティ リスクは劇的に増加しています。間違った答えを出すチャットボットは不便です。攻撃者がその指示を操作したため、電子メールを送信する、ファイルを削除する、トランザクションを実行するなどの誤った行動を取るエージェントは、実際の危害を引き起こす可能性があります。OpenAI は、ChatGPT のエージェント機能がプロンプト インジェクションおよびソーシャル エンジニアリング攻撃に対抗するように設計する方法を説明する詳細な技術ブログ記事を公開しました。

プロンプト インジェクションは、悪意のある命令が AI エージェントが処理するデータに埋め込まれる攻撃クラスです。たとえば、攻撃者は Web ページ、電子メール、またはドキュメントに、エージェントに元の指示を無視して、代わりに不正な行動を実行するように指示する命令を隠すことができます。エージェントがこのコンテンツを読んで処理するとき、注入された命令に従う可能性があり、機密データが漏洩したり、攻撃者に代わって有害な行動が取られたりする可能性があります。

多層防御

エージェント ワークフローでのプロンプト インジェクションを防ぐ OpenAI のアプローチは、複数の重複するレイヤーを持つ多層防御戦略に従っています。単一の防御は単体では十分であると考えられません。システムは複数のメカニズムの組み合わせに依存して、個々のレイヤーが回避された場合でも堅牢な保護を提供します。

最初のレイヤーは指示階層です。ChatGPT のエージェント機能は、異なるソースからの指示をさまざまなレベルの信頼で処理するように設計されています。アプリケーション開発者からのシステム レベルの指示は最高のトラストを受けます。ユーザーの指示は中程度の信頼を受けます。外部ソースからのコンテンツ (Web ページ、電子メール、ドキュメント) は最低レベルのトラストを受けます。下位の信頼ソースからの指示が上位の信頼ソースからの指示と矛盾する場合、上位の信頼指示が優先されます。

この階層構造は、Web ページに「以前の指示を無視する」というテキストが含まれている場合でも、ChatGPT のエージェントは、システムまたはユーザー レベルのディレクティブをオーバーライドできない低信頼の外部指示としてこれらを認識することを意味します。

リスクの高いアクションの制限

2 番目の主要な防御メカニズムは、エージェントが外部コンテンツに応じて実行できるアクションの制限を含みます。OpenAI は、Web 検索のようなリスクの低い読み取り専用操作から、電子メール送信、購入、またはファイル変更のようなリスクの高い操作まで、リスク スペクトラムに沿ってエージェント アクションを分類します。

リスクの高いアクションは、エージェントが受けた指示に関係なく、実行前に明示的なユーザー確認が必要です。これにより、攻撃者がエージェントの他の防御が検出できない指示を正常に注入した場合でも、自動化された悪用を防ぐヒューマン イン ザ ループ チェックポイントが作成されます。

中程度のリスク アクションの場合、システムはコンテキスト分析を適用して、要求されたアクションがユーザーの元の意図と一致しているかどうかを判断します。エージェントに Web ページを要約するよう求められ、そのいずれかのページに電子メールを作成する指示が含まれている場合、コンテキストの不一致により、さらなる精査とユーザー確認がトリガーされます。

機密データの保護

3 番目の防御レイヤーは、データ流出の防止に焦点を当てています。つまり、プロンプト インジェクションを使用して、エージェントのコンテキストから機密情報を抽出し、攻撃者に送信するシナリオです。OpenAI のアプローチは、エージェント ワークフロー全体の情報フローの監視と、データが不正な宛先にチャネルされていることを示唆するパターンのフラグ化を含みます。

たとえば、エージェントが個人情報を含むドキュメントを処理している場合、その情報を見知らぬドメインへの Web リクエストに含めようとすると、システムはこれを潜在的な流出の試みとして認識し、アクションをブロックします。

モデル レベルでのトレーニング

これらすべてのアーキテクチャ防御の基盤は、モデル レベルでのトレーニングです。OpenAI は、ChatGPT のトレーニング プロセスにプロンプト インジェクション耐性を組み込み、注入試行の例を使用した監督付きファイン チューニングとヒューマン フィードバックからの Reinforcement Learning の両方を使用して、モデルに操作試行を認識および抵抗する方法を教えています。

このトレーニングには、さまざまな注入技術への露出が含まれています。直接的な指示オーバーライド、安全ガイドラインをバイパスするように設計されたロールプレイング シナリオ、エンコードされた難読化命令、多段階の操作チェーン、およびモデルの有用性にアピールしてセキュリティ制約をオーバーライドするソーシャル エンジニアリング戦術です。

結果は、静的なセキュリティ ルールのセットに従うだけでなく、プロンプト インジェクションがどのようなものであり、なぜそれに対抗する必要があるのかについての理解を内面化したモデルです。

継続的な軍拡競争

OpenAI は、プロンプト インジェクション防御は解決済みの問題ではなく、継続的な軍拡競争であることを認めています。攻撃者は新しい技術を開発し、防御はそれに応じて進化する必要があります。ブログ記事は、透明性対策としても、エージェント セキュリティ チャレンジについての広い AI セキュリティ コミュニティの理解への貢献としても機能します。

AI エージェントがより有能になり、より広くデプロイされるようになると、プロンプト インジェクション攻撃のステークは増加し続けます。OpenAI が説明する多層防御アプローチ (指示階層、アクション制約、データフロー監視、およびモデル レベルのトレーニングの組み合わせ) は、他の AI 開発者が採用および拡張する可能性が高いフレームワークを提供し、業界はますます自律的な AI システムのセキュリティ含意と闘っています。

この記事は OpenAI のレポートに基づいています。元の記事を読む