
CVE-2026-75130: Server dokumentasi MCP milik Context7 mendapat skor 9,0, dan catatan tersebut tidak menyebutkan versi perbaikan apa pun
- OrcaBARUOrcaCyber: MiniMax M3.1 Flash Abliterated2026-10-29131 tok/s
- OrcaBARUOrcaCyber: GLM 5.3 Flash Abliterated2026-10-2792 tok/s
- OrcaBARUOrcaCyber: Qwen3.8 Flash Next Abliterated2026-10-26$0.80 / $1.60 per 1 juta token · 260 tok/s
- OrcaBARUOrcaCyber: MiMo V2.6 Flash Abliterated2026-10-26$0.80 / $1.60 per 1 juta token · 92 tok/s
- MoonshotBARUMoonshotAI: Kimi K3.1 Pro2026-10-2446Kecerdasan
- OrcaBARUOrcaCyber: DeepSeek V4.1 Flash Abliterated2026-10-23$0.80 / $1.60 per 1 juta token · 104 tok/s
- minimaxBARUMiniMax: M3.1 Flash2026-10-1929Kecerdasan
- OrcaBARUOrca: OrcaCyber Ultra 1.02026-10-17$5.00 / $10.00 per 1 juta token · 65 tok/s
- deepseekBARUDeepSeek: DeepSeek V4.1 Flash 10172026-10-1733Kecerdasan
- DeepSeekBARUDeepSeek: DeepSeek V4.1 Flash2026-10-1740Kecerdasan
- OrcaOrca: OrcaCyber Zero 1.52026-10-10$3.00 / $7.50 per 1 juta token · 101 tok/s
- openaiOpenAI: GPT-6.1 Sol2026-09-2955Kecerdasan
- anthropicAnthropic: Claude Sonnet 5.52026-09-2854Kecerdasan
- typesafeTypeSafe: Jev 1.132026-09-24$0.04 / $0.00 per 1 juta token · 180 tok/s
- OpenAIOpenAI: GPT-6 Luna2026-09-2228Kecerdasan
- OpenAIOpenAI: GPT-6 Sol2026-09-2248Kecerdasan
- AnthropicAnthropic: Claude Opus 5.52026-09-2258Kecerdasan
- xiaomiXiaomi: MiMo-V2.6-Flash2026-09-2127Kecerdasan
- xiaomiXiaomi: MiMo-V2.6-Pro2026-09-2130Kecerdasan
- xAIGrok 4.72026-09-2134Kecerdasan
Pada 18 Agustus 2026, VulnCheck menerbitkan CVE-2026-75130 untuk Context7, server dokumentasi pustaka yang dijalankan Upstash untuk Model Context Protocol dan yang ditanyakan oleh agen pengodean untuk memperoleh dokumentasi spesifik versi. Kerentanan ini berada pada fitur yang oleh Upstash disebut Custom AI Instructions: pemilik pustaka melampirkan panduan ke entri dokumentasi, Context7 menyajikan panduan itu ke jendela konteks setiap agen yang mencari pustaka tersebut, dan tidak ada yang menyaringnya di jalur itu. Noma Security, yang peneliti kerentanan AI seniornya, Eli Ainhorn, dikreditkan sebagai penemu, mendemonstrasikan bahwa entri beracun dapat membuat agen yang terhubung membaca .env file di akar proyek, mengirim isinya ke repositori GitHub yang dikendalikan penyerang sebagai issue, dan menghapus folder lokal dengan dalih “pembersihan” — semuanya berasal dari permintaan dokumentasi rutin. Tidak ada korban yang tercatat. Sisa insiden agen yang terdokumentasi, masing-masing dengan tingkat keparahannya, nilai keyakinannya, dan penanda sengketanya sendiri, berada di arsip insiden AI, tempat entri-entri di sekitar catatan ini dapat dibaca bersamanya.
Server Context7 kecil, dan itulah bagian yang perlu dipahami lebih dulu. Tulisan Noma mencatat bahwa server itu mengekspos dua alat, resolve-library-id dan query-docs, dan bahwa ia tidak dapat mengeksekusi kode, menulis file, atau mengakses jaringan sendiri. Setiap dampak yang didokumentasikan dilakukan oleh agen di ujung lain, yang memang memiliki akses sistem file, shell, dan jaringan di mesin pengembang. Registri npm menunjukkan seberapa besar basis terpasangnya: @upstash/context7-mcp telah diunduh 4,064,176 kali dalam tiga puluh hari dari 22 Juli hingga 20 Agustus 2026, rentang waktu sekitar publikasi.
Mekanisme: satu pustaka beracun, setiap agen yang mengkuerinya
Demonstrasi Noma, yang dijelaskan dalam tulisan ContextCrush tanggal 5 Maret 2026, berjalan dalam tiga langkah yang dilakukan agen, bukan server. Noma mendaftarkan sebuah pustaka di registri Context7 dengan aturan beracun terlampir. Instruksi dalam aturan tersebut mengarahkan agen untuk mencari dan membaca setiap file .env di akar proyek; instruksi lebih lanjut mengarahkannya untuk memposting isi tersebut ke repositori GitHub yang dikendalikan penyerang sebagai issue; rangkaian instruksi terakhir memerintahkannya untuk menghapus folder dan file lokal demi “pembersihan.” Permintaan yang menarik semua ini ke dalam konteks adalah permintaan biasa — meminta bantuan asisten coding terkait sebuah pustaka.
Alasan ini merupakan masalah rantai pasok dan bukan injeksi prompt biasa terletak pada di mana payload berada. Penyerang tidak pernah menjangkau mesin korban dan tidak pernah harus menanam teks dalam dokumen yang dibuka pengguna. Instruksi yang teracuni berada di registri Context7 sendiri, dihosting dan disajikan oleh infrastruktur Context7 sendiri, serta tiba melalui saluran tepercaya yang sama dengan dokumentasi sah, tanpa bisa dibedakan darinya. Noma mencatat bahwa skor kepercayaan Context7, yang menilai pustaka berdasarkan riwayat GitHub di belakangnya, tidak melindungi dari hal ini, karena akun berumur panjang dapat dibeli, dibajak, atau dibuat. Ringkasan perusahaan sendiri tentang poin struktural ini blak-blakan: “Permukaan serangan bukanlah apa yang dapat dilakukan server MCP. Melainkan apa yang dapat membuat agen AI melakukannya.”
Dua skor untuk satu bug
Advisory tersebut mencantumkan CVSS 3.1 9.0 (kritis) dan CVSS 4.0 6.4 (sedang). Kedua vektor disediakan oleh VulnCheck sebagai CNA yang menetapkan, dan NVD memuat keduanya tanpa perubahan, dengan mencantumkan VulnCheck sebagai sumber masing-masing. Perbedaan ini bukan kesalahan; ini adalah dua kerangka kerja yang menghitung kerusakan yang sama terhadap mesin yang berbeda. CVSS 3.1 menandai Scope sebagai Changed — injeksi melintasi dari server ke mesin pengembang dan lebih jauh lagi — sehingga mencatat dampak penuh kerahasiaan, integritas, dan ketersediaan dari kapabilitas agen pada bobot penuh. CVSS 4.0 menggantikan Scope dengan metrik terpisah untuk sistem yang rentan dan sistem berikutnya: ia mencatat tidak ada dampak kerahasiaan, integritas, atau ketersediaan untuk Context7 itu sendiri (VC:N/VI:N/VA:N) dan dampak tinggi pada sistem di hilir (SC:H/SI:H/SA:H), yang menurut formulanya diberi bobot lebih ringan. Server hanyalah perantara, bukan korban.
Perpecahan itu menjalar ke basis data. Advisori GitHub, GHSA-97r6-3rgm-v39r, diterbitkan pada 18:32 UTC tanggal 18 Agustus, setengah jam setelah CVE, dan tingkat keparahan ringkasannya tertulis sedang meskipun vektor CVSS 3.1 dalam catatan yang sama memberi skor 9.0. Basis Data Kerentanan UE milik ENISA mencerminkan entri tersebut sebagai EUVD-2026-61099 dan menyimpan skor dasar 6,4 hanya berdasarkan versi 4.0. Catatan arsip yang diikuti artikel ini menilai insiden tersebut tinggi — yang bukan salah satu dari dua skor yang diterbitkan — dan itu adalah nilai dari arsip, bukan pengukuran dari dirinya sendiri.

