1 puan yazan GN⁺ 2025-03-24 | 1 yorum | WhatsApp'ta paylaş
  • CVE-2025-29927

  • Next.js sürüm 15.2.3, güvenlik açığını (CVE-2025-29927) gidermek için yayımlandı. next start ve output: 'standalone' kullanan, kendi kendine barındırılan tüm Next.js dağıtımlarının derhal güncellenmesi öneriliyor.

  • Zaman çizelgesi

    • 2025-02-27T06:03Z: GitHub özel güvenlik açığı bildirimi yoluyla Next.js ekibine açıklandı
    • 2025-03-14T17:13Z: Next.js ekibi raporu incelemeye başladı
    • 2025-03-14T19:08Z: Next.js 15.x için yama dağıtıldı
    • 2025-03-14T19:26Z: Next.js 14.x için yama dağıtıldı
    • 2025-03-17T22:44Z: Next.js 14.2.25 yayımlandı
    • 2025-03-18T00:23Z: Next.js 15.2.3 yayımlandı
    • 2025-03-18T18:03Z: CVE-2025-29927 GitHub'da yayımlandı
    • 2025-03-21T10:17Z: Güvenlik duyurusu yayımlandı
    • 2025-03-22T21:21Z: Next.js 13.5.9 yayımlandı
    • 2025-03-23T06:44Z: Next.js 12.3.5 yayımlandı
  • Açık ayrıntıları

    • Next.js, sonsuz döngüleri önlemek için dahili x-middleware-subrequest başlığını kullanır. Güvenlik raporuna göre, middleware çalıştırmasını atlayarak kritik kontrollerin aşılmasına yol açabilecek bir olasılık bulunuyor.
  • Etki kapsamı

    • Etkilenen durumlar

      • Middleware kullanan, kendi kendine barındırılan Next.js uygulamaları (next start ve output: 'standalone')
      • Kimlik doğrulama veya güvenlik kontrolleri için middleware'e güveniliyorsa
      • Cloudflare kullanan uygulamalar, yönetilen WAF kurallarını etkinleştirebilir
    • Etkilenmeyen durumlar

      • Vercel üzerinde barındırılan uygulamalar
      • Netlify üzerinde barındırılan uygulamalar
      • Statik export olarak dağıtılan uygulamalar (middleware çalışmaz)
  • Yamanın bulunduğu sürümler

    • Next.js 15.x: sorun 15.2.3 sürümünde giderildi
    • Next.js 14.x: sorun 14.2.25 sürümünde giderildi
    • Next.js 13.x: sorun 13.5.9 sürümünde giderildi
    • Next.js 12.x: sorun 12.3.5 sürümünde giderildi
    • Güvenli bir sürüme yama uygulanamıyorsa, harici kullanıcı isteklerinin x-middleware-subrequest başlığını içermesinin engellenmesi önerilir
  • Güvenlik sorumluluğumuz

    • Next.js, 2016'dan bu yana 16 güvenlik duyurusu yayımladı. GitHub güvenlik duyuruları ve CVE'ler, yazılımdaki güvenlik açıklarını kullanıcılara, tedarikçilere ve şirketlere bildiren sektör standardıdır. İş ortaklarıyla iletişimdeki eksikleri gidermek için bir partner mailing list oluşturuldu. Dahil edilmek için partners@nextjs.org adresiyle iletişime geçebilirsiniz.

1 yorum

 
GN⁺ 2025-03-24
Hacker News görüşleri
  • Next'in middleware sistemi pek çok sorun barındırıyor ve en baştan yeniden uygulanması daha iyi olabilir

    • Birden fazla middleware'i zincirleme bağlamanın resmi bir yolu yok
    • Temel fonksiyonlar statik üyeler olarak tanımlandığı için üçüncü taraf middleware kullanımında sorun çıkabilir
    • Middleware ile route handler'lar arasında iletişim kurma yöntemleri yetersiz
    • Veriyi header üzerinden aktarma yöntemi güvenli değil
    • Otomatik caching'den vazgeçmek zorunda kalma sorunu da var
    • İsteğin gerçek host adını almak zor
  • Middleware sisteminin güvenlik sorunlarıyla ilgili başka bir makale bulundu

    • Header üzerinden iletişim yöntemi, kullanıcı girdisi doğrulamasından ayrılmış durumda
    • Kullanıcıdan gelen tüm header'lara izin vermek tehlikeli olabilir
    • Sunucu tasarımındaki sorunları çözmek için framework desteği gerekiyor
  • Next.js'teki güvenlik açığına dair bilgiler

    • Belirli bir header eklendiğinde sunucunun hatalı yanıt vermesine yol açabilen bir açık vardı
    • Bu açık için bir CVE yok ve hangi sürümlerin etkilendiği net değil
    • Next.js'in destek politikasına göre yalnızca belirli sürümler için yama sağlanıyor
  • Next.js'teki güvenlik sorununun çözümündeki gecikmeye dair endişe

    • Bildirimden sonra ancak 2 haftadan fazla süre geçince sorunun çözümüne başlandı
    • Sorunun ciddiyeti doğru şekilde aktarılmamış olabilir
  • Next.js'in karmaşıklığına yönelik eleştiri

    • React çok değer sağladı ama Next yalnızca karmaşıklık ekliyor
    • Dosya tabanlı routing ve server-side rendering yalnızca belirli durumlarda faydalı
  • Güvenlik açığının kolayca istismar edilebilir olması

    • Belirli bir header eklenirse kimlik doğrulamanın atlatılabildiği bir sorun
  • Next.js'in dahili header kullanımı sorunu

    • Özyinelemeli istekleri önlemek için kullanılan bir dahili header var
    • Bu header üzerinden önemli doğrulamaların atlatılma ihtimali bulunuyor
  • Next.js'i self-host etme tercihine dair huzursuzluk

    • HN yorumlarını okudukça bu tercihle ilgili huzursuzluk artıyor
  • Güvenlik sorununun çözümündeki gecikmeye dair endişe

    • Sorunun 13 gün boyunca çözümsüz kalması büyük bir problem