Software

Update Node.js November 2026, 16 Celah Keamanan Sudah Ditambal

M
Mughu
11 menit baca
Update Node.js November 2026, 16 Celah Keamanan Sudah Ditambal

Node.js merilis versi 22.23.5, 24.22.3, dan 26.13.1 untuk menambal 16 celah keamanan, tujuh di antaranya berisiko tinggi. Cara cek versi Node.js, siapa yang pal

Ketik node -v di terminal. Kalau angkanya lebih kecil dari 22.23.5, 24.22.3, atau 26.13.1 (sesuai jalur versi yang dipakai), server Node.js tersebut masih membawa celah yang baru saja diumumkan.

Pada Rabu, 11 November 2026, tim Node.js merilis pembaruan keamanan untuk ketiga jalur versi yang masih didukung. Isinya 16 perbaikan celah: tujuh berisiko tinggi, enam sedang, dan tiga rendah. Beberapa celah bisa dipicu dari luar tanpa login, mulai dari membuat server mati mendadak sampai membocorkan isi memori, termasuk kunci privat TLS.

Kabar baiknya, perbaikannya sudah tersedia dan proses update biasanya tidak sampai lima menit. Di bawah ini ada cara mengecek apakah aplikasi teman-teman benar-benar terdampak, versi mana yang harus dipasang, dan perintah update untuk Windows, Ubuntu, serta Mac.

Versi Node.js berapa yang sudah aman?

Patokannya sederhana. Cocokkan dua angka pertama versi yang terpasang, lalu pastikan angkanya minimal sama dengan kolom kanan.

Jalur versi Status dukungan Versi aman minimal
Node.js 26.x Versi terbaru 26.13.1
Node.js 24.x LTS 24.22.3
Node.js 22.x LTS tahap pemeliharaan, berakhir April 2027 22.23.5
Node.js 20.x ke bawah Sudah tidak didukung Tidak ada tambalan, wajib pindah versi

Baris terakhir sering terlupakan. Node.js 20 resmi berhenti didukung pada April 2026, sedangkan Node.js 18 sudah lebih dulu pensiun pada April 2025. Pengumuman resmi Node.js menegaskan bahwa versi yang sudah habis masa dukungannya selalu ikut terdampak setiap kali ada rilis keamanan, tetapi tidak akan pernah mendapat perbaikan.

Banyak server lama di Indonesia, misalnya VPS murah untuk bot WhatsApp atau panel admin toko daring, masih memakai Node.js 16 atau 18 karena "masih jalan". Pembaruan kali ini momen yang tepat untuk naik ke 22 atau 24.

Cara cek versi Node.js di Windows, Ubuntu, dan Mac

Perintahnya sama di semua sistem operasi:

BASH
node -v

Hasilnya berupa teks seperti v24.21.0. Di Windows, jalankan lewat Command Prompt (CMD) atau PowerShell. Di Ubuntu dan Mac, buka Terminal.

Beberapa situasi yang sering bikin bingung:

  • Hasilnya "node is not recognized" atau "command not found". Node.js belum terpasang, atau folder instalasinya belum masuk PATH. Tutup lalu buka lagi terminal setelah instalasi.
  • Angkanya berbeda antara terminal dan aplikasi. Biasanya karena ada lebih dari satu Node.js terpasang, misalnya lewat installer resmi dan lewat nvm. Cek lokasinya dengan where node di Windows atau which node di Ubuntu dan Mac.
  • Aplikasi berjalan di Docker. Versi di laptop tidak menentukan apa pun. Lihat baris FROM node:... di Dockerfile, atau jalankan docker exec <nama-container> node -v.
  • Aplikasi dijalankan PM2 di VPS. PM2 memakai Node.js yang aktif saat proses dijalankan. Setelah update, proses harus dimulai ulang supaya versi baru dipakai.

Celah apa saja yang ditambal, dan seberapa berbahaya?

Dari 16 celah, mayoritas ada di HTTP/2 dan TLS/HTTPS, yaitu bagian Node.js yang mengurus koneksi dari pengunjung. Berikut ringkasan celah berisiko tinggi dalam bahasa sehari-hari:

Kode CVE Masalahnya Akibat terburuk Jalur terdampak
CVE-2026-123863 Penutupan sesi HTTP/2 tidak rapi Server langsung mati (crash) 24.x, 26.x
CVE-2026-123864 Penulisan TLS nol byte di tengah pembacaan request Isi memori bocor, termasuk kunci privat TLS dan request orang lain 22.x, 24.x, 26.x
CVE-2026-123865 Sesi HTTP/2 tidak pernah dibersihkan Memori dan koneksi menumpuk sampai server kehabisan sumber daya 22.x, 24.x, 26.x
CVE-2026-123866 Memori respons yang sudah dibebaskan tetap dikirim Isi respons milik koneksi lain bisa terkirim ke penyerang 22.x, 24.x, 26.x
CVE-2026-126051 Callback handshake TLS terlambat Server mati karena error yang tidak tertangkap 24.x, 26.x
CVE-2026-123872 Renegosiasi TLS 1.2 bisa mengganti nama host Lolos dari pengecekan sertifikat klien di host yang lebih ketat 22.x, 24.x, 26.x
CVE-2026-123874 Stream HTTP/2 dibebaskan saat file masih dikirim Memori server rusak 24.x, 26.x

Celah tingkat sedang juga patut diperhatikan. Salah satunya membuat kata sandi proxy tercetak di pesan error (CVE-2026-123871), sehingga bisa terbawa ke log container atau layanan pelaporan error. Ada pula celah yang membuat server bisa mati hanya karena pengunjung membatalkan unduhan file lewat HTTP/2 (CVE-2026-123875). Satu lagi memungkinkan penyerang menghabiskan memori server dengan potongan data berukuran satu byte (CVE-2026-123868).

Tiga celah tingkat rendah menyangkut Permission Model (fitur pembatas akses file yang masih jarang dipakai) dan modul zlib. Selain itu, pembaruan ini juga memperbarui tiga komponen bawaan, yaitu llhttp, undici, dan sqlite.

Apakah aplikasi saya ikut terdampak?

Tidak semua aplikasi Node.js punya risiko yang sama. Kebanyakan celah berbahaya hanya bisa dijangkau kalau Node.js langsung menerima koneksi HTTPS atau HTTP/2 dari internet. Tabel ini membantu menentukan seberapa mendesak update-nya:

Kondisi aplikasi Tingkat urgensi Alasannya
Server Node.js memakai modul http2 atau https dan langsung terbuka ke internet Sangat mendesak, update hari ini Hampir semua celah tinggi bisa dipicu dari luar tanpa login
Server pakai sertifikat klien (mTLS) atau aturan berbeda per domain Sangat mendesak Ada dua celah yang membuat pengecekan sertifikat bisa dilewati
Node.js berada di belakang Nginx, Caddy, atau Cloudflare yang menangani HTTPS Tetap update, tapi tidak sepanik di atas Koneksi dari pengunjung diterima proxy, umumnya bukan Node.js langsung
Aplikasi memakai proxy keluar dengan username dan kata sandi Update, lalu periksa log lama Kata sandi proxy mungkin sudah tercatat di log
Hanya dipakai untuk build frontend (Vite, Next.js build, React) di laptop Rendah Tidak ada server yang menerima koneksi dari luar
Bot atau skrip yang hanya mengirim request keluar Rendah sampai sedang Celah utama ada di sisi server, tetapi tetap ada perbaikan di https.Agent

Catatan untuk pengguna Next.js, Express, NestJS, atau Fastify: framework ini berjalan di atas Node.js, jadi tambalannya datang dari update Node.js itu sendiri, bukan dari update framework.

Cara update Node.js di Windows

Ada dua cara, tergantung bagaimana Node.js dulu dipasang.

Kalau dulu pakai installer resmi:

  1. Buka nodejs.org lalu masuk ke halaman unduhan.
  2. Pilih versi LTS atau jalur yang sama dengan yang sedang dipakai.
  3. Unduh file .msi, jalankan, lalu ikuti langkahnya. Installer akan menimpa versi lama.
  4. Tutup semua jendela CMD atau PowerShell, buka lagi, lalu cek dengan node -v.

Kalau pakai nvm-windows:

BASH
nvm install 24.22.3
nvm use 24.22.3
node -v

Untuk jalur 22, ganti angkanya menjadi 22.23.5. Untuk jalur 26, pakai 26.13.1.

Cara update Node.js di Ubuntu atau VPS

Mayoritas VPS di Indonesia memakai Ubuntu. Cara paling aman bergantung pada sumber instalasi awal.

Pakai nvm (paling umum untuk pengembang):

BASH
nvm install 24.22.3
nvm alias default 24.22.3
node -v

Pakai repositori NodeSource lewat apt:

BASH
sudo apt update
sudo apt install --only-upgrade nodejs
node -v

Kalau hasil node -v belum berubah, berarti repositori NodeSource yang terpasang masih jalur lama atau belum menerima rilis terbaru. Tunggu beberapa jam, lalu ulangi.

Hindari sudo apt install nodejs dari repositori bawaan Ubuntu tanpa NodeSource. Versi di sana biasanya jauh tertinggal dan belum tentu membawa tambalan November ini.

Setelah update, aplikasi yang sedang berjalan tidak otomatis memakai versi baru. Mulai ulang prosesnya:

BASH
pm2 restart all
pm2 save

Kalau memakai systemd, jalankan sudo systemctl restart <nama-layanan>. Untuk Docker, ubah tag image, misalnya node:24 atau node:24-alpine, lalu build ulang dan jalankan ulang container. Tag tanpa nomor patch akan mengambil rilis terbaru di jalur tersebut saat build dijalankan.

Cara update Node.js di Mac

Pengguna Homebrew cukup menjalankan:

BASH
brew update
brew upgrade node
node -v

Perhatikan bahwa formula node di Homebrew mengikuti versi terbaru, bukan LTS. Kalau proyek harus tetap di jalur tertentu, pasang formula berversi, misalnya brew install node@24, lalu perbarui dengan brew upgrade node@24. Formula berversi tidak otomatis masuk PATH, jadi ikuti petunjuk brew link atau baris export PATH yang muncul setelah instalasi.

Pengguna nvm di Mac bisa memakai perintah yang sama seperti di Ubuntu. Sementara itu, yang dulu memasang lewat file .pkg dari nodejs.org cukup mengunduh installer versi terbaru dan menjalankannya lagi. Setelah selesai, tutup Terminal, buka kembali, lalu cek dengan node -v.

Tanda server mungkin sudah diganggu

Update menutup celah ke depan, tetapi tidak menghapus jejak kejadian sebelumnya. Beberapa pemeriksaan cepat yang bisa dijalankan di VPS:

Yang dicek Perintah Tanda yang patut dicurigai
Jumlah restart aplikasi di PM2 pm2 ls (lihat kolom restart) Angka restart melonjak padahal tidak ada deploy
Koneksi menggantung ss -tan state close-wait | wc -l Ratusan sampai ribuan koneksi CLOSE_WAIT yang terus bertambah
Pemakaian memori proses pm2 monit atau top Memori naik terus tanpa kenaikan jumlah pengunjung
Log error pm2 logs --lines 200 Banyak pesan assertion, ERR_INTERNAL_ASSERTION, atau crash di modul http2

Koneksi CLOSE_WAIT yang menumpuk relevan dengan CVE-2026-123865, yang membuat sesi HTTP/2 tidak pernah dibersihkan. Kalau salah satu tanda di atas muncul, update dulu, mulai ulang proses, lalu pantau apakah angkanya kembali normal.

Dua langkah tambahan untuk kasus khusus:

  • Server melayani HTTPS langsung dari Node.js dan sempat crash berulang. Pertimbangkan mengganti sertifikat TLS, karena salah satu celah bisa membocorkan kunci privat dari memori.
  • Aplikasi memakai proxy dengan username dan kata sandi. Ganti kata sandi proxy, lalu bersihkan log lama yang mungkin sudah mencatatnya.

Urutan aman supaya aplikasi tidak rusak setelah update

Update di dalam jalur yang sama, misalnya dari 24.21 ke 24.22.3, hampir selalu aman karena isinya perbaikan, bukan fitur baru. Lain ceritanya kalau sekalian naik jalur, misalnya dari 18 ke 24. Urutan yang disarankan:

  1. Catat versi lama dengan node -v, supaya mudah kembali kalau ada masalah.
  2. Update dulu di laptop atau server staging.
  3. Hapus folder node_modules, lalu jalankan npm ci atau npm install ulang. Paket dengan modul native seperti bcrypt atau sharp perlu dikompilasi ulang setelah pindah jalur.
  4. Jalankan tes, atau minimal coba fitur utama: login, upload file, dan pembayaran.
  5. Baru update server produksi, lalu mulai ulang proses.
  6. Pantau log selama satu sampai dua jam pertama.

Contoh hitungan sederhana untuk tim kecil: update dalam jalur yang sama kira-kira butuh 5 menit per server ditambah restart beberapa detik. Untuk lima VPS, totalnya sekitar setengah jam. Bandingkan dengan risiko server mati berkali-kali atau kunci TLS bocor, yang ujungnya memaksa penggantian sertifikat dan pemeriksaan menyeluruh.

Siapa yang menemukan celah-celah ini?

Ada detail yang cukup unik di pengumuman kali ini. Lima dari 16 celah dilaporkan oleh peneliti keamanan Chris Rohlf yang bekerja sama dengan Claude dan Anthropic Research. Artinya, model AI ikut membantu menemukan bug di salah satu runtime JavaScript paling populer di dunia. Satu celah lain dilaporkan oleh Trail of Bits, yang dalam pengumuman resmi ditulis bersama OpenAI.

Beberapa celah juga berstatus "perbaikan belum tuntas" dari celah lama. Contohnya CVE-2026-123863, yang menurut tim Node.js adalah varian dari CVE-2024-27983 yang lolos dari perbaikan sebelumnya. Pola ini mengingatkan bahwa satu kali update tidak membuat server aman selamanya. Rutin cek rilis keamanan tetap penting.

Sebagian besar perbaikan dikerjakan oleh anggota inti Node.js, Matteo Collina, dengan bantuan kontributor lain seperti Tim Perry dan Rafael Gonzaga.

Apakah perlu update kalau Node.js hanya dipakai di laptop untuk belajar?

Tidak mendesak, karena kebanyakan celah menyerang server yang menerima koneksi dari luar. Meski begitu, update tetap baik dilakukan supaya proyek latihan berjalan di versi yang sama dengan server sungguhan nanti.

Apakah npm ikut diperbarui?

Installer resmi Node.js membawa npm versi yang sesuai. Cek dengan npm -v. Kalau ingin npm terbaru secara terpisah, jalankan npm install -g npm@latest.

Saya masih pakai Node.js 18, cukup update ke 18 terbaru?

Tidak bisa. Jalur 18 sudah tidak menerima tambalan apa pun sejak April 2025. Satu-satunya cara aman adalah pindah ke 22 atau 24, lalu uji ulang aplikasinya.

Bagaimana dengan Bun atau Deno?

Pengumuman ini khusus untuk Node.js. Bun dan Deno punya kode sendiri dan jadwal rilis keamanan masing-masing, jadi pantau kanal resmi keduanya.

Bagaimana tahu kalau ada rilis keamanan berikutnya?

Halaman blog Node.js punya kategori khusus "Vulnerability". Tim Node.js biasanya mengumumkan jadwal rilis keamanan beberapa hari sebelum tambalan keluar, jadi ada waktu untuk bersiap.

Referensi

  • Node.js, "Wednesday, November 11, 2026 Security Releases"
  • Node.js, jadwal rilis dan status dukungan (Previous Releases)
  • Bitdoze, "AI & Tech News Digest — November 12, 2026"
  • Dokumentasi nvm dan nvm-windows
  • Dokumentasi NodeSource untuk distribusi Ubuntu dan Debian

Pertanyaan Umum

Pertanyaan yang Sering Diajukan

Kesimpulan

Pembaruan Node.js 11 November 2026 menutup 16 celah keamanan, dan tujuh di antaranya bisa membuat server mati atau membocorkan data. Versi aman minimalnya adalah 22.23.5, 24.22.3, dan 26.13.1. Prioritaskan server yang langsung melayani HTTPS atau HTTP/2 dari internet, lalu jangan lupa memulai ulang proses setelah update. Yang masih bertahan di Node.js 18 atau 20 sebaiknya menjadikan momen ini alasan untuk pindah jalur.

Semoga bermanfaat. Kalau ada rekan satu tim atau teman yang mengurus server Node.js, bagikan artikel ini supaya mereka bisa cek versinya hari ini juga.

Komentar (0)

Belum ada komentar. Jadilah yang pertama berbagi pendapat!

Tinggalkan komentar