Nah sebelumnya kita sudah membahas mengenai Dua Celah Kritis PHP Bisa Bikin Server Diretas Tanpa Login, dan belum lama setelah dua kerentanan kritis PHP menjadi perhatian pengelola website, kini giliran Node.js yang mendapat pembaruan keamanan penting.
Jadi pada pada 21 Oktober 2026 kemarin, tim developer Node.js merilis update untuk menutup sepuluh kerentanan, termasuk sebuah celah pada decoder Brotli yang berpotensi memungkinkan penyerang menjalankan kode dari jarak jauh atau remote code execution (RCE).
Celah tersebut tercatat sebagai CVE-2026-111497 dan mulai ramai dibahas dengan nama Node2Shell, namun masalah berada pada komponen Brotli yang disertakan dalam runtime Node.js, bukan sekadar pada satu package npm yang bisa diperbarui secara terpisah.
Jadi jika sebelumnya kita membahas PHP2Shell yang mengancam server berbasis PHP, kali ini pengelola aplikasi berbasis Node.js juga perlu memeriksa sistem mereka, karena jelas kedua kasus ini sama-sama menunjukkan bahwa kerentanan pada komponen inti yang digunakan banyak aplikasi bisa berdampak luas.
Node2Shell Bisa Memicu Remote Code Execution
Nah berdasarkan advisory resmi Node.js, CVE-2026-111497 merupakan kerentanan out-of-bounds write pada decoder Brotli, yang simpelnya gini guys, kondisi ini memungkinkan proses penulisan data melewati batas memori yang seharusnya digunakan.

Brotli sendiri merupakan algoritma kompresi yang banyak digunakan untuk mengurangi ukuran data, termasuk dalam lalu lintas web, dan Node.js menyertakan implementasi decoder Brotli yang dapat digunakan aplikasi untuk memproses data terkompresi.
Namun masalah muncul ketika decoder memproses data Brotli yang dibuat secara khusus untuk memicu kondisi tersebut, Akibatnya, proses Node.js dapat mengalami kerusakan memori yang berpotensi berujung pada aplikasi crash, kebocoran sebagian memori, atau eksekusi kode berbahaya.

Nah resikonya bergantung pada kondisi aplikasi dan bagaimana data dari sumber yang tidak tepercaya mencapai decoder, yang berarti, bukan berarti semua website yang menggunakan Node.js otomatis bisa diretas begitu saja, melainkan aplikasi yang memproses data Brotli dari pihak luar perlu mendapat perhatian khusus.
Kenapa Kasus Ini Mengingatkan pada PHP2Shell?
Nah jika kamu mengikuti artikel sebelumnya mengenai PHP2Shell, ada kesamaan penting antara kedua insiden ini.
PHP2Shell melibatkan dua kerentanan pada inti PHP yang berpotensi memungkinkan RCE, sementara itu, Node2Shell menyerang decoder Brotli yang dibundel bersama runtime Node.js.
Perbedaannya terletak pada komponen yang bermasalah, karena pada kasus PHP2Shell, administrator perlu memperbarui runtime PHP, sementara pada Node2Shell, administrator harus memperbarui runtime Node.js ke versi yang sudah mendapatkan patch.
Keduanya juga tidak bisa diselesaikan hanya dengan memperbarui kode aplikasi atau package yang terlihat di package.json, karena kerentanan Node2Shell berada pada komponen runtime, sehingga menjalankan npm update saja belum tentu menyelesaikan masalah.
Nah inilah bagian yang perlu diperhatikan oleh developer maupun administrator server, karena aplikasi mungkin tidak memiliki kerentanan pada kode yang ditulis sendiri, tetapi tetap berisiko karena komponen inti yang digunakannya bermasalah.
Node.js Merilis Patch untuk Tiga Versi Utama
Dalam update keamanan pada 21 Oktober 2026, Node.js merilis versi baru untuk tiga release line yang masih didukung. Berikut versi yang telah diperbaiki untuk Node2Shell:
| Versi Node.js | Versi perbaikan |
|---|---|
| Node.js 22.x | 22.23.4 |
| Node.js 24.x | 24.22.1 |
| Node.js 26.x | 26.12.1 |
Selain Node2Shell, pembaruan tersebut juga mencakup kerentanan lain yang berkaitan dengan validasi hostname sertifikat TLS, pemrosesan DNS, dan sejumlah komponen lainnya, yang secara keseluruhan, ada sepuluh masalah keamanan yang diperbaiki, dengan empat di antaranya dikategorikan berkeparahan tinggi oleh tim Node.js.
Developer yang Menggunakan Docker Juga Perlu Memeriksa Container
Nah selain itu guys, satu hal yang sering terlewat adalah versi Node.js yang berjalan di dalam container Docker, karena memperbarui Node.js pada host tidak otomatis memperbarui runtime yang sudah dibundel dalam image aplikasi.
Jika aplikasi menggunakan image lama, container tersebut tetap dapat menjalankan runtime yang rentan sampai image diperbarui dan container dibuat ulang menggunakan versi yang sudah mendapatkan patch.
Untuk memeriksa versi Node.js pada lingkungan yang sedang digunakan, jalankan:
node --version
Jika aplikasi berjalan di Docker, periksa juga versi dari dalam container:
docker exec -it NAMA_CONTAINER node --version
Ganti NAMA_CONTAINER dengan nama container aplikasi yang sebenarnya.

