脆弱性  ·  2026-10-22

MCP TypeScriptサーバーSDKが、あるクライアントの応答/通知を別のクライアントに配信 — サイレントなクロスクライアントデータ漏洩 (CVE-2026-111770)

脆弱性High 影響度GlobalCVE-2026-111770
アドバイザリ由来のカバレッジ(secalerts/insightcve、10月20日公開)で検証済み: CVE-2026-111770 (CVSS 7.7) は、MCPサーバー応答ルーティングにおける競合/所有権の欠陥です — JSON-RPC idのみでメッセージをマッチングするため、あるクライアントの応答と通知が別のクライアントに配信されます。同じアドバイザリウェーブには、リクエストボディのメモリ枯渇 (CVE-2026-111768)、オーディエンスチェックなしのベアラー認証 (CVE-2026-111771)、セッションにバインドされていない実験的タスク (CVE-2026-111767、以前に個別にカバー済み)、refresh_token/client_secretを転送しながらクロスオリジンリダイレクトに従うクライアントトランスポート (CVE-2026-111769) も含まれていました。
MCPは、エージェント、ツール、モデルゲートウェイ間の標準的な配線です。公式サーバーSDKのサイレントなクロスクライアント配信バグは、あるユーザーのエージェントツールトラフィック(クエリ、ツール出力、潜在的に資格情報)が、共有MCPゲートウェイ上の別のユーザーのセッションに到達する可能性があることを意味します — コアエージェントプロトコルSDKにおけるクロステナントの機密性侵害です。
共有HTTPマップトランスポート/サーバーインスタンスに対する並行インフライトリクエストを持つ2つのクライアント; SDKはJSON-RPC idのみでメッセージをコネクションにマッチングし、SDKクライアントはリクエストを0から番号付けするため、通常の使用でidが衝突します — 巧妙なidは不要です。応答と通知はサイレントにクロス配信されます。
@modelcontextprotocol/server (MCP TypeScriptサーバーSDK) 2.0.0 – 2.2.0; 2.3.0で修正(@modelcontextprotocol/sdkの問題を1.32.0で修正した10月20日のMCP SDKアドバイザリウェーブの一部でもあります)
@modelcontextprotocol/server 2.3.0以上にアップグレードし、アプリをリファクタリングしてセッションごとに新しいサーバーを作成してください(例: createMcpHandler() ファクトリ); アップグレード後、共有インスタンスアプリはALREADY_CONNECTEDで大きく失敗します — これが意図された診断です。アドバイザリ GHSA-jm63-cq47-j5jp; 修正コミット 84804c22e45a662675a198f853b7f00063838a8d。
SecAlerts CVE-2026-111770InsightCVE analysis of CVE-2026-111770Dev Daily Briefs AI Security roundup Oct 21
ライブフィードで見る AIセキュリティとガバナンスの関連情報をさらに見る — 毎朝更新。
フィードを開く →