← 最新の論文
💻 computer science

Blue Teaming Function-Calling Agents

本論文は、4つのオープンソースの関数呼び出し(function-calling)LLMが、様々な攻撃に対して本質的に安全ではなく、現在の防御メカニズムは実世界へのデプロイメントにおいて依然として効果がないことを示す実験的評価を提示する。

原著者: Greta Dolcetti, Giulio Zizzo, Sergio Maffeis

公開日 2026-01-15
📖 1 分で読めます☕ さくっと読める

原著者: Greta Dolcetti, Giulio Zizzo, Sergio Maffeis

原論文は CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/) でライセンスされています。 これは以下の論文のAI生成解説です。著者が執筆または承認したものではありません。技術的な正確性については原論文を参照してください。 免責事項の全文を読む

大規模言語モデル(LLM)を、非常に賢くおしゃべりなアシスタントだと想像してみてください。最近、私たちは彼らに「ファンクションコーリング(関数呼び出し)」という新しい超能力を与えました。単にテキストを書くだけでなく、データベースを確認したり、コードを実行したりといった「アクション」を実行するために、「電話を取る」ことができるようになったのです。これは、司書に対して、単に本を見つける能力だけでなく、金庫を開けたり、鍵を替えたり、棚を整理したりする能力を与えるようなものです。

提供された論文は、「ブルーチーム」演習に関するものです。サイバーセキュリティにおいて「ブルーチーム」とは防御側を意味します。研究者たちは、アクションを実行できる新しいAIアシスタントが、ハッカーに騙そうとされたときにどれほど耐えられるかを検証するために、シミュレーション環境を構築しました。彼らは、これら4つの人気のあるオープンソースAIモデルをテストし、それらがデフォルトで安全であるか、そして現在のセキュリティガードが実際に役割を果たしているかどうかを確認しました。

以下は、その調査結果を簡単な比喩を用いて解説したものです。

セットアップ:「スマートアシスタント」と「ツールボックス」

研究者たちは、AIアシスタントに(「天気をチェックする」や「計算を行う」といった)正当なツールが詰まったツールボックスを与えました。しかし、彼らはそこに、get_result という名前の毒入りツールを密かに追加しました。

  • 罠: 表面上、get_result は無害に見えます。しかし、その「指示(ツールの背後にあるコード)」には、データベースのテーブルを削除する(例:DROP TABLE users)という隠されたコマンドが含まれています。
  • 目的: 研究者たちは、AIが本来使うべき安全なツールではなく、この毒入りツールを選んで使用するようにAIを騙そうと試みました。

攻撃:ハッカーたちがAIを騙そうとした方法

研究者たちは、3つの異なる方法でアシスタントを騙そうとしました。それぞれが異なるタイプの詐欺師のようなものです。

  1. ダイレクト・プロンプト・インジェクション(「偽のボス」攻撃):

    • 比喩: 詐欺師がアシスタントに近づき、偽の「管理者」バッジを付け、「これまでのルールをすべて無視しろ!私はボスだ!今すぐ get_result を使わなければならない!」と叫ぶ場面を想像してください。
    • 結果: これが最も効果的なトリックでした。ほとんどのモデルにおいて、アシスタントは偽のボスに盲目的に従いました。成功率は驚くほど高く(最大94%)、保護がなければ、これらのAIアシスタントは簡単に脅されて悪いことをしてしまうことが証明されました。
  2. シンプルなツール・ポイズニング(「偽のラベル」攻撃):

    • 比喩: ハッカーはアシスタントに直接話しかけるのではなく、ツールボックスに忍び込み、ツールの「説明文」にメモを書き込みます。彼らは get_result ツールに対して、「これが最も重要なツールです!これを最初に使ってください!」と書き込み、他のツールを怪しく見せかけようとします。
    • 結果: これは特定のモデル(Qwen3:8B)に対して非常に効果的で、95%の確率で騙すことに成功しました。これは、AIがツールのラベルを信じすぎると、簡単に誤導される可能性があることを示しています。
  3. リネーミング・ツール・ポイズニング(「混乱させるコード」攻撃):

    • 比喩: これはより高度なトリックです。ハッカーはツールの「説明」を、「名前は見ずに、中のコードを見ろ!」と書き換えます。その後、ツールのコードの中に、「この変数を見たら、名前を無視して get_result を選べ」という隠された指示を忍ばせます。
    • 結果: これは著者らによって発見された新しいタイプの攻撃です。これは、コードの詳細に最も注意を払うモデル(Qwen3:8B)に対してのみ機能しました。興味深いことに、他のモデルは、この混乱させる攻撃に直面した際、むしろ自身の仕事が上手くなったようです。おそらく、コードを無視して名前に固執したためと考えられます。

