KelasIT.com
Cyber Security

DARURAT! Node.js Menambal 10 Celah Sekaligus: Brotli Bisa Jadi Pintu RCE, Gembok HTTPS Bisa Dikelabui. Update Sekarang!

Node.js 26.12.1, 24.22.1, dan 22.23.4 (21 Oktober 2026) menambal 10 celah, 4 berstatus High, termasuk Brotli RCE dan bypass verifikasi TLS. Penjelasan sederhana, cara cek versi, cara update, dan sumber resminya.

DARURAT! Node.js Menambal 10 Celah Sekaligus: Brotli Bisa Jadi Pintu RCE, Gembok HTTPS Bisa Dikelabui. Update Sekarang!

Pada 21 Oktober 2026, tim Node.js merilis pembaruan keamanan untuk tiga lini versi sekaligus: 26.12.1, 24.22.1 (LTS terbaru), dan 22.23.4. Rilis ini menambal 10 celah keamanan, 4 di antaranya berstatus High (tingkat tertinggi dalam rilis ini). Satu celah paling mengkhawatirkan: bug pada dekoder Brotli yang menurut pengumuman resmi memungkinkan eksekusi kode dari jarak jauh (RCE).

Artikel ini menjelaskan dengan bahasa sederhana: apa saja celahnya, siapa yang berisiko, apa yang harus Anda lakukan hari ini, dan di mana Anda bisa memeriksa sendiri faktanya.

Ringkasan 30 detik

  • Yang terjadi: 10 celah ditambal, 4 High, 3 Medium, 3 Low.
  • Paling serius: CVE-2026-111497, tulis memori di luar batas (out-of-bounds write) pada dekoder Brotli yang bisa berujung RCE.
  • Versi aman: Node.js 26.12.1, 24.22.1, atau 22.23.4.
  • Versi yang sudah EOL (misalnya 18, 20, 23, 25) tidak mendapat perbaikan. Pindah ke lini yang masih didukung.
  • Solusi utama: update Node.js. Halaman resmi tidak menyebut solusi sementara (workaround).

Istilah yang perlu Anda tahu

IstilahArtinya dengan bahasa sederhana
CVENomor identitas sebuah celah keamanan, seperti nomor KTP-nya. Dengan nomor ini Anda bisa mencari penjelasan resminya.
RCERemote Code Execution: penyerang bisa menjalankan perintah di komputer/server Anda dari jauh. Jenis celah paling berbahaya.
BrotliFormat kompresi data (seperti ZIP, tetapi untuk web). Banyak dipakai untuk memperkecil ukuran halaman dan file yang dikirim lewat internet.
DekoderBagian program yang membuka (men-dekompresi) data yang sudah dikompres.
Out-of-bounds writeProgram menulis data ke luar kotak memori yang disediakan, sehingga menimpa data lain di dekatnya.
TLS / sertifikatTeknologi di balik "gembok HTTPS". Sertifikat dipakai untuk membuktikan bahwa server yang Anda hubungi benar-benar server yang dimaksud.
LTS / EOLLTS: versi dengan dukungan jangka panjang. EOL (end-of-life): versi yang sudah tidak diberi perbaikan lagi.

Celah 1 (paling serius): Brotli bisa jadi pintu masuk RCE

(CVE-2026-111497, High, terdampak: 26.x, 24.x, 22.x)

Analogi. Bayangkan Anda membuka paket yang dikempeskan (vakum). Dekoder Brotli adalah alat yang mengembalikannya ke ukuran semula. Pada celah ini, paket yang dibuat khusus oleh penyerang membuat alat itu "mengembang" melewati batas kotak penyimpanannya dan menimpa barang di sebelahnya. Kalau barang yang tertimpa adalah petunjuk kerja program, penyerang bisa mengganti perintahnya.

Dampaknya. Pengumuman resmi menyebut celah ini memungkinkan eksekusi kode dari jarak jauh. Artinya, kode berbahaya bisa jalan dengan hak akses yang sama dengan aplikasi Node.js Anda: membaca variabel rahasia (.env, kunci API), mengakses database, atau menyebar ke sistem lain.

Siapa yang paling berisiko? Logikanya, aplikasi yang mendekompresi data Brotli yang berasal dari pihak luar, misalnya menerima request/respons terkompresi Brotli, memproses file unggahan, atau memanggil API pihak ketiga. Halaman resmi hanya memuat judul celah dan tidak merinci kondisi eksploitasinya, jadi cara paling aman adalah tidak berasumsi aman dan langsung update.

Celah 2-4: gembok HTTPS bisa dikelabui

Tiga celah High lain menyangkut pengecekan sertifikat TLS (pengecekan "apakah server ini benar-benar yang saya tuju?"). Analoginya satpam yang mengecek nama di kartu identitas tetapi bisa dikelabui lewat penulisan nama yang aneh.

  • CVE-2026-105483 (High; terdampak 26.x, 24.x): pengecekan nama host pada sertifikat bisa dilewati jika alamat IP ditulis memakai angka fullwidth (angka lebar ala huruf Jepang/Mandarin).
  • CVE-2026-106069 (High; terdampak 26.x, 24.x, 22.x): pengecekan yang sama bisa dilewati bila nama host "secara longgar" diterjemahkan menjadi alamat IP.
  • CVE-2026-105482 (High; terdampak 26.x, 24.x, 22.x): dns.resolve memotong nama yang mengandung karakter NUL. Akibatnya nama yang dilihat aplikasi bisa berbeda dari yang sebenarnya diproses, celah klasik untuk mengecoh validasi.

