OWASP Top 10 for LLM Applicationsは、推論を一回まわす系を想定して書かれています。入力が来て、出力が出る。その一往復のなかで何が壊れるか。ですがエージェントは、そこで終わりません。記憶を持ち、自分で次の手を決め、他のエージェントと話します。 別の一覧が要るのはそのためで、OWASP Top 10 for Agentic Applicationsが2026年版として公開されています。
何が違うのか
エージェントに固有の性質は三つあります。この三つが、新しい壊れ方を生みます。
状態を持ちます。 会話や作業の履歴が残り、次の判断に影響します。一回きりの推論なら、汚染された入力の影響もその回で終わります。記憶に残れば、汚染は先まで効き続けます。
自分で決めます。 どのツールを、どの順で呼ぶかをモデルが選びます。あらかじめ決められた手順を実行するのではないので、想定していない組み合わせが起きます。
複数います。 エージェントが他のエージェントを呼ぶ構成が普通になりました。一つの誤りが、系全体へ広がる経路ができます。
十項目
| ID | 項目 | 中身 |
|---|---|---|
| ASI01 | Agent Goal Hijack | 目標そのものを書き換えられる |
| ASI02 | Tool Misuse | ツールを、認められていない使い方で呼ぶ |
| ASI03 | Identity & Privilege Abuse | 身元と権限の悪用・昇格 |
| ASI04 | Agentic Supply Chain Vulnerabilities | ツール・枠組み・登録所の出所 |
| ASI05 | Unexpected Code Execution | 隔離を越えてコードが動く |
| ASI06 | Memory & Context Poisoning | 記憶と文脈が汚染される |
| ASI07 | Insecure Inter-Agent Communication | エージェント間の通信の偽装・再送 |
| ASI08 | Cascading Failures | 一つの障害が系全体へ広がる |
| ASI09 | Human-Agent Trust Exploitation | 人がエージェントを信じすぎる |
| ASI10 | Rogue Agents | 統制の外で動くエージェント |
一位が目標の書き換えである意味
LLM Top 10の一位はプロンプトインジェクションでした。こちらの一位はAgent Goal Hijackです。似ていますが、被害の形が違います。
一回の推論を乗っ取られても、出てくるのは一回分の誤った出力です。目標を書き換えられると、そのあとの全行動が誤った方向へ進みます。 エージェントは自分で手順を組み立てるので、書き換えられた目標に沿って、こちらが指示していない手を次々に打ちます。
しかも本人は正常に動いています。指示に従って計画を立て、ツールを呼び、結果を報告します。異常として検出しにくい形です。
記憶が汚れると、あとから効きます
Memory & Context Poisoningは、エージェント特有の項目です。
一度書き込まれた誤った情報が、次の会話でも、別の作業でも参照されます。攻撃した時点と、被害が出る時点が離れます。入り口を見張っていても、間に合いません。
検索の索引を汚す形もあります。社内文書を検索して答えるエージェントに、細工した文書を一つ紛れ込ませる。その文書は普段は無害な顔をしていて、特定の質問のときだけ働きます。
記憶は、書き込むときと読み出すときの両方で扱いを決めることになります。何を残すか、いつ消すか、誰が書き込めるか。
身元と権限が、エージェントでは曖昧になります
Identity & Privilege Abuseは地味に見えて、設計の根が深い項目です。
従来のシステムでは、誰が操作しているかがはっきりしていました。利用者が操作し、その利用者の権限で処理が動く。監査ログにも利用者が残ります。
エージェントが挟まると、この対応が崩れます。エージェントは自分の資格情報で動くのか、頼んだ人の資格情報を借りて動くのか。借りるなら、どこまで借りるのか。
前者だと、エージェントの権限は全利用者ぶんの和になりやすくなります。誰の依頼でも処理できるように、広めに渡してしまうためです。すると、Aさんが頼んだ作業でBさんのデータに届いてしまいます。
後者だと権限は絞れますが、資格情報をエージェントに渡す経路が新しい弱点になります。どちらを選んでも、選んだ理由と、その結果できる境界を書いておく必要があります。
ツールの出所も攻撃面になります
Agentic Supply Chain Vulnerabilitiesは、エージェントが呼ぶ道具そのものを狙うものです。
エージェントに機能を足すのは簡単です。公開されているツールや連携の定義を取ってきて、使えるようにする。取ってきた先が信用できるかは、たいてい確かめられていません。
問題は、ツールの説明文がモデルへの入力になることです。「このツールは請求書を検索します」という説明のなかに、モデル向けの指示を仕込めます。利用者からは見えないまま、エージェントの振る舞いが変わります。
依存の脆弱性を追うだけでは足りません。何を呼べるようにしたかの一覧を持ち、増えたときに気づける状態が要ります。
連鎖と、人の側の弱点
Cascading Failuresは、複数のエージェントが噛み合う系の話です。
一つのエージェントが誤った結果を返します。それを受け取った次のエージェントが、それを前提に判断する。さらに次へ。個々は正常に動いているのに、系としては全体が誤った方向へ進みます。分散システムの障害伝播と同じ構造が、判断の層で起きます。
Human-Agent Trust Exploitationは、少し毛色が違います。狙われるのは人のほうです。
エージェントの出力は流暢で、根拠まで添えて返ってきます。使っているうちに、確かめずに受け入れるようになります。その慣れを利用して、承認させたくないものを承認させる。技術で塞ぐのが難しく、運用の設計で受けることになる項目です。
Rogue Agentsは、統制の外で動くものを指します。誰かが試しに立てたまま残っているエージェント、権限を持ったまま忘れられたエージェント。存在を把握していないものは、守りようがありません。
LLM Top 10との関係
置き換えではなく、積み上がる関係です。
エージェントもLLMを使うので、プロンプトインジェクションも機微情報の漏洩も、そのまま当てはまります。そのうえで、状態と自律性と多重性から来る項目が乗ります。
見る順序としては、LLM Top 10で土台を確かめ、エージェント構成ならこちらを追加する形になります。ASVSまで含めると三層です。アプリケーション一般、LLM固有、エージェント固有。
使うときの注意
新しい文書であることを織り込んでください。 2025年12月に公開が告知された比較的新しい一覧で、番号や名前は今後動く可能性があります。引用するなら版を必ず書いてください。
十項目で足りるとは考えないでください。 これも啓発の文書で、網羅は目指していません。自分の系の構成に固有の壊れ方は、自分で洗い出すことになります。
対策の置き場所は、たいてい外側になります。 目標の書き換えも、記憶の汚染も、モデルの内部で防ぎ切ることはできません。何をさせるか、何を残すか、どこで止めるかという外側の設計で受けます。
まとめ
この一覧を通して見ると、エージェント固有の危険はすべて継続することから出ていることが分かります。
記憶が続くから、汚染が効き続ける。判断が続くから、乗っ取られた目標が拡大する。系がつながっているから、誤りが伝播する。単発の推論には無かった時間軸が、そのまま攻撃面になっています。
任せる範囲を広げるほど、任せている時間も長くなります。その時間のなかで何が起きたかを見られること、そして止められることが、この一覧が繰り返し要求している条件です。自社でエージェントを動かしているなら、誰がいつ立てたものかを一覧できる状態か、そして止める手順が決まっているかを最初に確かめてください。