Gawat, NextJS terancam... 13 kerentanan BARU

원제 · Yeah it’s over for NextJS... 13 NEW vulnerabilities

16:033분 읽기Better Stack2026. 05. 11.컴퓨터/소프트웨어 · 경제 뉴스 · AI/미래기술

핵심 요약

Pembaruan versi Next.js sangat mendesak untuk mengatasi 13 kerentanan keamanan baru yang mencakup risiko kebocoran data internal melalui SSRF dan kelumpuhan server akibat eksploitasi protokol serialisasi React Flight.

하이라이트

  • Next.js dan React menghadapi 13 kerentanan CVE baru dengan 6 di antaranya memiliki tingkat keparahan tinggi seperti Denial of Service dan Bypass Middleware.

  • Bypass Proxy Middleware pada Page Router terjadi saat fitur i18n aktif karena sistem gagal melindungi rute dasar (base case) dari akses data JSON melalui URL _next/data.

  • Kerentanan Denial of Service (DoS) pada React Server DOM memungkinkan penyerang memblokir thread utama selama beberapa detik hanya dengan satu permintaan muatan (payload) yang dimanipulasi.

  • Serangan Server-Side Request Forgery (SSRF) dengan skor keparahan 8,6 memungkinkan akses ke layanan internal yang terproteksi firewall melalui header upgrade websocket.

  • Cache Poisoning pada Server Component dapat terjadi ketika permintaan dengan query string diidentifikasi secara keliru sebagai HTML sehingga menyimpan data komponen mentah ke dalam cache publik.

  • Celah Cross-Site Scripting (XSS) ditemukan pada strategi before-interactive di tag script Next.js akibat kegagalan JSON.stringify dalam meng-escape karakter penutup script.

타임라인

  1. Ringkasan 13 Kerentanan Keamanan Baru

    Daftar kerentanan mencakup masalah kritis seperti Denial of Service (DoS), bypass middleware, dan Cross-Site Scripting (XSS). TanStack Start tidak terdampak oleh masalah ini karena perbedaan arsitektur komponen. Pengguna yang menggunakan hosting mandiri perlu memberikan perhatian lebih pada konfigurasi keamanan mereka.

    • Terdapat 13 CVE baru yang ditemukan pada ekosistem React dan Next.js tahun ini.
    • Enam dari kerentanan tersebut dikategorikan memiliki tingkat keparahan tinggi.
    • Solusi utama untuk seluruh masalah ini adalah melakukan pembaruan ke versi Next.js terbaru segera.
  2. Bypass Middleware pada Page Router dan i18n

    Penyerang dapat mengambil ID build dari skrip halaman dan menyusun URL khusus menggunakan pola _next/data/[build-id]/[page].json untuk melewati pemeriksaan login. Masalah ini berakar pada kode internal Next.js yang tidak memasukkan rute dasar ke dalam matcher saat i18n aktif. Otentikasi tingkat server tetap diperlukan di luar lapisan middleware untuk keamanan yang lebih kuat.

    • Penggunaan i18n pada Page Router memungkinkan bypass middleware melalui URL data build.
    • Middleware gagal melindungi rute dasar (base case) sementara varian locale tetap terlindungi.
    • Data sensitif dalam server-side props dapat terekspos dalam format JSON kepada pengguna yang tidak terautentikasi.
  3. Denial of Service (DoS) pada React Flight Protocol

    Eksploitasi ini bekerja dengan mengirimkan ribuan kunci acak dan referensi pointer dalam satu payload. Sebelum diperbaiki, server melakukan pencarian linear berulang untuk setiap pointer di seluruh daftar kunci, yang secara efektif memblokir thread utama. Implementasi sistem kursor satu arah memastikan kursor tidak perlu mundur, sehingga kompleksitas operasi turun drastis menjadi linear.

    • Manipulasi muatan pada Server Action dapat memicu lonjakan waktu proses dari 0,02 detik menjadi 6 detik.
    • Protokol React Flight melakukan perbandingan string berulang yang tidak efisien pada muatan besar.
    • Perbaikan sistem berbasis kursor mengurangi jumlah operasi dari ratusan juta menjadi ratusan ribu.
  4. Eksploitasi SSRF Melalui Header Websocket

    Dengan mengirimkan permintaan curl yang menyertakan header upgrade websocket dan target URL internal, fungsi resolve routes pada Next.js secara keliru memproses target tersebut sebagai permintaan proksi yang sah. Hal ini memungkinkan penyerang melewati proteksi jaringan luar karena permintaan terlihat datang dari server tepercaya. Perbaikan melibatkan penambahan validasi boolean 'finished' dan pengecekan kode status HTTP untuk memastikan permintaan proksi hanya berjalan pada kondisi yang tepat.

    • Header upgrade websocket dapat dimanipulasi untuk memaksa server Next.js mengirim permintaan ke layanan internal.
    • Celah ini memiliki skor keparahan tertinggi sebesar 8,6 dari 10.
    • Layanan yang berada di balik firewall seperti Redis atau database internal dapat diakses oleh penyerang luar.
  5. Cache Poisoning dan Cross-Site Scripting (XSS)

    Pada serangan cache poisoning, server menyimpan data komponen mentah ke dalam cache HTML publik karena gagal mengenali ekstensi .rsc yang diikuti query string. Sementara itu, celah XSS terjadi ketika input tidak tepercaya dari parameter query dimasukkan ke dalam atribut skrip. Penyerang dapat menutup tag skrip asli dan menyisipkan skrip baru untuk mencuri cookie sesi pengguna atau menampilkan formulir login palsu.

    • Header react-server-component yang dikombinasikan dengan query string dapat meracuni cache CDN.
    • Kegagalan escaping pada tag script before-interactive memungkinkan eksekusi JavaScript berbahaya.
    • JSON.stringify tidak secara otomatis mengamankan karakter kurung tutup yang digunakan untuk mengakhiri tag script.

설명

Next.js baru saja merilis pembaruan keamanan untuk memperbaiki 13 CVE — 6 di antaranya berstatus tingkat keparahan tinggi. Di video ini, kami mengupas tuntas celah pembobolan middleware, denial of service (DoS) melalui protokol React Flight, server-side request forgery (SSRF), dan cross-site scripting (XSS). Apakah server components adalah sebuah kesalahan? 🔗 Link Terkait Blog Keamanan: [https://vercel.com/changelog/next-js-may-2026-security-release](https://vercel.com/changelog/next-js-may-2026-security-release) ❤️ Lebih lanjut tentang kami Stack observabilitas yang jauh lebih baik: [https://betterstack.com/](https://betterstack.com/) Tutorial tertulis: [https://betterstack.com/community/](https://betterstack.com/community/) Contoh proyek: [https://github.com/BetterStackHQ](https://github.com/BetterStackHQ) 📱 Media Sosial Twitter: [https://twitter.com/betterstackhq](https://twitter.com/betterstackhq) Instagram: [https://www.instagram.com/betterstackhq/](https://www.instagram.com/betterstackhq/) TikTok: [https://www.tiktok.com/@betterstack](https://www.tiktok.com/@betterstack) LinkedIn: [https://www.linkedin.com/company/betterstack](https://www.linkedin.com/company/betterstack) 📌 Bab: 00:00 Intro 00:41 Middleware Bypass 03:50 Denial of Service 07:50 Request Forgery (Tingkat Keparahan Tertinggi) 10:57 Cache Poisoning 12:45 Cross-Site Scripting (XSS) 15:09 Kesalahan

커뮤니티 글

모든 글 보기
이 영상에 대해 글쓰기