Yazılar · 11.12.25 · 3 dk

React RSC: DoS ve kaynak kodu sızıntısı (CVE güncellemesi)

React sunucu bileşenlerinde kritik güvenlik açıkları: ne yapmalı, hangi sürüme geçmeli.

React RSC: DoS ve kaynak kodu sızıntısı (CVE güncellemesi)

Kaynak (İngilizce orijinal): Denial of Service and Source Code Exposure in React Server Components · React Team · 11 Aralık 2025 (26 Ocak 2026 güncelleme)

Bu yazıda ne var?

React RSC güvenlik React’in Server Components (RSC) özelliği, arayüz parçalarının sunucuda çalışıp tarayıcıya hazır sonuç gönderilmesini sağlar — SSR’den farklı olarak JavaScript paketi küçülür. Aralık 2025’te kritik bir uzaktan kod çalıştırma (RCE) açığı yamalandı; ardından araştırmacılar iki ek açık daha buldu. Bu yazıda DoS (hizmet engelleme) ve kaynak kodu sızıntısı risklerini, kimlerin etkilendiğini ve ne yapmanız gerektiğini sade Türkçe ile anlatıyoruz.

Kim etkileniyor?

Sorunlu paketler: react-server-dom-webpack, react-server-dom-parcel, react-server-dom-turbopack. React 19.0.0 ile 19.2.3 arası sürümler risk altında. Güvenli sürümler: 19.0.4, 19.1.5, 19.2.4.

Daha önce 19.0.3, 19.1.4 veya 19.2.3’e güncellediyseniz yama eksik kalmış olabilir — tekrar güncelleme şart.

Sadece tarayıcıda çalışan klasik React uygulamaları (SPA = tek sayfa uygulaması, sunucu bileşeni yok) etkilenmez. Next.js, react-router, waku gibi RSC destekleyen çatılar etkilenir; kendi upgrade rehberlerine bakın.

DoS açığı: sunucuyu kilitlemek

DoS (Denial of Service), saldırganın sistemi meşgul ederek normal kullanıcıların erişememesini sağlamasıdır. CVE, kamuya açıklanan güvenlik açığı numarasıdır; CVSS 7.5 orta-yüksek şiddet anlamına gelir.

Saldırgan, özel hazırlanmış bir HTTP isteğini Server Function uç noktasına gönderdiğinde sunucu gelen veriyi çözümlerken (deserialize) sonsuz döngüye girebiliyor. Sonuç: işlemci %100, sunucu yanıt veremez hale gelir. Kendi sunucu fonksiyonunuzu yazmasanız bile RSC açıksa risk devam edebilir.

İlk yama tam değildi; 26 Ocak 2026’daki ek düzeltmeler (CVE-2026-23864) sorunu kapattı.

Kaynak kodu sızıntısı: gizli bilgi kodda mı?

CVE-2025-55183 (CVSS 5.3, orta şiddet): kötü niyetli istek, sunucu fonksiyonunun kaynak kodunu dışarı sızdırabilir:

'use server';
export async function serverFunction(name) {
  const conn = db.createConnection('SECRET KEY'); // kod metne dönüşünce sızar
  return { message: `Hello, ${name}!` };
}

'use server' direktifi, fonksiyonun sunucuda çalışacağını belirtir. Sızıntı kapsamı: fonksiyon gövdesi ve derleyicinin birleştirdiği kod. process.env.SECRET gibi ortam değişkenleri çalışma anında okunur, kaynak kodunda görünmez — risk, koda gömülü sabit gizli anahtarlar içindir.

Ne yapmalısınız?

  1. Hemen güncelleyin — barındırma sağlayıcısının geçici korumasına güvenmeyin.
  2. Production paketinizde RSC sürümünü kontrol edin (npm ls react-server-dom-webpack vb.).
  3. CI pipeline’ında lockfile denetimi yapın; otomatik güncelleme PR’larında minimum 19.2.4 şartı koyun.
  4. Monorepo’da yalnızca etkilenen react-server-dom-* paketlerini güncellemeniz yeterli; react ve react-dom zorunlu değil.

Kritik bir CVE yamalandıktan sonra ek açıklar bulunması endüstride sık görülür — Log4Shell sonrası ek CVE’ler buna örnektir. Tek seferlik güncelleme yetmez; takip etmek gerekir.

Özet

React Server Components kullanan projeler, RCE yamasından sonra DoS ve kaynak kodu sızıntısı için ikinci bir güncelleme turuna ihtiyaç duyuyor. Etkilenen paketleri 19.0.4 / 19.1.5 / 19.2.4 sürümlerine yükseltin; kodda gömülü gizli anahtar bırakmayın; CI’da sürüm kontrolü otomatikleştirin.

React RSC: DoS ve kaynak kodu sızıntısı (CVE güncellemesi) — Aziz Osmanoğlu