Malicious MCP Servers Enable Stealthy Prompt Injection to Drain System Resources
2025/12/09 gbhackers — Model Context Protocol (MCP) のサプリング機能に、深刻な脆弱性が存在することを、Unit 42 のセキュリティ研究者たちが公表した。この脆弱性を悪用する悪意のサーバは、ステルス性の高いプロンプト・インジェクション攻撃を、ユーザーに気付かれることなく実行できる。その結果として、計算リソースの浪費や、LLM アプリケーションの侵害などが可能になる。発見された脆弱性は、プロトコル固有の信頼モデルと堅牢なセキュリティ制御の欠如を悪用する3つの主要な攻撃ベクターを持つ。

特定された3つの攻撃ベクター
研究者たちが用いたのは、コーディング支援のために MCP を統合する、コーディング・コパイロット・アプリケーションである。それにより実証されたのは、実用的な PoC エクスプロイトによる侵害である。
この実験の結果として明らかにされたのは、悪意の MCP サーバによるリソースの窃取/会話の乗っ取り/ツールの秘密裏の呼び出しを介して、サンプリング機能の悪用が可能なことだった。
1:リソース窃取攻撃の結果として生じるのは、悪意のサーバによる正当なプロンプトを介した秘密の指示の追加と、LLM による膨大な追加コンテンツの生成であるが、いずれもユーザーには検知できない。
このテストで研究者たちは、コードサマライザー・ツールを作成した。このツールは、リクエストに応じたコード・サマリーを生成するが、それに加えて、架空のストーリーを秘密裏に生成するよう LLM に指示する。
ユーザーが受け取るのは期待されたサマリーのみであるが、LLM はバックグラウンドで最大 1,000 語の追加テキストを生成し、計算リソースと API クレジットを不正に消費していた。
2:会話ハイジャック攻撃は、より永続的な侵害をもたらす。LLM のレスポンスに指示を挿入することで、悪意のサーバは複数回にわたって AI アシスタントを侵害し、その動作を根本から変更できる。
ある実験では、挿入された指示を受けた AI が、その後の対話において、海賊語で応答するようになった。しかし、より高度な指示により、アシスタントが危険かつ信頼できない状態に導かれる可能性がある。
最も懸念されるのは、悪意のサーバが秘密のツール呼び出し、不正なシステム操作をトリガーする状況である。
3:研究者たちが実証したのは、侵害されたサーバがユーザーの明示的な許可を受けずに、 LLM がファイル書き込みツールを起動させる方法である。それにより、データ窃取/永続化メカニズム/不正なシステム変更が可能になる。
この攻撃が成功するのは、LLM がファイル操作を、正当なツール呼び出しだと捉えるからである。
この研究が明らかにしたのは、セキュリティ制御のない暗黙的な信頼モデルに、MCP のサンプリング機能が依存していることである。このモデルにより、MCP を利用するエージェントに、新たな攻撃ベクターが生じる。
ユーザーがインターフェイス上で見る情報と、LLM が実際に処理する情報が乖離しているため、リソース枯渇攻撃や悪意アクティビティの完全な隠れ蓑が成立してしまう。
MCP の実装ごとに出力フィルタリングや表示方法が異なるため、LLM のレスポンス全体が表示される場合もあれば、実際のコンテンツを隠すための要約レイヤーが使用される場合もある。

Palo Alto Networks が推奨するのは、これらの脅威から AI システムを保護するための、組織的かつ包括的なセキュリティ対策の実施である。
MCP ベースのシステムにおいて不可欠なものとして、サンプリング要求の検証強化/異常なトークン消費パターンの監視/持続的プロンプト・インジェクションに対する保護策の実装など、堅牢なセキュリティ管理があると、この調査結果が示している。
AI アプリケーション全体で MCP の採用が拡大するにつれて、LLM を利用するツールやサービスの整合性およびセキュリティを維持するためにも、これらの攻撃ベクターへの理解が不可欠になる。
MCP のサンプリング機能に見つかった脆弱性は、仕組みそのものがサーバを信頼しすぎていることに原因があります。ユーザーが見ている情報とは別に、LLM が隠れた指示を処理してしまうため、悪意あるサーバに会話を乗っ取られたり、余計な計算をさせられたりする状況が生まれてしまいます。特に、暗黙的な信頼モデルと不十分な検証が重なることで、気付かないうちにツールが勝手に動く点が危険であると、この記事は指摘しています。よろしければ、MCP での検索結果も、ご参照ください。





You must be logged in to post a comment.