CVE yang diterbitkan pada Agustus untuk pengungkapan pada Maret
Pengenal CVE tersebut dicadangkan pada 17 Agustus 2026 dan diterbitkan pada 18:02 UTC tanggal 18 Agustus, yaitu tanggal yang tercantum pada catatan itu. Kontainer CNA juga memuat tanggal kedua yang tidak muncul di halaman agregator: datePublic, 5 Maret 2026 — lima setengah bulan sebelum pengenal itu ada, dan pada hari yang sama Noma menerbitkan ContextCrush. Satu-satunya referensi teknis dalam advisory tersebut adalah tulisan Maret itu, yang oleh VulnCheck diberi tag untuk deskripsi teknis dan eksploit.
Linimasa pengungkapan Noma menjelaskan selang waktu tersebut. Laporan itu menyebutkan bahwa Noma melaporkan celah tersebut kepada Upstash pada 18 Februari 2026 dengan laporan lengkap dan bukti konsep, mencatat bahwa Upstash menerima temuan dan mulai melakukan perbaikan pada 19 Februari, menyatakan bahwa perbaikan “diterapkan ke produksi dengan sanitasi aturan dan pagar pengaman” pada 23 Februari, serta menetapkan tanggal pengungkapan publik dan verifikasi akhir oleh Noma pada 5 Maret. Menurut keterangan Noma, bug Februari itu diselesaikan dalam hitungan hari.
Tanggal-tanggal di registri npm selaras dengan garis waktu itu sedemikian rupa sehingga membuat rentang terdampak tampak janggal. @upstash/context7-mcp 2.1.2 diterbitkan pada 23 Februari 2026 pukul 10:06 UTC, hari yang menurut Noma menjadi saat perbaikan mencapai produksi; baris changelog-nya berbunyi “Hapus peringatan yang tidak perlu dan perbarui deskripsi alat.” 2.1.3 menyusul pada 4 Maret 2026, sehari sebelum tulisan Noma, dengan catatan tentang menolak permintaan GET pada endpoint MCP dan menambahkan field sumber ke hasil pencarian. Tidak ada catatan rilis yang menyebut sanitasi, guardrail, atau injeksi. Rentang terdampak dari CNA berakhir pada 2.1.2, yang menjadikan 2.1.3 sebagai versi pertama di luar rentang tersebut.
Tiga tafsiran cocok dengan tanggal-tanggal tersebut, dan baik VulnCheck maupun Noma tidak menyatakan mana yang benar. Tafsiran pertama, yang dikemukakan Digital Applied dalam artikelnya pada 18 Agustus dan diulang oleh AI Security Wire pada 22 Agustus, adalah bahwa perbaikan tersebut mengalami regresi: build yang membawa patch Februari berada di dalam rentang terdampak Agustus. Tafsiran kedua adalah bahwa rentang itu semata-mata berpatokan pada build yang diuji peneliti, dan bahwa 2.1.3, yang dirilis sehari sebelum pengungkapan, adalah batas sebenarnya — sebuah inferensi yang dibuat secara mekanis oleh beberapa agregator, termasuk Feedly, yang mencantumkan “perbarui ke versi 2.1.3 atau yang lebih baru” sebagai mitigasi. Tafsiran ketiga adalah bahwa perbaikan Februari diterapkan di tempat aturan tersebut disajikan, bukan di paket klien, sehingga rentang versi npm sama sekali tidak menggambarkan perbaikan itu. Perbaikan keamanan senyap cukup umum sehingga tidak adanya entri changelog yang cocok tidak menyelesaikan apa pun ke arah mana pun.