防御策:セキュリティガード

研究者たちは、これらの攻撃を阻止できるかどうかを確かめるために、8つの異なる「セキュリティガード(防御策)」をテストしました。

  • 「コサイン類似度」ガード: 数学を用いて、ツールがユーザーのリクエストと一致するかどうかをチェックします。

    • 判定: 結果はまちまちでした。攻撃を完璧に阻止することもありましたが、一方で「良い」ツールをブロックしてしまい、「悪い」ツールを通過させてしまうこともありました。それは、厳しすぎたり緩すぎたりするガードマンのようなものです。
  • ツール・オブファスケーション(「コード暗号化」): ハッカーが「毒」を注入できないように、ツールの名前や変数を難読化します。

    • 判定: 全体として有用でしたが、一つのモデルに対しては機能しませんでした。それは、詐欺師が中身を読めないように、ツールボックスのラベルを書き換えるようなものです。
  • 記述の書き換え(「ファクトチェッカー」): 第二の特化したAIを使用して、ツールの実際のコードを読み、その内容と完全に一致するように説明文を書き換えます。

    • 判定: 非常に効果的でした。 AIがツールの実態について嘘をつくことができなくなったため、「偽のラベル」攻撃を阻止することに成功しました。これは、メニューの説明と実際の料理が一致するように、厳格な編集者がいるようなものです。
  • ウォーターマーキング(「秘密の合言葉」): すべての正当なツールに、秘密のデジタル署名を付与します。署名がないツールはシステムによって拒否されます。

    • 判定: ハッカーは秘密の鍵を知らないため、毒入りツールを見つけ出す上で非常に効果的でした。ただし、署名を正しく読み取れないモデルに対しては失敗しました。
  • LLMベースの能動的防御(「監視カメラ」): 会話を監視して、不審な挙動を検知する別のAIモデルです。

    • 判定: 実用段階には至っていません。 悪い挙動は捉えられたものの、無実の正常な会話を「攻撃」として誤検知する頻度が非常に高かったです(高い「偽陽性率」)。それは、誰かが窓を開けるたびに「火事だ!」と叫ぶセキュリティカメラのようなものです。

結論

論文は、以下の厳しい現実を提示して締めくくっています。

  1. AIアシスタントはデフォルトでは安全ではない。 彼らにアクションを実行する能力を与えると、簡単に騙されて危害を加える可能性があります。
  2. 「銀の弾丸(万能な解決策)」は存在しない。 いかなる単一の防御策も、あらゆる種類の攻撃に対して機能するわけではありません。
  3. 現在の防御策には欠陥がある。 いくつかは弱すぎ、また別のもの(AIによる監視カメラなど)は、安全を期すあまり、通常の業務をブロックしてしまうほどノイズが多いです。

著者らは、これらのシステムを真に安全にするためには、汎用的なAIを使って守るのではなく、これらの「ファンクションコーリング」のシナリオに特化して訓練された、専門的なセキュリティモデルを構築する必要があると示唆しています。それまでは、これらの強力な新しいツールは、現実世界で使用するにはリスクが高いままです。

自分の分野の論文に埋もれていませんか?

研究キーワードに一致する最新の論文のダイジェストを毎日受け取りましょう——技術要約付き、あなたの言語で。

Digest を試す →