Güncelleme üç ayrı sorunu kapsıyor. Açıklardan biri React Server Components bileşeninde, diğeri Next.js'in sharp paketi üzerinden kullandığı açık kaynaklı SVG işleme kütüphanesi librsvg'de bulunuyor. Üçüncü sorun ise App Router kullanan uygulamalarda Server Actions üzerinden hizmet reddine yol açıyor. Vercel, 15 Ekim itibarıyla bu üç açıktan hiçbirinin saldırılarda kullanıldığına dair kamuya açık bir rapor bulunmadığını bildirdi.
Hangi Açıklar Kapatıldı?
Güncelleme kapsamında kapatılan ilk açık, GHSA-673q-mjm6-r5xr koduyla takip edilen ve use cache üzerinden kod yürütmeye izin veren zafiyet. Bu açık yalnızca 16.0.0 ile 16.4.0 arasındaki sürümleri etkiliyor ve 16.4.1 sürümünde giderildi. İkinci açık, CVE-2026-96889 ve GHSA-2464-fhr4-w9xw kodlarıyla izlenen SVG görselleri üzerinden kod yürütme zafiyeti. Bu sorun 10.0.0 ile 15.5.27 arasındaki tüm sürümler ile 16.0.0 ile 16.4.0 arasındaki sürümleri etkiliyor. Düzeltme 16.4.1 sürümünde ve sharp 0.35.5 veya üzeri ile birlikte kullanılan 15.5.28 sürümünde yer alıyor. Üçüncü sorun ise GHSA-p3m5-59mp-jv5r kodlu Server Actions üzerinden hizmet reddi açığı. Bu açık 13.0.0 ile 15.5.27 ve 16.0.0 ile 16.4.0 arasındaki sürümleri etkiliyor ve 15.5.28 ile 16.4.1 sürümlerinde kapatıldı.- use cache üzerinden kod yürütme (GHSA-673q-mjm6-r5xr): 16.0.0 - 16.4.0 etkilendi, 16.4.1 düzeltti. Cache Components özelliği açık ve bir use cache fonksiyonu birden fazla typed array döndüren App Router uygulamaları risk altında.
- SVG görselleri üzerinden kod yürütme (CVE-2026-96889): 10.0.0 - 15.5.27 ve 16.0.0 - 16.4.0 etkilendi, 16.4.1 veya sharp 0.35.5 ve üzeri ile 15.5.28 düzeltti. glibc tabanlı Linux üzerinde saldırgan tarafından sağlanan SVG dosyalarını sharp'a ileten uygulamalar etkileniyor.
- Server Actions üzerinden hizmet reddi (GHSA-p3m5-59mp-jv5r): 13.0.0 - 15.5.27 ve 16.0.0 - 16.4.0 etkilendi, 15.5.28 ve 16.4.1 düzeltti. En az bir Server Action tanımlı App Router uygulamaları etkileniyor.
Kimler Etkileniyor?
İlk kod yürütme açığı, kullanıcı arayüzü bileşenlerini sunucuda çalıştıran React özelliği React Server Components'ten kaynaklanıyor. React'in danışma metni, react-server-dom-webpack, react-server-dom-parcel ve react-server-dom-turbopack paketlerinin 19.0.0 ile 19.3.0 arasındaki sürümlerini kapsıyor ve açığı "yanıtların birden fazla typed array ve saldırgan kontrollü bir değer taşıdığı son derece nadir durumları" etkileyen bir sorun olarak tanımlıyor. Next.js tarafında tetikleyici, birden fazla typed array döndüren bir use cache fonksiyonu. Bu nedenle yalnızca Cache Components özelliğini etkinleştiren sürüm 16 uygulamaları doğrudan maruz kalıyor. Vercel buna rağmen uygulamasında böyle bir fonksiyon bulunmayanların da güncelleme yapması gerektiğini belirtiyor.İkinci açık, SVG görsellerini işleyen librsvg kütüphanesindeki bir bellek hatası. Next.js bu kütüphaneye paketlenmiş sharp üzerinden erişiyor. Danışma metnine göre kod yürütme, Next.js glibc tabanlı Linux üzerinde çalıştığında mümkün oluyor. Varsayılan olarak Next.js SVG dosyalarını optimize etmiyor. Bunları görsel optimize edici üzerinden sunmak için dangerouslyAllowSVG adlı ayarın açılması gerekiyor. Aynı kütüphane, Node.js çalışma zamanında çalıştığında sosyal önizleme görselleri oluşturan next/og özelliği için de görselleri işliyor.
Üçüncü açık olan hizmet reddi sorunu, en az bir Server Action tanımlı App Router uygulamalarını etkiliyor. Özel olarak hazırlanmış istekler, bir sunucu sürecini tam CPU kullanımına iterek diğer istekleri işlemesini engelleyebiliyor. Pages Router kullanan veya hiç Server Action içermeyen uygulamalar etkilenmiyor. Barındırma ortamına göre maruziyet değişebiliyor. Netlify, platformunun görsel optimize edici kod yolunu çalıştırmadığını ve açıkların kendi kurulumunda sınırlı etkiye sahip olduğunu, buna rağmen güncellemeyi önerdiğini açıkladı.
Ne Yapılmalı ve Geçici Önlem Var mı?
Vercel'in danışma metni, sürüm 16 kullananların 16.4.1'e, sürüm 15 kullananların ise 15.5.28'e yükseltme yaparak yeniden derleme ve yeniden dağıtım yapmasını öneriyor. Danışma metnine göre Next.js'i yükseltmek, paket yöneticilerinin düzeltilmiş sharp sürümünü otomatik olarak getirmesini sağlıyor. Bu durum sürüm 16 için geçerli, çünkü 16.4.1 sharp 0.35.5'i zorunlu kılıyor. Sürüm 15 için durum farklı. 15.5.28 hâlâ etkilenen eski sharp 0.34.x sürümünü kabul ediyor ve mevcut bir kurulumun üzerine yükseltme yapıldığında bu sürüm yerinde kalabiliyor. Bu nedenle npm ls sharp komutuyla kontrol yapılması ve sürüm daha eskiyse sharp'ın 0.35.5 veya üzerine güncellenmesi gerekiyor.Next.js'i hemen yükseltemeyenler için yalnızca görsel açığı açısından geçici bir seçenek bulunuyor: sharp'ın 0.35.5 veya üzerine güncellenmesi ya da sharp danışma metninde açıklandığı gibi sharp.block({ operation: ["VipsForeignLoadSvg"] }) ile sharp'ta SVG işlemenin engellenmesi. use cache ve Server Actions açıkları için bir geçici çözüm bulunmuyor, bu açıkları yalnızca yükseltme kapatıyor.
15 Ekim itibarıyla use cache ve Server Actions danışma metinlerinin CVE kaydı bulunmuyor ve npm audit'in kullandığı npm danışma akışında görünmüyor. Bu nedenle bağımlılık tarayıcıları bu açıklar için uyarı vermeyebilir. Görsel açığı ise sharp'ın kendi danışma metni üzerinden görünür durumda.
Görsel İşleme Açığı Neden Tekrarlıyor?
Bu, Ağustos ayından bu yana Next.js'te görsel işlemeden kaynaklanan üçüncü kod yürütme açığı oldu. Ağustos ayında sharp üzerinden erişilen libheif kütüphanesindeki bir hata, optimize edicinin hazırlanmış bir AVIF görselini işlemesi sırasında kod yürütmeye izin vermişti. Eylül ayında next/og'daki bir açık, saldırgan kontrollü metnin oluşturduğu SVG'yi değiştirmesine olanak tanımıştı.Next.js bu kez kendi görsel kodunda değişiklik yapmadı. 16.4.1, 16.4.0 ile aynı optimize ediciyi taşıyor ve görsel açığını paketlenmiş sharp'ı 0.35.5 sürümüne yükselterek düzeltiyor. Bu sürüm, yamalı librsvg 2.63.2'yi içeriyor. librsvg hatası CVE-2026-96889, 23 Eylül'de kamuya açıklandı ve 27 Eylül'de sharp içinde düzeltildi. Red Hat bu açığa 7.8 puan verdi ve istismar için kötü amaçlı bir dosyanın açılması gibi kullanıcı etkileşimi gerektiğini belirtti. Vercel ise Next.js maruziyetini 9.5 puanla ve ağ üzerinden erişilebilir olarak derecelendirdi. librsvg hatasını bildiren araştırmacı Rafael B. Dias, bu zafiyetin Eylül ayındaki next/og açığının arkasındaki zayıflık olduğunu söylüyor. O dönemki açık için belirli bir sunucu kurulumuna yönelik hazırlanmış çalışan bir istismar kodu da yayımlanmış durumda. sharp'ın bakımcısı ayrıca açığın kod yürütmeyle mi yoksa yalnızca çökmeyle mi sonuçlanacağının sunucunun Node.js derlemesine bağlı olabileceği uyarısında bulunuyor, çünkü resmi Node.js ikili dosyaları bu tür bellek saldırılarına karşı güçlendirilmiş değil.

Yazılım ve Uygulamalar
Yazılım ve Uygulamalar
Yazılım ve Uygulamalar
Yorumlar (0)
Yorum yapmak için giriş yapmalısınız.