Apa yang sudah mapan, dan apa yang belum
• Ditetapkan oleh catatan primer. Pengidentifikasi CVE, publikasinya pada 18 Agustus, VulnCheck sebagai CNA, klasifikasi CWE-1427 untuk netralisasi input yang tidak tepat yang digunakan untuk pemberian prompt LLM, kredit kepada Eli Ainhorn dari Noma Security, dan rentang terdampak Context7 hingga 2.1.2.
• Ditetapkan oleh penelitian Noma. Jalur injeksi melalui Custom AI Instructions, bukti konsep tiga langkah, pengamatan bahwa server hanya mengekspos resolve-library-id dan query-docs, serta pernyataan bahwa tidak ada bukti eksploitasi di dunia nyata yang teramati terhadap bug Februari.
• Ditetapkan oleh registri. Tanggal publikasi 2.1.2 yaitu 23 Februari 2026, tanggal publikasi 2.1.3 yaitu 4 Maret 2026, dan baris paket yang sejak itu telah melampaui 4.0 hingga 4.4.4 pada 19 Oktober 2026.
• Belum dipastikan: apakah build saat ini terdampak. Tidak ada sumber yang menyatakan bahwa lini 4.x rentan, dan tidak ada sumber yang menyatakan bahwa lini tersebut aman. Catatan CVE, advisory VulnCheck, dan advisory GitHub semuanya tidak mencantumkan versi perbaikan, dan daftar rentang versi rentan dalam advisory GitHub kosong.
• Belum terbukti: adanya korban atau penggunaan di alam liar. Arsip mencatat kerugian nyata sebagai tidak benar. Pengayaan catatan oleh CISA pada 19 Agustus menilai Eksploitasi sebagai “tidak ada”, Dapat diotomatiskan sebagai “tidak”, dan Dampak Teknis sebagai “total”; cacat tersebut tidak tercantum dalam katalog KEV; cermin ENISA mencatat EPSS sebesar 0,49 persen. Penelitian Noma adalah demonstrasi, bukan laporan insiden.
• Belum dipastikan: pembacaan regresi itu sendiri. Ini bersandar pada kebetulan tanggal antara linimasa perbaikan dan publikasi npm, dan tidak ada sumber primer yang menyatakan bahwa jalur kode yang sama gagal dua kali.

