Scroll untuk baca artikel
Networking

React Kritis, Cacat Next.js memungkinkan peretas mengeksekusi kode di server

56
×

React Kritis, Cacat Next.js memungkinkan peretas mengeksekusi kode di server

Share this article
react-kritis,-cacat-next.js-memungkinkan-peretas-mengeksekusi-kode-di-server
React Kritis, Cacat Next.js memungkinkan peretas mengeksekusi kode di server

React Kritis, Cacat Next.js memungkinkan peretas mengeksekusi kode di server

Kerentanan dengan tingkat keparahan maksimum, dijuluki ‘React2Shell’, dalam protokol ‘Flight’ React Server Components (RSC) memungkinkan eksekusi kode jarak jauh tanpa otentikasi dalam aplikasi React dan Next.js.

Example 300x600

Masalah keamanan berasal dari deserialisasi yang tidak aman. Ia menerima skor tingkat keparahan 10/10 dan telah diberi pengidentifikasi CVE-2025-55182 untuk React dan CVE-2025-66478 (CVE ditolak di Database Kerentanan Nasional) untuk Next.js.

Peneliti keamanan Lachlan Davidson menemukan kelemahannya dan melaporkannya ke React pada tanggal 29 November. Dia menemukan bahwa penyerang dapat mencapai eksekusi kode jarak jauh (RCE) dengan mengirimkan permintaan HTTP yang dibuat khusus ke titik akhir React Server Function.

“Bahkan jika aplikasi Anda tidak mengimplementasikan titik akhir React Server Function apa pun, aplikasi Anda mungkin masih rentan jika aplikasi Anda mendukung React Server Components [RCS]”memperingatkan penasehat keamanan dari Bereaksi.

Paket-paket berikut dalam konfigurasi defaultnya terpengaruh:

  • reaksi-server-dom-parcel
  • reaksi-server-dom-turbopack
  • dan reaksi-server-dom-webpack

React adalah pustaka JavaScript sumber terbuka untuk membangun antarmuka pengguna. Ini dikelola oleh Meta dan diadopsi secara luas oleh organisasi dari semua ukuran untuk pengembangan web front-end.

Next.js, dikelola oleh Verceladalah kerangka kerja yang dibangun di atas React yang menambahkan rendering sisi server, perutean, dan titik akhir API.

Kedua solusi tersebut hadir secara luas di lingkungan cloud melalui aplikasi front-end yang membantu menskalakan dan menerapkan arsitektur dengan lebih cepat dan mudah.

Peneliti di platform keamanan cloud Wiz memperingatkan bahwa kerentanannya mudah untuk dieksploitasi dan ada dalam konfigurasi default paket yang terpengaruh.

Dampak dan perbaikan

Menurut React, kerentanan ada di versi 19.0, 19.1.0, 19.1.1, dan 19.2.0. Next.js terpengaruh pada rilis canary eksperimental yang dimulai dengan 14.3.0-canary.77, dan semua rilis cabang 15.x dan 16.x di bawah versi yang dipatch.

Cacatnya ada pada paket ‘react-server’ yang digunakan oleh React Server Components (RSC), tetapi Next.js mewarisinya melalui implementasi protokol “Flight” RSC.

Peneliti Wiz mengatakan bahwa 39% dari semua lingkungan cloud yang memiliki visibilitas berisi versi Next.js atau React yang menjalankan versi yang rentan terhadap CVE-2025-55182, CVE-2025-66478, atau keduanya.

Kerentanan yang sama mungkin terjadi di perpustakaan lain yang mengimplementasikan React Server, termasuk plugin Vite RSC, plugin Parcel RSC, pratinjau React Router RSC, RedwoodSDK, dan Waku.

Perusahaan keamanan rantai pasokan perangkat lunak Endor Labs menjelaskan bahwa React2Shell “adalah kerentanan deserialisasi yang secara logis tidak aman ketika server gagal memvalidasi dengan benar struktur muatan RSC yang masuk.”

Ada kegagalan validasi saat menerima data yang salah formatnya dari penyerang, yang mengakibatkan eksekusi kode JavaScript dengan hak istimewa dalam konteks server.

Davidson menciptakan situs web React2Shelldi mana dia akan mempublikasikan rincian teknisnya. Peneliti juga memperingatkan bahwa ada eksploitasi bukti konsep (PoC) yang tidak asli.

PoC ini menjalankan fungsi seperti vm#runInThisContext, proses_anak#execDan fs#tulisFile, tapi eksploitasi asli tidak memerlukan ini, kata peneliti.

“Hal ini hanya dapat dieksploitasi jika Anda secara sadar memilih untuk membiarkan klien melakukan hal ini, dan hal ini akan berbahaya, apa pun yang terjadi,” kata Davidson.

Dia lebih lanjut menjelaskan bahwa PoC palsu ini tidak akan berfungsi dengan Next.js karena fungsi-fungsi ini tidak ada karena daftar fungsi server dikelola secara otomatis.

Pengembang sangat disarankan untuk menerapkan perbaikan yang tersedia di React versi 19.0.1, 19.1.2, dan 19.2.1, serta Next.js versi 15.0.5, 15.1.9, 15.2.6, 15.3.6, 15.4.8, 15.5.7, dan 16.0.7.

Organisasi harus mengaudit lingkungannya untuk menentukan apakah mereka menggunakan versi yang rentan dan mengambil tindakan yang tepat untuk memitigasi risiko.

Popularitas kedua solusi ini tercermin dalam jumlah unduhan mingguan, seiring dengan jumlah React 55,8 juta pada Node Package Manager (NPM), dan Next.js memilikinya 16,7 juta pada platform yang sama.

gigi

Hancurkan silo IAM seperti Bitpanda, KnowBe4, dan PathAI

IAM yang rusak bukan hanya masalah TI – dampaknya akan berdampak pada seluruh bisnis Anda.

Panduan praktis ini membahas mengapa praktik IAM tradisional gagal memenuhi tuntutan modern, contoh seperti apa IAM yang “baik”, dan daftar periksa sederhana untuk membangun strategi yang terukur.