Apa yang terjadi
Diverifikasi via liputan turunan advisory (secalerts/insightcve, publikasi 20 Oktober): CVE-2026-111770 (CVSS 7.7) adalah cacat perlombaan/kepemilikan dalam perutean respons server MCP — pesan yang dicocokkan dengan id JSON-RPC saja menyebabkan respons dan notifikasi satu klien dikirim ke klien lain. Gelombang advisory yang sama juga mencakup kelelahan memori isi permintaan (CVE-2026-111768), auth bearer tanpa pemeriksaan audiens (CVE-2026-111771), tugas eksperimental tidak terikat ke sesi (CVE-2026-111767, sebelumnya dicakup terpisah), dan transport klien mengikuti pengalihan lintas asal sambil meneruskan refresh_token/client_secret (CVE-2026-111769).
Mengapa penting
MCP adalah perangkaian standar antara agen, perkakas dan gateway model. Bug pengiriman lintas klien senyap di SDK server resmi berarti lalu lintas perkakas agen satu pengguna (kueri, keluaran perkakas, berpotensi kredensial) dapat mendarat di sesi pengguna lain di gateway MCP bersama — kebobolan kerahasiaan lintas penyewa di SDK protokol agen inti.
Vektor serangan
Dua klien dengan permintaan bersamaan yang sedang berlangsung terhadap instance transport/server yang dipetakan HTTP bersama; SDK mencocokkan pesan ke koneksi dengan id JSON-RPC saja, dan klien SDK memberi nomor permintaan dari 0, sehingga id bertabrakan dalam penggunaan normal — tidak diperlukan id yang direkayasa. Respons dan notifikasi dikirim silang secara senyap.
Sistem yang terdampak
@modelcontextprotocol/server (SDK server TypeScript MCP) 2.0.0 – 2.2.0; diperbaiki di 2.3.0 (juga bagian dari gelombang advisory SDK MCP 20 Oktober yang memperbaiki masalah @modelcontextprotocol/sdk di 1.32.0)
Mitigasi
Tingkatkan ke @modelcontextprotocol/server 2.3.0+ DAN refaktor aplikasi untuk membuat server baru per sesi (mis. pabrik createMcpHandler()); setelah peningkatan, aplikasi instance bersama gagal dengan keras dengan ALREADY_CONNECTED — yang merupakan diagnostik yang dimaksudkan. Advisory GHSA-jm63-cq47-j5jp; commit perbaikan 84804c22e45a662675a198f853b7f00063838a8d.