エージェントスタックは1998年問題を抱えている
2026年6月の最終週、AIエージェントのツール群に対して小さなCVEのかたまりが着弾しました。うち2件は同じデスクトップ・エージェントクライアントのもので、どちらも認可の不備、しかも1件はMCPのOAuthコールバックの真ん中に位置しています。個別に読めば、いずれもメンテナーが週末で修正できる中程度の深刻度のバグにすぎません。まとめて読むと、このかたまりはシグナルであり、そのシグナルは構造的なものです。AIエージェント・エコシステムは、それを守るセキュリティ文化を蓄積する速度よりも速く、攻撃対象領域を蓄積しています。これは特定のプロジェクトの道徳的な失敗ではありません。安全でないデフォルトを持つ言語が主流となり、認証情報がいたるところに置かれ、誰も堅牢化が追いつかない速度でインストールベースが膨らんだ、1998年頃のウェブとまったく同じ状態なのです。あなたの鍵を預かり、あなたのシェルを実行するツールが、1998年のセキュリティ成熟度のまま2026年の脅威モデルの中へ出荷されています。
TL;DR
- 人気のデスクトップAIエージェントクライアントであるCherry Studioは、2026年6月29日に2件のCVEを受けました。MCPのOAuthコールバックサーバーにおける不適切な認可の不備(CVE-2026-13524)と、preload APIにおける認可バイパス(CVE-2026-13534)です。12
- このパターンは1つのアプリに限った話ではありません。MCPのリファレンス実装そのものが、2025年に深刻なリモートコード実行の脆弱性を出荷しています。CVSS 9.6のmcp-remote(CVE-2025-6514)と、CVSS 9.4のAnthropic製MCP Inspector(CVE-2025-49596)です。34
- エージェントツールは、かつてのウェブアプリよりも構造的に無防備です。認証情報を保持し、設計上コードを実行し、信頼境界(IDE、シェル、ブラウザ)の背後ではなく内側に座っているからです。
- これらのバグを防ぐ知識はすでに存在します。MCPの仕様書は、混乱した代理人(confused deputy)とOAuthフローという攻撃クラスを詳しく記述しています。足りないのは、動きの速いすべてのインテグレーションにそれを適用する文化のほうで、こちらはまだ広がっていません。5
- 1998年のウェブが成熟したのは、ワームが安全でないことのコストを跳ね上げたあとでした。エージェント・エコシステムにはまだ同等の強制力が存在せず、いまこれらのバグを見つけているのと同じモデルが、その強制力となるものを書けてしまいます。
クラスターを具体的に見る
Cherry Studioは、「スマートチャット、自律エージェント、300以上のアシスタントを備えたAI生産性スタジオ」を掲げるクロスプラットフォームのデスクトップクライアントで、Model Context Protocolサーバーを明示的にサポートしています。まさに本稿が扱う種類のツールです。つまり、あなたのAPIキーを仲介し、ローカルのインテグレーションを実行し、あなたの代わりにネットワークへ出ていく、一般ユーザー向けのエージェントですね。
2026年6月29日、VulDBはこのクライアントに対して2件のアドバイザリを公開しました。CVE-2026-13524は、バージョン1.9.0から1.9.6にかけてのMCP OAuth Local Callback Server、ファイル src/main/services/mcp/oauth/callback.ts における不適切な認可の不備(CWE-285)です。記述は率直です。「The manipulation of the argument code leads to improper authorization.(引数codeの操作が不適切な認可につながる)」。CVSS 3.1のスコアは5.6、中程度です。1 CVE-2026-13534は、バージョン1.9.7までのCherryIN preload APIにおける認可バイパス(CWE-639)で、スコアは5.0です。2 どちらも大見出しになる話ではありません。どちらも、誰にとっても新しい領域を高速に走るチームがやってしまう、静かな認可のミスです。
決定的な手がかりは1件目のほうです。MCPクライアントにおけるOAuthコールバックは、教科書どおりの信頼境界です。外部の認可サーバーがcodeをあなたのマシンへ返し、あなたのマシンがそれを信頼するかどうかを決める地点なのです。その扱いを誤ることは、目新しい特殊なバグクラスではありません。MCP仕様書自身のセキュリティ文書が、最も多くの紙幅を割いているまさにその問題です。
同じ期間の隣接する2件のCVEは、クラスターが本物でなければ意味がないため除外しました。CVE-2026-13533はagentejo Cockpit CMS、つまりエージェントフレームワークではなくPHPのコンテンツ管理ツールであり、CVE-2026-13543はまったく検証できませんでした。水増しした一覧より、確かな数例のほうが役に立つものです。
エージェントツールが構造的に不利な理由
1998年頃の典型的なウェブアプリは確かに安全ではありませんでしたが、境界の内側で動いていました。あなた自身が中に座っているわけではないサーバーで動き、被害範囲はデータベースとセッションにとどまり、侵害されて攻撃者が手に入れるのはそのアプリのデータでした。
エージェントツールはこの幾何学を反転させます。あなたのマシン上、あるいはIDEの内側で動き、クラウドとリポジトリへの長期間有効な認証情報を保持し、エクスプロイトとしてではなく中核機能としてコードを実行します。背後に隠れるべき境界は存在しません。ツール自体が境界であり、しかも設計上それは透過的なのです。
Simon Willisonは2025年6月、「lethal trifecta(致命的な三要素)」という言葉でこの危険を正確に名指しました。エージェントは、「あなたのプライベートデータへのアクセス」「信頼できないコンテンツへの露出」「外部と通信する能力」が、そのデータを盗める形で組み合わさったときに悪用可能になります。7 有能なエージェントはどれもデフォルトで3つすべてを備えています。あなたの機密を読むことも、攻撃者の影響下にあるコンテンツを取り込むことも、外向きのリクエストを出すことも、バグではなく機能だからです。この三要素はエッジケースではありません。標準構成そのものなのです。
そこが構造的な違いです。1998年のウェブアプリは、境界1つ分のデータを漏らすように騙される必要がありました。2026年のエージェントは、データ持ち出しの連鎖に必要なあらゆる能力をあらかじめ配線した状態で届きます。悪意ある入力とあなたの認証情報のあいだに残っているのは、そのツールが内部の信頼境界を正しく引けているかどうかだけです。Cherry Studioのコールバックのバグは、その境界がわずかに間違って引かれたときの姿を示しています。
MCPによる増幅
Model Context Protocolは2026年のエージェントスタックの結合組織であり、特定のかたちで攻撃対象領域を掛け算します。すべてのMCPサーバーは、たいてい手早く書かれた新しい特権的インテグレーションであり、モデルがそれを呼び出せるのです。追加するのは摩擦ゼロ。監査するのはそうではありません。インテグレーションのインストールベースは、そのコードを読む人の数を追い越しつつあります。
リファレンス実装を見れば、これが趣味プロジェクトだけの問題でないことがわかります。2025年7月、JFrogはCVE-2025-6514を公開しました。Claude Desktop、Cursor、Windsurfが使うコネクタであるmcp-remoteのOSコマンドインジェクションで、悪意あるサーバーがOAuthフロー中に細工した authorization_endpoint URLで発火させられます。深刻度はクリティカル、CVSS 9.6です。3 同じ月、TenableはCVE-2025-49596を公開しました。Anthropic自身のMCP Inspectorにおける9.4のリモートコード実行の脆弱性で、認証チェックの欠落により、悪意あるウェブサイトがローカルポートに到達し、DNSリバインディング経由で任意のコマンドを実行できました。4
本稿で扱う4件のCVEのうち2件は、MCPツールにおけるOAuthフローの不備です。1件はコールバックサーバー、もう1件はエンドポイント探索にあります。これは偶然ではありません。エージェントクライアントにおけるOAuthは繰り返し取りこぼされる境界であり、仕様書もそう明言しています。2025年6月18日付のMCPセキュリティベストプラクティス文書は、最も長い節を「confused deputy problem(混乱した代理人問題)」に割き、プロキシサーバーはクライアントごとの同意を実装し、OAuthの state パラメータを検証し、リダイレクトURIを完全一致で照合しなければならないと定めています。5 これはCherry Studioがコールバックのバグを出荷する1年前に公開されたものです。ギャップは知識ではありません。仕様書のセキュリティ付録と、先週の火曜日に書かれた平均的なインテグレーションとのあいだの距離なのです。
プロンプトインジェクションは、この増幅を旧来のウェブが直面したどの問題よりも質的に悪くします。Willisonは2022年9月にこの語を作り、「I propose that the obvious name for this should be prompt injection(これの明白な名前はプロンプトインジェクションであるべきだと提案する)」と書きました。SQLインジェクションとの類比です。信頼された指示と信頼できない入力が1つの文字列に連結され、エンジンがそれを解釈してしまう、という構図ですね。6 エージェントにとっては、コードだけでなくデータそのものが攻撃ベクトルになります。汚染されたウェブページ、罠が仕掛けられたファイル、敵対的なツールの説明文。モデルが読むあらゆるバイトが指示を運びうるのです。MCP仕様書もこの点を率直に述べ、悪意あるサーバーがクライアントをデータ持ち出しのプロキシに変えうると警告しています。5 これは入力のエスケープでは塞げません。入力は自然言語であり、インタプリタはモデルだからです。
1998年というアナロジーを正確に
アナロジーはファクトチェックに耐えなければ、ただの雰囲気で終わります。そこであの時代を、正確に振り返ってみましょう。
PHP 3は1998年6月に出荷され、動的なウェブ言語を数百万人の手に渡しました。そのデフォルトは、いま読むと無謀としか言いようがありません。クエリ文字列、Cookie、サーバーからの外部入力が、そのままグローバルスコープに登録されたのです。register_globals はオンで、攻撃者が制御する変数が、コードの信頼する変数へ静かにすり替わりえました。修正には4年かかりました。2002年4月にリリースされたPHP 4.2.0がデフォルトを変更し、リリースアナウンスはこう明言しています。「External variables (from the environment, the HTTP request, cookies or the web server) are no longer registered in the global scope by default.(環境、HTTPリクエスト、Cookie、ウェブサーバーからの外部変数は、デフォルトではグローバルスコープに登録されなくなりました)」8 もう1つの時代を象徴する松葉杖であるmagic quotesは、addslashes を走らせてSQLインジェクション対策を実質なしに演出し、register_globalsより何年も長く生き延びた末、ようやく葬られました。安全でないデフォルト、安全だという錯覚、そして文化が追いつくまでの数年の遅れ。それが若きウェブのアプリケーション層でした。
その文化は自然に到来したのではありません。強制されたのです。2001年7月19日、Code RedワームがマイクロソフトのIISウェブサーバーのバッファオーバーフローを突き、CAIDAの集計によれば「more than 359,000 computers were infected with the Code-Red (CRv2) worm in less than 14 hours(14時間足らずで35万9,000台を超えるコンピューターがCode-Red(CRv2)ワームに感染した)」。9 2003年1月25日には、Sapphire/SlammerワームがMicrosoft SQL Serverのバッファオーバーフローを突き、自身を376バイトのパケットに詰め込み、「infected most of the vulnerable hosts that could be found within ten minutes(10分以内に、見つけられる脆弱なホストのほとんどに感染した)」。当時としては史上最速で広がったワームです。10 これらはインフラのワームであってPHPのバグではなく、両者を混同するつもりはありません。要点はあの10年の輪郭です。すべての層にわたる安全でないデフォルトと、安全でないことが体感的にも公然とも高くつくようになって初めて成熟したセキュリティ文化。セキュア・バイ・デフォルトは、業界がワームという代償で学んだ教訓でした。
これを2026年に重ねると、対応関係は居心地が悪いほどよく合います。安全でないデフォルト。コールバックのcodeを信頼し、同意チェックを省くエージェントクライアント。安全だという錯覚。admin:* のスコープを持つトークンの上にかぶせた許可プロンプト。爆発するインストールベース。何にでも対応するMCPサーバーが、ワンクリックで追加され、誰にも監査されない状態。エコシステムにまだないのはワームだけです。1998年のデフォルトと2001年の標的プロファイルを備えたまま、強制力の到来を待っているのです。
運用者の構え
文化の到来を待っている余裕はありません。いまこれらのツールを動かしているのはあなたですから、エコシステムがまだ引いてくれていない境界は、あなたが引くことになります。私が使っている枠組みは、あの三要素を運用チェックリストに変えたものです。どのエージェントについても、何を読めるのか、何を実行できるのか、何を外部へ持ち出せるのかを問い、それぞれに決定論的なガードを置きましょう。
| 能力 | エージェントがすること | 破綻するところ | ガード |
|---|---|---|---|
| 読み取り | ファイル、ウェブページ、ツール出力、MCPレスポンスを取り込む | 信頼できないコンテンツが注入された指示を運ぶ | 取得したバイトはすべて敵対的な入力として扱い、決して指示として扱わない。外部データソースにはラベルを付けて隔離する |
| 実行 | 設計上、シェルを走らせ、ファイルを編集し、ツールを呼ぶ | 細工されたデータがコマンドに化ける(インジェクション、混乱した代理人) | 呼び出し前に評価される許可ルール。ツールとMCPサーバーの許可リスト化。新しいローカルサーバーには同意を必須にする |
| 持ち出し | 外向きのリクエストを出し、リポジトリに書き込み、APIへ送信する | 読み取りと実行がそろい、致命的な三要素が完成する | エグレス制御。プライベートおよびリンクローカルのIPレンジを遮断。トークンは最小権限にスコープし、決して素通しさせない |
ガードの列は願望ではありません。決定論的であり、その決定論こそが要点です。フックはライフサイクルイベントで発火し、モデルが反論できない終了コードを返します。許可ルールはツールの実行後ではなく実行前に評価されます。「エージェントはXをすべきでない」が「エージェントはXができない」に変わるのがこの層であり、プロンプトインジェクションのペイロードが言葉で通り抜けられない唯一の層でもあります。入力を信頼できず、その入力についてモデルが自分を取り締まることも信頼できないなら、モデルが制御しない境界で強制するしかありません。
2つ目の統制は、一見すると生産性の機能ですが、実体はセキュリティの機能です。エージェントが実行前に作業をレビュー可能な計画へとコンパイルするとき、その計画をレビューすることはセキュリティレビューになります。呼び出すツールと触れるファイルをすべて明記した40行のワークフロースクリプトは、1分で読める脅威モデルです。1万回のライブな判断を監査することはできませんが、それらを生み出すはずの計画なら、何も消費される前に監査できます。
そして非対称性も視野に入れておきましょう。これらのCVEを生む能力は、それを見つける能力でもあります。あるAnthropicの研究者は、コーディングエージェントと10行のスクリプトで23年もののLinuxカーネルの脆弱性と22件のFirefoxのCVEを浮かび上がらせました。あなたの机の上のツールは、向けさえすれば自分のスタックに向けられる脆弱性スキャナーなのです。防御側は今日すでに発見を自動化でき、トリアージの層をいま構築しています。それが1998年のウェブにはなかった唯一の優位点です。
8月24日の更新:公開以降の記録
本稿は、6月のクラスターが不運ではなく構造的なシグナルだと論じました。それから7週間の記録は次のとおりです。
MCPのロングテールは安定したCVEの流れを生んでいます。 8月中旬のある1週間で、コミュニティ製のMCPサーバー3件がCVEを受けました。Jij-MCP-ServerのPython REPLにおけるコードインジェクション(CVE-2026-19964)、android-mcp-serverにおける引数操作経由のコマンド実行(CVE-2026-19978)、そしてmcp-florence2におけるサーバーサイドリクエストフォージェリ(CVE-2026-19984)です。111213 いずれも中程度の深刻度で、2件はリモートから発火可能、3件目はエージェントが動くホストのローカルに限られます。そして中身はどれも古典的なクラス、すなわちインジェクション、サニタイズされていない実行、SSRFであり、エージェントの権限で動くツールに着弾しています。これは「MCPによる増幅」の節が構造的だと論じたシナリオ、つまり小さなインテグレーションのロングテールがそれぞれ潜在的なmcp-remoteであるという構図が、予定どおり到来したものです。
コミュニティのテールだけの話ではありません。 マイクロソフト純正の運用エージェントであるAzure SRE Agentは、8月7日にCVE-2026-62830を受けました。認可の欠落によりネットワーク越しの権限昇格が可能になるもので、スコアは9.9のクリティカルです。14 構造的な議論はもともとアマチュアのメンテナーについてのものではありません。エージェントツールとは何であるか、についての議論です。
攻撃研究がサプライチェーンに追いつきました。 ElasticBackは、たった1つのエージェントスキル文書に仕込まれた条件付きバックドアを実証し、スキルを「an emerging supply chain where a single poisoned skill can persistently compromise every agent that installs it(汚染された単一のスキルが、それをインストールするすべてのエージェントを持続的に侵害しうる、新興のサプライチェーン)」と位置づけました。15 そして配布に対するエコシステムの答えであるAgent Plugins 1.0は、パーミッションとプロヴェナンスをクライアント任せにしたまま、署名層をまったく持たずに出荷されました。パッケージング層がセキュリティ層より先に到着したわけで、これは本稿がスタック全体を定義すると論じたのと同じ順序です。能力が先に出荷され、セキュリティ文化が後を追う。
以下の予測は、手を加えずそのまま残します。
私の立場
間違いうるくらい具体的に、これから起きると私が考えていることを書きます。エージェント・エコシステムは、セキュリティ文化を手にする前にCode Redの瞬間を迎えます。ウェブがその順序でやったからです。強制力となるのは、おそらく共有されたMCPサーバーを介してエージェント間を移動する自己増殖型のプロンプトインジェクション・ペイロードか、人気があるのに監査の薄い1つのインテグレーションにたどり着く大規模な認証情報流出でしょう。作るのは安上がりです。カーネルのバグを見つけるのと同じモデルがそれを書けるからで、「大きな波が来る」という警告は、最初から防御だけの話ではありませんでした。
それが着弾したあと、セキュア・バイ・デフォルトは選択肢ではなくなります。MCPクライアントは、同意ダイアログをデフォルトでオンにし、トークンのオーディエンスを検証し、一致しないリダイレクトURIを拒否するコールバックを備えて出荷されるようになるでしょう。PHPが最終的に register_globals をオフにして出荷したのと同じです。許可の層はオプトインからデフォルト拒否へ移ります。生き残るインテグレーションは、仕様書のセキュリティ付録こそが仕様だと扱ってきたものです。
居心地が悪いのはタイムラインのほうです。ウェブがセキュア・バイ・デフォルトを内面化するには、およそ1998年から2005年までかかり、ワームとワームのあいだには考えるための年月がありました。エージェントスタックはもっと速く積み上がります。開発者のマシン1台1台により価値の高い標的が乗り、攻撃側のツールチェーンはモデルの世代ごとに改善されるからです。1998年問題は実在します。残された問いは、ワームが結末を書く前にこのアナロジーに基づいて動くのか、それとも書かれたあとなのか、それだけです。
要点
- すべてのエージェントに三要素の監査を実施しましょう。 各ツールが何を読み、何を実行し、何を外部へ持ち出せるのかを書き出し、行ごとに決定論的なガードがあることを確認します。ガードのない能力こそがあなたの露出であり、次のペイロードが着弾する場所です。
- MCPサーバーは許可リスト方式にし、コマンドのパラメータはすべて信頼できない実行として扱いましょう。 インテグレーションの追加はワンクリックでも、その監査はそうではありません。登録はレビュー済みの一覧に限定してください。本稿の4件のCVEのうち2件はMCPクライアントのOAuthフローのバグでした。ハンドシェイクは形式ではなく境界です。
- 計画の時点をレビューのゲートにしましょう。 エージェントに意図をレビュー可能な計画へコンパイルさせ、実行前にそれを脅威モデルとして読みます。ツールとファイルを明記したスクリプトは1分で監査できますが、1万回のライブなツール呼び出しはそうはいきません。
- スキャナーはまず自分に向けましょう。 これらのCVEを生む能力は、それを見つける能力でもあります。誰かがあなたに向けて走らせる前に、自分のコードと依存関係にエージェント支援のセキュリティスイープをかけてください。
よくある質問
MCPサーバーは安全ですか?
デフォルトでは安全ではありませんし、一様でもありません。MCPはプロトコルであり、そのセキュリティは各サーバーとクライアントの実装に依存します。2025年に公開されたmcp-remote(CVSS 9.6)とAnthropicのMCP Inspector(CVSS 9.4)に対する報告は、リファレンス実装でさえ深刻なRCEの脆弱性を出荷したことを示しています。34 仕様書は、混乱した代理人、トークンの素通し、SSRF、ローカルサーバーの侵害といった主要な攻撃クラスを記述し、具体的な緩和策を定めています。5 各サーバーは特権的なインテグレーションとして扱ってください。信頼できるか監査済みのものだけを動かし、明示的に許可リストへ登録し、接続するサーバーはどれもあなたのエージェントに影響を与えうると想定しましょう。
プロンプトインジェクションとは何ですか?
プロンプトインジェクションとは、AIシステムが読む信頼できない入力に攻撃者が指示を紛れ込ませ、モデルがそれをあなたからの指示のように実行してしまう現象です。Simon Willisonは2022年9月、SQLインジェクションとの類比でこの語を作りました。信頼された指示と信頼できない入力が1つのプロンプトに連結され、モデルがそれを解釈するとき、どの部分が攻撃者のものかを確実に見分ける手立てはありません。6 エージェントにとって特に危険なのは、データが攻撃ベクトルになるからであり、インタプリタが言語モデルである以上、エスケープ処理では解決できないからです。
致命的な三要素(lethal trifecta)とは何ですか?
2025年6月にSimon Willisonが付けた名前で、組み合わさるとエージェントを悪用可能にする3つの能力を指します。あなたのプライベートデータへのアクセス、信頼できないコンテンツへの露出、そして外部と通信する能力です。7 3つすべてを備えたエージェントは、注入されたコンテンツによって、あなたの機密を読み出して攻撃者へ送るよう操作されえます。有能なエージェントのほとんどはデフォルトで3つを備えているため、モデルが抵抗してくれることを期待するのではなく、能力ごとにガードを置くのが定石となります。
自分のマシンで動くエージェントは、どう安全にすればよいですか?
モデルが制御しない境界から始めましょう。ツールの実行前に評価される許可ルールとフックを使えば、侵害されたプロンプトが言葉を尽くしても、あなたが禁じた操作にはたどり着けません。ツールとMCPサーバーを許可リスト化し、新しいローカルサーバーの実行前には同意を必須にし、すべての認証情報を最小権限にスコープして、盗まれたトークンの被害範囲を小さく保ちます。持ち出し経路を塞ぐため、プライベートおよびリンクローカルのIPレンジへの外向きリクエストを遮断してください。そのうえで、大きな操作の前にはエージェントの計画をレビューします。読み取りの境界をすり抜けたインジェクションは、そこで捕まるのです。
出典
-
CVE-2026-13524、CircL Vulnerability-Lookup、vulnerability.circl.lu/vuln/cve-2026-13524(2026年6月29日公開)。CherryHQ cherry-studio 1.9.0から1.9.6までのMCP OAuth Local Callback Serverにおける不適切な認可(CWE-285)、ファイルは
src/main/services/mcp/oauth/callback.ts。「The manipulation of the argument code leads to improper authorization.」CVSS 3.1基本スコア5.6(中)。GHSA-9c5h-h4mj-p5ch。修正はpull request #15388で提案されています。 ↩↩ -
CVE-2026-13534、CircL Vulnerability-Lookup、vulnerability.circl.lu/vuln/cve-2026-13534(2026年6月29日公開)。CherryHQ cherry-studio 1.9.7までのCherryIN preload APIにおける認可バイパス(CWE-639)、関数は
src/main/services/memory/MemoryService.tsのsha256。CVSS 3.1基本スコア5.0(中)。GHSA-qwwm-4xhq-q4m4。ベンダーは、memory機能をv2で削除する予定だと述べています。 ↩↩ -
CVE-2025-6514、GitHub Advisory Database、github.com/advisories/GHSA-6xpm-ggf7-wc3p(2025年7月9日公開)。「OS command injection when connecting to untrusted MCP servers due to crafted input from the authorization_endpoint response URL」、対象はmcp-remoteのバージョン >= 0.0.5、< 0.1.16。CVSS v3基本スコア9.6(クリティカル)。0.1.16で修正済み。発見と詳細はJFrog Security Researchによるもの。クライアントへの影響範囲(Claude Desktop、Cursor、Windsurf)はJFrog’s advisory postより。 ↩↩↩
-
CVE-2025-49596、Tenable Research、”How Tenable Research Discovered a Critical Remote Code Execution Vulnerability on Anthropic MCP Inspector”、tenable.com(2025年7月9日)。AnthropicのMCP Inspector 0.14.1未満におけるRCE。根本原因はInspectorクライアントとプロキシのあいだの認証チェックの欠落で、悪意あるウェブサイトからCORSとDNSリバインディング経由で悪用可能。CVSS 9.4(クリティカル)。プロキシのセッショントークン追加により0.14.1で修正。 ↩↩↩
-
“Security Best Practices”、Model Context Protocol仕様、リビジョン2025-06-18、modelcontextprotocol.io/specification/2025-06-18/basic/security_best_practices。混乱した代理人問題を記述し、MCPプロキシサーバーは「MUST implement per-client consent」として、OAuthの
state検証とリダイレクトURIの完全一致照合を義務づけています。トークンの素通し(「MCP servers MUST NOT accept any tokens that were not explicitly issued for the MCP server」)、SSRF、セッションハイジャック、ローカルサーバーの侵害も扱っています。 ↩↩↩↩ -
Simon Willison、”Prompt injection attacks against GPT-3”、simonwillison.net/2022/Sep/12/prompt-injection/(2022年9月12日)。「I propose that the obvious name for this should be prompt injection」としてこの語を提唱し、SQLインジェクションとの類比、および信頼された指示と信頼できない入力の連結という構図を示しています。 ↩↩
-
Simon Willison、”The lethal trifecta for AI agents: private data, untrusted content, and external communication”、simonwillison.net/2025/Jun/16/the-lethal-trifecta/(2025年6月16日)。組み合わさるとエージェントを悪用可能にする3つの能力、すなわち「access to your private data」「exposure to untrusted content」「the ability to externally communicate」を名指しています。 ↩↩
-
“PHP 4.2.0 Release Announcement”、php.net/releases/4_2_0.php(2002年4月)。セキュリティ上のデフォルト変更を記録しています。「External variables (from the environment, the HTTP request, cookies or the web server) are no longer registered in the global scope by default.」これは
register_globalsをデフォルトでオフにする変更で、PHP 3が1998年にデフォルトでオンの挙動を出荷してからおよそ4年後のことです。 ↩ -
“CAIDA Analysis of Code-Red”、CAIDA、caida.org/archive/code-red。「More than 359,000 computers were infected with the Code-Red (CRv2) worm in less than 14 hours」。2001年7月19日に始まり、マイクロソフトIISのバッファオーバーフローを悪用しました。ピーク時には「more than 2,000 new hosts were infected each minute」。 ↩
-
“The Spread of the Sapphire/Slammer Worm”、CAIDA、caida.org/archive/sapphire。2003年1月25日土曜日、協定世界時のおよそ午前5時30分に放たれ、Microsoft SQL Serverのバッファオーバーフローを悪用しました。ワームは376バイトのパケットを構成し、「infected most of the vulnerable hosts that could be found within ten minutes」。当時としては史上最速で広がったワームです。 ↩
-
CVE-2026-19964、NVD、2026年8月17日公開、CVSS 3.1基本スコア5.5(中)。Jij-MCP-Server 0.1.0における
PythonREPL.run関数(jij_mcp/python_repr.py、jm_checkコンポーネント)経由のコードインジェクション。「manipulation of the argument code results in code injection」、リモートから発火可能。 ↩ -
CVE-2026-19978、NVD、2026年8月17日公開、CVSS 3.1基本スコア5.3(中)。android-mcp-serverにおける
child_process.exec(build/index.js)経由のコマンド実行で、deviceId/packageName引数の操作によるもの。ローカルの攻撃ベクトル(AV:L)。 ↩ -
CVE-2026-19984、NVD、2026年8月17日公開、CVSS 3.1基本スコア6.3(中)。mcp-florence2の0.3.13までにおける
get_images関数のsrc引数経由のサーバーサイドリクエストフォージェリ。リモートから発動可能。 ↩ -
CVE-2026-62830、NVD、2026年8月7日公開、CVSS 3.1基本スコア9.9(クリティカル)。「Missing authorization in Azure SRE Agent allows an authorized attacker to elevate privileges over a network.」 ↩
-
ElasticBack: Stealthy Conditional Backdoor in LLM-Agent Skills via Coupled Trigger-Rule Optimization、Sui et al.、2026年8月。サプライチェーンに関する引用は要旨に逐語で登場します。この論文は、条件付きの単一スキル・バックドアを実証しています。 ↩