OpenAIがプロンプトインジェクションに抵抗するAIエージェントを設計
OpenAIがプロンプトインジェクション防御をソーシャルエンジニアリングモデルにシフト
OpenAIは、入力フィルタリングや「AIファイアウォール」に依存する従来の手法から、プロンプトインジェクションをソーシャルエンジニアリングの一形態として扱う新しいアプローチを発表しました。このシフトは、現代の攻撃が単純なプロンプト上書きから、ソーシャルエンジニアリングに似た複雑な操作へと進化し、従来の分類システムだけでは検出が困難になっているために必要です。
プロンプトインジェクション攻撃の進化
プロンプトインジェクションは、外部コンテンツに埋め込まれた指示がAIエージェントに対して、ユーザーが要求していない行動を取らせようとするものです。OpenAIは、初期の攻撃がシンプルで、たとえばWikipediaページに直接指示を書き込むといったものだったのに対し、現代のモデルはこうした基本的な上書きに対してより耐性があることを観測しています。
その結果、攻撃手法はソーシャルエンジニアリング的戦術を取り入れるように進化しました。これらの攻撃は誤情報や嘘に似ているため、「AIファイアウォール」や入力を悪意あるものか通常のものかに分類する中間システムで捕捉されにくくなっています。
ソーシャルエンジニアリングリスク管理フレームワークの適用
このように進化する脅威に対抗するため、OpenAIは人間のエージェントが敵対的環境で使用するリスク管理の観点からAIエージェントのセキュリティを捉え直しています。目的は、すべての悪意ある入力を完璧に識別しようとするのではなく、成功した操作の影響を制限することです。
OpenAIはAIエージェントを人間のカスタマーサービス担当者に例えています。このようなシステムでは、エージェントは雇用主の代理として行動しつつ、外部からの誤誘導的な入力にさらされます。リスクを軽減するため、組織はエージェントの能力を制限する決定論的なシステムやルールを導入します。例としては次のようなものがあります。
- Capability Limitations(能力制限): エージェントが発行できる返金額やギフトカードの上限を制限する。
- Deterministic Mitigations(決定論的緩和策): フィッシングメールをフラグ付けしたり、単一のエージェントが重大な被害を与えるのを防ぐために行動にハードリミットを設定する。
ChatGPTにおけるセキュリティ実装
OpenAIはこのソーシャルエンジニアリングフレームワークを、従来のセキュリティエンジニアリング、特にソース‑シンク分析と組み合わせています。この文脈で「ソース」とはシステムに影響を与える手段(信頼できない外部コンテンツ)を指し、「シンク」とは不適切な文脈で危険になる機能(例:情報を第三者に送信すること)を指します。
危険な行動や機密情報の無音送信を防止するため、OpenAIはChatGPTに以下の防御策を実装しました。
- Safety Training(安全トレーニング): 主な防御策は安全トレーニングで、ほとんどの場合にエージェントが悪意あるリクエストを拒否させます。
- Safe Url(安全URL): 会話中に取得した情報が第三者へ送信されようとしていることを検知する緩和策です。検知された場合、システムは送信をブロックしエージェントに別の経路を探すよう指示するか、ユーザーに情報を提示して明示的な確認を求めます。
AIエージェント統合に関する推奨事項
アプリケーションシステムにAIモデルを統合する開発者に対し、OpenAIは人間のエージェントが同様の役割で持つべきコントロールと同等の制御を実装することを推奨しています。高度に知的なモデルが最終的には人間以上にソーシャルエンジニアリングに抵抗できるようになると期待される一方で、構造的なコントロールの実装は依然として最もコスト効果が高く、実現可能なセキュリティアプローチです。