Setelah itu, perbarui Node.js pada Dockerfile ke versi yang sudah diperbaiki, rebuild ulang image, lalu deploy kembali aplikasi. Nah pastikan versi runtime di lingkungan produksi benar-benar sudah berubah, bukan hanya versi yang terpasang di mesin pengembangan.
Selain itu, administrator perlu memeriksa aplikasi yang menerima request terkompresi, memproses data dari URL eksternal, atau menggunakan API Brotli dari modul node:zlib. Karena jalur tersebut dapat membantu menentukan aplikasi mana yang perlu diprioritaskan, tetapi bukan pengganti pembaruan keamanan.
Belum Ada Alasan untuk Panik, tetapi Jangan Menunda Patch
Nah peneliti keamanan telah memublikasikan demonstrasi teknis terkait Node2Shell, dan dalam pengujian lab yang dilaporkan, peneliti berhasil menunjukkan eksekusi kode pada lingkungan Node.js yang belum diperbarui. Namun, hasil eksploitasi dapat berbeda menurut versi, arsitektur, dan kondisi aplikasi.

Pada saat laporan awal diterbitkan, belum ada laporan eksploitasi yang terkonfirmasi di dunia nyata. Meskipun begitu keberadaan demonstrasi teknis membuat administrator sebaiknya tidak menunggu sampai muncul laporan serangan sebelum melakukan pembaruan.
Jadi untuk kamu pengelola website yang menggunakan Node.js, langkah paling penting adalah menginventarisasi semua runtime Node.js yang digunakan, memperbarui versi yang terdampak, membangun ulang container jika diperlukan, dan memastikan proses aplikasi benar-benar menjalankan runtime yang telah diperbaiki.
Yang jelas sih kasus Node2Shell juga memperpanjang daftar peringatan keamanan yang muncul pada Oktober ini, setelah PHP2Shell lebih dulu menjadi perhatian. Dua kasus tersebut bukan berarti seluruh internet sedang di hack, tetapi mengingatkan bahwa komponen inti seperti runtime dan library dapat menjadi titik risiko bagi banyak aplikasi sekaligus.
Nah bagaimana menurutmu? komen dibawah guys.
Via : The Hacker News
Catatan Penulis : WinPoin sepenuhnya bergantung pada iklan untuk tetap hidup dan menyajikan konten teknologi berkualitas secara gratis — jadi jika kamu menikmati artikel dan panduan di situs ini, mohon whitelist halaman ini di AdBlock kamu sebagai bentuk dukungan agar kami bisa terus berkembang dan berbagi insight untuk pengguna Indonesia. Kamu juga bisa mendukung kami secara langsung melalui dukungan di Saweria. Terima kasih.

Komentar