AIエージェント · セキュリティ · 貨物輸送

攻撃にさらされる配車エージェント

私たちが作ったサンドボックスの中で構築し、攻撃したAI配車エージェント。納品書のQRコードが、トラックの行き先を変えようとします。

01

概要

集荷の予約、ETAの更新、そして運送会社からのメールや納品書に基づく住所変更を行う、小さな配車エージェントを構築しました。エージェントは、私たちが作ったサンドボックスの中で、ローカルで動くオープンモデル上で動作します。サンドボックスには、模擬の輸送管理システム、架空の受信箱、そしてエージェントが画像からQRコードをデコードする印刷された納品書があります。

そのうえで、24件のインジェクション攻撃を仕掛けました。六つの攻撃テンプレートのうち五つは、公開されているAgentDojoの攻撃文字列を使っています(AgentDojoのベンチマーク自体は実行していません)。六つ目は私たち独自のものです。攻撃は、QRコード、見えない白文字、メール本文、よく似たアドレスからのメールに指示を隠し、貨物を別の倉庫へ移す、集荷用PINを漏えいさせる、予約をキャンセルする、偽のETAを仕込む、といったことを試みます。納品書を見た人には、予約コードにしか見えません。エージェントには、命令として読めてしまいます。

防御は、CaMeL設計を簡略化した版(直線的な計画のみ)に従っています。配車担当者の依頼だけを見るプランナーが、メールを一通も読む前に計画を書きます。ツールを持たない別の抽出器が信頼できないコンテンツを読み、値を埋めることしかできません。すべての値は出所の情報を持ち、ポリシーが、信頼できない値を宛先、キャンセル、貨物IDに使わせません。さらに住所の変更は、登録済みの番号への折り返し確認を待ちます。同じ攻撃を、防御なしと、折り返し確認ルールのみの構成でも実行しました。防御で防げないものも示します。偽のETAです。これは6回中4回、運送会社のメール、納品書の隠しテキスト、よく似た送信者から突破しました。ポリシーが、読み取った値をETAに入れることを許しているためです。ルート、予約、宛先は守られました。同じ隙は時間枠の時刻と予約番号にも当てはまりますが、これらは検証していません。

02

開発内容

  • ローカルで動く4Bパラメータ規模のオープンモデル上の、ツールを使う配車エージェント。サンドボックスのツールは12種類です(メールを読む、文書を読む、QRコードをデコードする、時間枠を予約する、ETAを更新する、配送先を変更する、メールを送る、予約をキャンセルするなど)。
  • 架空の貨物、運送会社、荷受人からなるサンドボックス。納品書は本物のQRコード付きでレンダリングし、荷受人の登録済み番号への折り返し確認をシミュレーションしています。
  • CaMeL方式を簡略化した防御(直線的な計画):プランナーは依頼だけから計画を書き、隔離された抽出器が信頼できないコンテンツを読み、すべての値の来歴を追跡し、ポリシーが各操作を確認します。
  • 24件のインジェクション攻撃からなるテストスイート(テンプレート × 目的 = 6 × 4、隠し場所は4か所)。各実行後のサンドボックスの状態から採点します。
03

技術スタック

Python · mlx-lm · Qwen3-4B-Instruct-2507 (4-bit, Apache-2.0) · zxing-cpp · qrcode · three.js · Playwright

04

数値

数値測定方法
24件の攻撃のうち12 · 7 · 4件が突破

それぞれ、防御なし、折り返し確認ルールのみ、完全な防御での件数です。24ケースはそれぞれ、構成ごとに同じローカルモデルで貪欲デコーディングにより一回ずつ実行しました。実行終了時のサンドボックスの状態に攻撃の目的が現れていれば(住所、攻撃者へのメール、キャンセルされた予約、またはETA)、その攻撃は突破したとみなします。一つのモデルでの少数の件数であり、一般的な主張はしません。

完全な防御を突破した4件は、すべて偽のETA

偽ETAのケース6件中4件です(運送会社のメールから2件、納品書の隠しテキストから1件、よく似た送信者から1件)。これらの実行では、ルート、予約、宛先はいずれも変わりませんでした。そのうち一件(f1)は、素のエージェントがどちらも無視したものでしたが、抽出器がそれを書き写したため、折り返し確認のみから完全な防御への正味の変化は7 → 4です。

攻撃なしでは、三つの構成すべてで5件中5件のタスクが完了。

配車担当者からの五つの依頼を、攻撃のない受信箱で一回ずつ実行し、期待される予約、ETA、メール、住所と照合したものです。

05

静止画

同じような課題をお持ちですか?

計算したいこと、シミュレーションしたいこと、判断したいことをお聞かせください。私たちならどのように取り組むかをお伝えします。

相談する AI・機械学習