Node.js Tambal 10 Celah Keamanan, Bug di Dekompresi Brotli Bisa Berujung Eksekusi Kode

Logo Node.js

Di hari yang sama dengan patch darurat PHP2Shell, tim Node.js juga merilis pembaruan keamanan. Rilis 21 Oktober 2026 menambal 10 celah: empat berisiko tinggi, tiga sedang, dan tiga rendah. Semua jalur rilis yang masih didukung terdampak, yaitu Node.js 22, 24, dan 26.

Tim Node.js tidak melaporkan adanya eksploitasi aktif. Meski begitu, celah yang paling serius cukup mudah dijangkau oleh aplikasi web biasa.

Empat celah berisiko tinggi

Celah paling berat adalah CVE-2026-111497, bug out-of-bounds write di dekoder Brotli bawaan Node.js. Data terkompresi yang dirusak bisa membuat dekoder terus menulis melewati batas buffer. Akibatnya bisa berupa crash, kebocoran isi memori, sampai eksekusi kode jarak jauh. Aplikasi yang mendekompresi data kiriman pengguna lewat node:zlib perlu segera diperbarui.

Tiga celah tinggi lainnya menyangkut pengecekan nama host dan sertifikat. CVE-2026-105482 membuat fungsi dns.resolve dan dns.reverse memotong nama host di karakter NUL, sehingga daftar domain yang diizinkan (allowlist) bisa diakali. Celah ini merupakan perbaikan yang belum tuntas dari CVE-2026-48930. Dua lainnya, CVE-2026-106069 dan CVE-2026-105483, memungkinkan validasi sertifikat TLS lolos untuk alamat IP yang ditulis dengan format tidak lazim, misalnya angka nol di depan atau digit full-width.

Enam celah sisanya hanya muncul dalam kondisi khusus, misalnya pada Permission Model, snapshot startup, atau pembacaan arsip ZIP di Node.js 26.

Versi yang aman

Perbarui ke Node.js 22.23.4, 24.22.1, atau 26.12.1, atau rilis yang lebih baru di jalur yang sama. Tim Node.js tidak menerbitkan workaround, jadi update adalah satu-satunya jalan.

Pengguna Node.js 20 ke bawah, serta versi ganjil 21, 23, dan 25, perlu perhatian lebih. Semua versi itu sudah end-of-life, ikut rentan, dan tidak akan mendapat patch. Tim Node.js menyarankan pindah ke versi yang masih didukung. Kalau server produksi kamu masih memakai Node.js 18 atau 20, sekarang saatnya menjadwalkan migrasi.

Sumber: Node.js, Konfirmity. Gambar: Node.js

Tinggalkan Balasan

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *