Software
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:
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 nodedi Windows atauwhich nodedi Ubuntu dan Mac. - Aplikasi berjalan di Docker. Versi di laptop tidak menentukan apa pun. Lihat baris
FROM node:...di Dockerfile, atau jalankandocker 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:
- Buka nodejs.org lalu masuk ke halaman unduhan.
- Pilih versi LTS atau jalur yang sama dengan yang sedang dipakai.
- Unduh file
.msi, jalankan, lalu ikuti langkahnya. Installer akan menimpa versi lama. - Tutup semua jendela CMD atau PowerShell, buka lagi, lalu cek dengan
node -v.
Kalau pakai nvm-windows:
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.
Baca juga Efek AI Instagram Bisa Dibuat Sendiri, tapi Belum untuk Indonesia
Pakai nvm (paling umum untuk pengembang):
nvm install 24.22.3
nvm alias default 24.22.3
node -v
Pakai repositori NodeSource lewat apt:
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:
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:
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:
- Catat versi lama dengan
node -v, supaya mudah kembali kalau ada masalah. - Update dulu di laptop atau server staging.
- Hapus folder
node_modules, lalu jalankannpm ciataunpm installulang. Paket dengan modul native sepertibcryptatausharpperlu dikompilasi ulang setelah pindah jalur. - Jalankan tes, atau minimal coba fitur utama: login, upload file, dan pembayaran.
- Baru update server produksi, lalu mulai ulang proses.
- 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.
Baca juga Bug Telegram Widget: Bantahan Durov dan Cara Amankan Akun
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