Koroborasi: pernyataan ulang, dan diam saat hal itu penting
Dokumen-dokumen yang sejalan dengan catatan tersebut sebagian besar diturunkan darinya. Advisory VulnCheck mengulang teks CVE dan menambahkan klasifikasi kelemahan serta kredit peneliti. Advisory GitHub adalah alias dari pengajuan yang sama, diterbitkan pada malam yang sama, tanpa rentang versi dan tanpa tinjauan independen. Entri ENISA adalah cermin. Digital Applied, salah satu dari dua sumber yang dikutip arsip, menerbitkan analisisnya pada 18 Agustus dan memperbaruinya pada 22 Agustus dengan tarikan registri baru; AI Security Wire menerbitkan tulisan kedua pada 22 Agustus. Keduanya mengulang advisory dan meneruskan inferensi regresi, dan tidak ada yang mengklaim telah memverifikasinya secara independen.
Kami tidak menemukan liputan ruang redaksi tentang CVE tersebut pada 29 Oktober 2026 — tidak ada artikel dari BleepingComputer, The Register, atau SecurityWeek — dan hasilnya adalah halaman-halaman agregator CVE, bukan laporan jurnalistik. Ketiadaan itu penting bagi cara catatan tersebut harus dibaca: arsip memberi peringkat A, terdokumentasi baik dengan sumber-sumber primer yang sejalan, dan sumber-sumber primer itu memang sejalan, tetapi kesesuaian di sini adalah antara catatan CNA dan riset yang dikutipnya, bukan antara dua pengukuran independen. Beberapa halaman agregator menambahkan klaim yang tidak didukung sumbernya; misalnya, entri Feedly menyatakan bahwa patch tersedia dan menyebut 2.1.3, yang tidak disebutkan oleh advisory mana pun, sementara halaman VulDB menampilkan pemeriksaan bot alih-alih konten dan sama sekali tidak dapat dibaca.
Apa yang berubah, dan apa yang tidak
Untuk bug Februari, Upstash bergerak dalam hitungan hari: diterima pada 19 Februari, diperbaiki pada 23 Februari, menurut keterangan Noma. Untuk catatan Agustus, satu-satunya pernyataan pemasok yang dirujuk CVE adalah pos LinkedIn dari Upstash, yang di sana ditandai sebagai nasihat vendor, yang isinya tidak dapat kami baca tanpa sesi. Tidak ada advisory keamanan GitHub yang mencakup repositori tersebut yang memuat versi perbaikan, dan entri NVD berada pada status Ditunda tanpa konfigurasi CPE dan modifikasi terakhir pada 22 Oktober 2026, sehingga analisis NVD sendiri tidak ada dalam catatan.
Paket itu sendiri terus dirilis. Antara 20 April 2025 dan 23 Oktober 2026, repositori upstash/context7 menerbitkan 163 rilis, dan tidak satu pun catatan mereka menyebut CVE ini atau menjelaskan sanitasi instruksi kustom yang membawa injeksi tersebut. Itu adalah catatan tentang apa yang dipilih para pemelihara untuk dituliskan, bukan bukti bahwa tidak ada yang diperbaiki.
Apa yang ditinggalkan catatan kepada operator adalah manajemen eksposur, bukan jalur patch. Rekomendasi Noma berpusat pada peninjauan integrasi MCP dan pemeriksaan atas apa yang lewat antara agen dan server saat runtime; tindakan yang disarankan OpenCVE adalah meningkatkan versi, menonaktifkan atau membatasi fitur Custom AI Instructions, serta menambahkan validasi input ke server. Versi operasional dari semua itu adalah tiga langkah yang sama: patok versi server MCP alih-alih mengambang pada versi terbaru, jauhkan kredensial produksi dari file lingkungan teks biasa yang dapat dibaca agen, dan perlakukan respons alat sebagai input yang tidak tepercaya, bukan sebagai dokumentasi yang mungkin diikuti agen.
Sepuluh minggu setelah publikasi, catatan publik masih berakhir di titik yang sama seperti pada 18 Agustus: sebuah pengenal, dua skor yang berbeda dua band, rentang terdampak yang batas atasnya adalah build yang dirilis pada Februari, dan tidak ada perbaikan yang disebutkan namanya. Siapa pun yang melakukan triase CVE-2026-75130 harus memutuskan berdasarkan apa yang dapat dijangkau agen mereka, karena catatan tersebut tidak memberi tahu versi mana yang harus dipasang.
