この論文は、ツール呼び出しを行う AI エージェントの有用性とプロンプトインジェクションに対する堅牢性の両方を評価するための動的なベンチマーク環境である AgentDojo を紹介する。この環境には 4 つのタスクスイート(Workspace、Slack、Travel、Banking)が収められており、合計で 97 個のユーザータスク、27 個のインジェクションタスク、629 個のセキュリティテストケースからなる。攻撃が固定された静的なベンチマークとは異なり、著者らはこれを新しい環境、攻撃、防御によって時間とともに拡張できるように設計した。

論文は、このベンチマーク上で、クローズドソース(Gemini 1.5 Flash と Pro、Claude 3 Sonnet と Opus、Claude 3.5 Sonnet、GPT-3.5 Turbo、GPT-4 Turbo、GPT-4o)とオープンソース(Llama 3 70B、Command R+)のさまざまなツール呼び出しエージェントを、攻撃が一切ない状態と、いくつかのプロンプトインジェクション攻撃および防御のもとの両方で評価している。

主なポイント

  • 論文は、能力の高いモデルほど攻撃されやすい傾向があることを見出し、これを一種の逆スケーリングと表現している。また、攻撃が存在すると、ほとんどのモデルが絶対値で 10〜25% の有用性を失うと報告している。
  • 攻撃の成功率はタスクスイートによって大きく異なる。論文は、Slack スイート(攻撃者がツール出力の大部分を、たとえば注入された Web ページの内容を通じて制御できる)では攻撃成功率が 92% に達した一方、互いに無関係な 2 つの悪意あるサブゴールを必要とする Travel スイートのあるインジェクションタスクでは成功率が 0% だったと報告している。
  • 論文独自の「Important message」プロンプトインジェクション ── モデルの名前を挙げて直接呼びかけ、被害者の実名を用いる ── は、比較対象とした先行する 3 つの攻撃文面(「以前の指示を無視せよ」型の攻撃、InjecAgent の攻撃、そして素の「TODO: {task}」という指示)を上回った。さらに、これら 4 つのうちタスクごとに最も効果的なものを選ぶ適応型の攻撃(「Max」)は、成功率をさらに押し上げた。
  • 論文は、注入する指示をツールの応答メッセージの末尾付近に置くのが最も効果的な注入位置であり、GPT-4o に対して最大で平均 70% の成功率に達したと報告している。
  • 被害者の名前と標的モデルの名前を知っていることで、攻撃にはわずかな上乗せがあった(論文は両方を正しく推測した場合に +1.9% と報告している)。しかし論文は、どちらかの名前を誤って推測すると攻撃が大幅に弱まることを見出した(論文のアブレーションではおよそ 22 パーセントポイント)。
  • GPT-4o に対して評価された 4 つの防御(データの区切り、BERT ベースのプロンプトインジェクション検出器、各ツール呼び出し後のプロンプト/指示の繰り返し、そして信頼できないデータを見る前にエージェントをタスクに必要なツールだけに制限するツールフィルタリングの仕組み)のうち、論文はツールフィルタリングが最も効果的で、標的型攻撃の成功率を 7.5% まで下げたと報告している。論文は、いくつかの防御は実際には攻撃のない状態での有用性を高めた一方、プロンプトインジェクション検出器は誤検知が多く、有用性を大きく損なったと指摘している。
  • 論文によれば、ツールフィルタリングは、必要なツールの一覧を事前に計画できない場合や、ユーザーのタスクを解くのに必要なツールが攻撃を実行するのにも十分である場合に失敗する。論文は後者の条件がテストケースの 17% に当てはまるとしている。また、評価したすべての防御が、攻撃下で 15〜20% の有用性を失ったと述べている。
  • 論文の結論は、AgentDojo が攻撃者と防御者の双方にとって難しい課題を突きつけると述べている。最先端の LLM は攻撃がない状態でも多くのタスクに失敗し、既存のプロンプトインジェクション攻撃は、このベンチマークが検証するセキュリティ特性の一部を破るものの、すべてを破るわけではない。

補足

抽出されたテキストでは、いくつかの図表が OCR や Markdown への変換によって視覚的に崩れている。上に挙げた数値は、崩れた表のレイアウトそのものからではなく、それらを読める形で述べている周囲の本文から取っている。