プロンプトインジェクションは問題の本質ではない、真の問題はAIエージェントフレームワークにある

Check Pointの研究者らによると、企業がアプリ構築に使用する主要なAIエージェントフレームワークには、重大なものを含め10件近い欠陥が存在しており、これはプロンプトインジェクションや特定のモデル単体の問題にとどまらない、より根深いセキュリティ上の失敗を示しているといいます。

「私たちの研究が明らかにしたのは、より深刻な失敗です。多くのエージェント型フレームワークにおいて、プロンプトによって操作可能なコンテンツが、信頼されたフレームワークのロジック自体との境界線を越えてしまうのです」と、Yarden Porat氏とShahar Tal氏は、水曜日に開催されたBlack Hatでの講演「AIエージェントフレームワーク横断のポストインジェクション攻撃」に関する寄稿の中で述べています。この講演内容は、両氏が本誌The Registerにも語ってくれました。

「エージェントフレームワークにおけるバグは、単一製品のバグではありません。AIアプリという一つのカテゴリー全体が動作する層そのものに存在するバグなのです」とTal氏は本誌に語りました。「しかも、エージェントを攻撃者側に転じさせるのに危険なツールは一切必要ありません。間違ったドキュメントを読ませるだけで十分なのです。私たちは、自分たちが守り方を理解している速度よりも速く、この層を構築してしまっています」

研究チームは、LangChain、LangGraph、CrewAI、AutoGen、Microsoft Agent Framework、Google ADKなど、企業が利用する各種フレームワークを突破しようと1年をかけて取り組みました。そしてこれらのフレームワーク全体で、チームは11件の脆弱性を発見し、開示しました。

「そのほとんどは、まったく新しいバグの種類というわけではありませんでした」とTal氏は述べています。「安全でないデシリアライゼーション、サーバーサイドリクエストフォージェリ、パストラバーサル、use-after-free。これらは20年前に私たちが修正方法を学んだはずのバグです。それが、今では受信トレイを読んだりデータベースを更新したりするエージェントの足元に潜んでいるのです」

これらは古くから存在する種類の脅威であり、モデル自体が弱点なのではない、と同氏は付け加えました。失敗が存在するのは「モデルを取り巻く配管部分であり、そこが見過ごされてきたと私たちは考えています」とTal氏は本誌に語りました。「プロンプトインジェクションとその対策には多くの研究が注がれており、それ自体は重要です。しかし、それはあくまで出発点に過ぎません」

研究者らによると、防御側はプロンプトインジェクションが発生することを前提とすべきだといいます。問題となるのは、フレームワークがそのインジェクションに対して何をするかという点です。今回のケースでは、脅威ハンティングチームは、フレームワークが攻撃者に制御されたコンテンツをデータプレーン内に留めておくことにしばしば失敗していることを突き止めました。これにより、そのコンテンツが信頼されたオーケストレーション、メモリ、状態、ルーティング、システム命令に影響を及ぼせてしまうのです。

例えば、両氏はMicrosoft Agent Frameworkにおいて、リモートコード実行につながる重大なチェックポイントのデシリアライゼーションのバグを発見しました。

「エージェントにはチェックポイントという機能があります。これは自身の状態を保存したり、以前の時点まで巻き戻したりするための仕組みです」とTal氏は説明します。

これらのチェックポイントは、特定の瞬間におけるエージェントの状態、あるいはタスクの進捗状況を保存したスナップショットであり、会話履歴などのデータを永続的なストレージにシリアライズします。そのため、エラーが発生した場合、システムは最初からやり直すのではなく、この保存済みの状態を再ロードします。

今回のケースで、Check Pointのチームは、プロンプトインジェクションを介してエージェントが信頼できないチェックポイントデータをロードしてしまう、安全でないデシリアライゼーションの問題を発見しました。これにより、攻撃者はシステム上で悪意のあるコードを実行できる可能性があります。「ある人物のメッセージが仕込み(ペイロード)を植え付け、別の人物が自分のセッションを巻き戻すとそのペイロードが起動し、攻撃者はそのサーバー上でシェルを手に入れることになります」とTal氏は語りました。

Microsoftは研究者らの発見を認め、10,000ドルのバグ報奨金を支払い、問題を修正しました。しかし、Check Pointがこの欠陥を発見した時点で当該フレームワークは一般提供(GA)前の製品だったため、MicrosoftはCVEを発行しませんでした。

Microsoftは、研究者らが脆弱性を報告してくれたことに感謝していると本誌に述べました。「私たちはAgent Frameworkを強化する保護策をリリースし、概念実証(PoC)で示された具体的な悪用経路を防止しました」と、Microsoftの広報担当者はThe Registerに語りました。「さらに、セキュリティ境界を定義する追加の記述を加えて、該当のチェックポイントファイルを更新しました」 

両氏はGoogle ADK(エージェント開発キット)にも欠陥を発見しました。しかし、研究者らによると、Googleの対応は異なり、脆弱性を完全に修正することもCVEを発行することもなかったといいます。

「ADKには、ファイルを書き込める組み込みの開発アシスタントが搭載されており、アプリの一覧には表示されないものの、HTTP API経由では引き続きアクセス可能な状態になっています」とPorat氏は本誌に語りました。 

この信頼境界を突破するには、攻撃者はセッションを開き、Pythonコードがインポート時に実行されるエージェントをADKに書かせるよう依頼し、その後サーバーにそのエージェントを実行するよう要求するだけでよい、と同氏は説明しました。すると、サーバーはそのファイルをインポートし、攻撃者のコードを実行してしまいます。 

「そのAPIにはデフォルトで認証機能がなく、adk deploy cloud_runは同じAPIを公開するため、デフォルトのCloud Runデプロイメントでは、認証情報なしでアクセス可能な状態になっています」とPorat氏は述べています。「そこから、環境のAPIキーやコンテナのGoogle Cloudサービスアカウントにまで到達できてしまいます」

GoogleはThe Registerの問い合わせに応じませんでした。しかしCheck Pointによると、Googleは当初、この問題をバグとは見なさなかったといいます。  

「私たちは仕組みそのものではなく、その結果について主張しました。そのコンテナ上でのコード実行は、環境のAPIキーやコンテナのGoogle Cloudサービスアカウントにまで到達できてしまい、これは開発者にとっての単なる不便ではなく、機密情報の窃取にあたります」とPorat氏は述べました。 

最終的にGoogleは3,133.70ドルの報奨金を支払い、部分的な修正を行ったと私たちは聞いています。

両氏はこの取り組みに対して、総額17,133.70ドルの報奨金を受け取りました。

そして、これは特定のベンダーやフレームワークが「特にひどい仕事をした」という話ではない、とTal氏は語ります。「もし一社だけが突出していたのなら、これはその一社に関する話になっていたでしょう」と同氏は付け加えました。「私たちが発見したのは、同じ種類のバグがすべてのフレームワークに現れるということです」 ®

翻訳元: https://www.theregister.com/security/2026/08/05/prompt-injection-isnt-the-bug-ai-agent-frameworks-are/5283585

ソース: theregister.com