Risikonya: aplikasi yang bergantung pada validasi sertifikat untuk terhubung ke server berbasis alamat IP bisa tertipu oleh server palsu (serangan man-in-the-middle).

Celah tingkat Medium dan Low

CVELevelTerdampakPenjelasan singkat
CVE-2026-105481Medium26.x, 24.x, 22.xKoneksi keep-alive memproses respons yang ditulis sebelum request dikirim.
CVE-2026-106072Medium26.x, 24.x, 22.xNama host IPv4 yang tidak baku divalidasi keliru, sehingga SAN berupa nama DNS bisa dipakai untuk mengautentikasi alamat IP.
CVE-2026-106074Medium26.x, 24.x, 22.xCache entropi crypto.randomUUID() dan randomInt() ikut tersimpan di startup snapshot dan SEA, sehingga setiap proses menghasilkan nilai acak yang berulang.
CVE-2026-106070Low26.xZipFile mengembalikan byte awal yang dikendalikan penyerang setelah validasi header ZIP gagal.
CVE-2026-106071Low26.xPermission Model memberi akses filesystem berlebih lewat pencarian wildcard.
CVE-2026-106073Low26.x, 24.x, 22.xPermission Model bisa dilewati lewat fs.realpathSync.

Catatan: celah Permission Model hanya relevan bila Anda memakai opsi --permission. Celah randomUUID() penting bila Anda memakai snapshot/SEA dan mengandalkan nilai acak untuk keamanan (token, ID unik).

Bukan hanya celah: dependensi ikut diperbarui

Rilis ini juga memperbarui komponen bawaan: c-ares dan Undici (26.x, 24.x, 22.x), OpenSSL (24.x, 22.x), SQLite (22.x), serta daftar sertifikat CA (terkait kompromi intermediate CA eMudhra) di semua lini.

Apakah aplikasi saya terdampak? Cara mengeceknya

  1. Cek versi: jalankan node --version di server, laptop, dan di CI/CD. Aman jika sudah 26.12.1, 24.22.1, atau 22.23.4 (atau lebih baru).
  2. Cek versi di Docker: lihat tag image di Dockerfile (FROM node:...). Tag seperti node:24 baru membawa perbaikan setelah image-nya ditarik ulang (docker pull) dan aplikasi di-build ulang.
  3. Cek lini versi: bila Anda masih di 18, 20, 23, atau 25, versi tersebut tidak mendapat patch. Rencanakan pindah ke 22, 24, atau 26.
  4. Cek hosting: pada platform terkelola (PaaS/serverless), periksa pengaturan versi runtime Node.js dan naikkan ke yang sudah ditambal.

Cara update

# Dengan nvm (pilih sesuai lini Anda)
nvm install 24.22.1
nvm alias default 24.22.1

# Alternatif untuk lini lain
nvm install 22.23.4
nvm install 26.12.1

# Cek hasilnya
node --version

Tidak memakai nvm? Unduh dari nodejs.org atau perbarui lewat paket manajer/image Docker Anda. Setelah update, restart seluruh proses Node.js (PM2, systemd, container) agar versi baru benar-benar dipakai, lalu jalankan tes aplikasi.

Daftar tindakan hari ini

  1. Update Node.js ke versi aman di semua lingkungan: produksi, staging, laptop, dan CI/CD.
  2. Restart proses dan build ulang image Docker.
  3. Prioritaskan server yang menerima data dari luar (API publik, upload file, proxy).
  4. Jika masih di versi EOL, jadwalkan migrasi ke lini yang didukung.
  5. Pantau pengumuman resmi (daftar sumber di bawah) bila ada penjelasan teknis tambahan.

Tanya jawab singkat

Apakah sudah ada serangan nyata? Menurut ringkasan media yang kami rujuk, belum ada eksploitasi yang dilaporkan dan belum ada peringatan CISA saat artikel ini disusun. Namun setelah rincian celah dipublikasikan, penyerang biasanya cepat mempelajarinya, jadi jangan menunda.

Apakah update ini berisiko merusak aplikasi? Ini rilis keamanan pada lini yang sama (versi patch), jadi risikonya kecil. Tetap uji di staging bila memungkinkan.

Saya pakai Next.js/Express/NestJS, apakah terdampak? Framework tersebut berjalan di atas Node.js, jadi yang perlu diperbarui adalah runtime Node.js-nya.

Sumber

Fakta utama dalam artikel ini (versi perbaikan, nomor CVE, tingkat keparahan, versi terdampak) diambil dari pengumuman resmi Node.js. Sumber lain dipakai hanya sebagai pembanding:

Catatan: artikel ini disusun pada 22 Oktober 2026. Halaman resmi hanya memuat judul tiap celah tanpa detail teknis, sehingga penjelasan "siapa yang berisiko" memakai penalaran dari judul tersebut. Pengumuman bisa diperbarui, jadi cek ulang sumber primernya sebelum dijadikan acuan atau dikutip.

H
Hifzon

Menulis tentang pemrograman, database, AI, dan karier di dunia IT supaya belajar terasa lebih mudah dan menyenangkan.

Komentar (1)

Komentar hanya untuk member. Masuk atau daftar gratis untuk ikut berdiskusi.
  • H
    Hermawan Neisila 🌱 Newbie 2 hari yang lalu

    nice

Mau belajar lebih dalam?

Course online dengan latihan coding interaktif dan sertifikat.

Lihat Course →

Gabung komunitas

Tanya jawab, info event, dan teman belajar di grup WhatsApp.

Gabung Grup