[React2Shell] Menguak Celah Keamanan Kritis di React & Next.js

Dari React ke shell server. React2Shell adalah celah kritis yang membuka jalan menuju RCE di aplikasi React dan Next.js. Apa penyebabnya dan seberapa besar dampaknya?

Framework React dan Next.js kini menjadi tulang punggung aplikasi web modern mulai dari startup hingga perusahaan besar. Namun pada Desember 2025, komunitas keamanan digemparkan oleh temuan celah yang sangat serius: React2Shell sebuah kerentanan RCE (Remote Code Execution) yang berdampak luas pada React Server Components (RSC) dan ekosistem Next.js.

Apa Itu React2Shell?

React2Shell adalah nama informal untuk kerentanan CVE-2025-55182, yang efeknya memungkinkan penyerang menjalankan kode arbitrer di server hanya dengan satu request HTTP yang terstruktur khusus.

Kerentanan ini ditemukan dalam logika deserialisasi RSC Flight, bagian dari mekanisme React Server Components. Flow data yang deserialized tanpa validasi memungkinkan payload berbahaya masuk ke server dan dieksekusi seolah-olah itu bagian normal dari aplikasi.

๐Ÿ”ฅKenapa Ini Sangat Tegas?

  • ๐Ÿ’ฅ CVSS 10.0 skor maksimum (kritikal).
  • ๐Ÿง‘โ€๐Ÿ’ป Tanpa autentikasi penyerang tidak perlu login atau priviledge khusus.
  • ๐Ÿ“ก Satu permintaan cukup untuk eskalasi sampai RCE penuh.
  • โ˜๏ธ Menyentuh banyak deployment laporan menunjukkan sekitar 39% cloud environments berpotensi rentan karena penggunaan default RSC/Next.js.

Siapa yang Terpengaruh?

Kerentanan ini memengaruhi:
โœ”๏ธ React Server Components pada versi 19.0.0 โ€“ 19.2.0
โœ”๏ธ Paket react-server-dom-webpack, react-server-dom-parcel, react-server-dom-turbopack
โœ”๏ธ Framework yang menggunakan RSC, termasuk Next.js (App Router defaults)
โœ”๏ธ Ekosistem alat build seperti Vite & Parcel apabila RSC diaktifkan secara standar

Dengan begitu banyak aplikasi yang ditulis dalam React/Next.js, potensi dampaknya sangat besar.

Bagaimana Cara Kerjanya

React2Shell berakar dari unsafe deserialization situasi di mana server membaca dan memproses data input yang tidak tervalidasi sebagai bagian dari objek yang dapat dieksekusi. Dalam konteks RSC:

  1. Klien mengirim payload RSC ke server.
  2. Server deserializes payload tersebut tanpa pemeriksaan struktural yang aman.
  3. Penyerang menyisipkan kode berbahaya yang kemudian dijalankan di Node.js.
  4. Akhirnya, penyerang bisa mendapatkan akses shell atau kontrol penuh server.

๐Ÿ”“ Ini bukan sekadar bug biasa ini celah arsitektural dalam cara RSC memproses instruction dari client.

Eksploitasi di Dunia Nyata

Beberapa laporan kini mengindikasikan bahwa penyerang sudah mencoba memanfaatkan React2Shell:

  • Cybercriminal China-linked threat groups melakukan scanning dan exploit aktif beberapa jam setelah pengumuman.
  • Ada indikasi eksploitasi berlanjut oleh aktor lain termasuk dari Korea Utara dengan teknik persistence lanjutan.

Ini menunjukkan bahwa celah ini bukan sekadar potensi itu sudah menjadi target aksi nyata di dunia maya.


Mitigasi Untuk mengurangi risiko dan mengamankan aplikasi Anda:

๐Ÿšจ Segera Patch & Update

  • Perbarui React ke versi 19.0.1 / 19.1.2 / 19.2.1 atau lebih tinggi.
  • Perbarui semua paket RSC terkait, termasuk Next.js.

๐Ÿ›ก๏ธ Input Validation Ekstra Ketat

Selalu sanitasi & validasi payload yang masuk terutama pada RSC endpoint.

๐Ÿ” Gunakan Secure Defaults

  • Hindari mengaktifkan RSC tanpa kebutuhan nyata.
  • Implementasikan kontrol tipe dan skema (Zod / Joi / Yup) di API.

๐Ÿ” Isolasi Eksekusi

Jalankan aplikasi dengan pengaturan sandbox/container, bukan sebagai root.

๐Ÿ“‰ Monitoring & WAF

Gunakan Web Application Firewall (mis. Cloudflare Managed Rules) untuk memblok traffic eksploitasi.

Tiga Referensi Terpercaya untuk Dipelajari

Berikut beberapa sumber utama yang bisa jadi bacaan lanjut:

  1. Cloudflare Threat Brief: Analisis mendalam React2Shell cara kerja exploit & mitigasi WAF. The Cloudflare Blog
  2. Wiz Research Report: Dampak terhadap cloud environments dan Next.js. CyberInsider
  3. SentinelOne Advisory: Penjelasan teknis dan rekomendasi patching lengkap. SentinelOne
Kesimpulan

React2Shell adalah salah satu kerentanan paling serius yang pernah ditemui di ekosistem JavaScript modern. Tidak hanya karena severity-nya yang maksimum, tetapi juga karena:

  • Sungguh luasnya penggunaan React & Next.js di seluruh web.
  • Eksploitasi aktif sudah teramati di dunia nyata.
  • Patch dan mitigasi harus dilakukan segera.

Avatar photo
devASPid Team

Tim software developer & IT enthusiast di balik devASPid, yang selalu belajar, berbagi, dan berinovasi dalam dunia teknologi.