Haberler

Microsoft, Kritik .NET Güvenlik Açıkları İçin Acil Yamalar Yayınladı

Microsoft, .NET 8, .NET 9 ve .NET 10 için olağan dışı güvenlik güncellemeleri yayınlayarak kritik bellek taşması hatalarına karşı önlem aldı. Güncellemeler, tüm platformları etkileyen Brotli veri açma güvenlik açığı CVE-2026-111497 ile Linux sistemlerini ilgilendiren CVE-2026-114148 numaralı güvenlik sorununu gideriyor. Şirket, uygulama ve derleme ortamlarının güncel sürümlere geçirilmesini önerirken .NET 11 Release Candidate 3 sürümünü de duyurdu.

Microsoft, Kritik Bellek Taşması Açığını Gideriyor

Microsoft’un acil .NET güvenlik yamaları, Brotli sıkıştırma algoritmasının veri açma işlemlerinde ortaya çıkan ciddi bir bellek taşması sorununu kapatıyor. CVE-2026-111497 olarak tanımlanan açık, kimlik doğrulaması yapmamış saldırganların işlem belleğini okumasına veya bozmasına yol açabilecek bir güvenlik riski oluşturuyor. Söz konusu durum, bilgi ifşası, hizmet engelleme saldırıları ya da yetki yükseltme gibi sonuçlara neden olabiliyor.

Güvenlik açığı, yalnızca belirli bir işletim sistemiyle sınırlı kalmadığı için Windows, Linux ve diğer desteklenen platformlardaki .NET kurulumlarını ilgilendiriyor. Brotli ile sıkıştırılmış verileri işleyen uygulamalar, özellikle ilgili veri açma işlevlerini kullanmaları durumunda risk altında bulunuyor.

ASP.NET Core üzerinden gelen isteklerin otomatik olarak sıkıştırılmış verilerden arındırılması, HttpClient bileşeninin yanıtları otomatik açması ve System.IO.Compression içindeki Brotli API’leri, etkilenen kullanım alanları arasında yer alıyor. Bu nedenle yalnızca uygulama sunucusunu güncellemek yerine uygulamanın kullandığı .NET çalışma zamanı sürümünün de kontrol edilmesi gerekiyor.

CVE-2026-114148 numaralı ikinci güvenlik sorunu, etkilenen .NET tarball paketlerindeki güvenli olmayan sahiplik meta verilerinden kaynaklanıyor. Yerel erişim elde etmiş bir saldırgan, bu sorundan yararlanarak dosyaları değiştirebiliyor ve daha yüksek ayrıcalıklar kazanabiliyor. Açığın etkisi Linux sistemleriyle sınırlı kalıyor.

.NET 10 ve .NET 11 tarafında sorun, çevrim içi olarak dağıtılan kaynak koddan derleme paketlerini ilgilendiriyor. .NET 8 ve .NET 9 sürümlerinde ise ASP.NET Core tarball paketleri üzerinden dağıtılan bileşenler de kapsamda bulunuyor. Bu ayrıntı, .NET’i kaynak kodundan derlemeyen bazı ASP.NET Core kullanıcılarının da güncellemeyi uygulaması gerektiğini gösteriyor.

Microsoft, yeni yayın kapsamında daha önce 13 Ekim’de duyurulan iki güvenlik sorununa yönelik düzeltmeleri de yeniden dağıtıyor. CVE-2026-70197, SocketAsyncEventArgs bileşenindeki bellek bozulması sorununu kapsarken CVE-2026-102870, Blazor WebAssembly hata ayıklayıcısıyla ilgili bir açığı tanımlıyor. Şirket, önceki güncellemelerin söz konusu sorunları bütünüyle gidermemesi nedeniyle düzeltmeleri yeniden yayınladığını belirtiyor.

Microsoft, güvenlik yamalarının yalnızca yüklenmesini değil, uygulamaların dağıtım yöntemine uygun biçimde güncellenmesini de tavsiye ediyor. İzlenecek adımlar, uygulamanın paylaşılan bir çalışma zamanına mı yoksa kendi içinde paketlenmiş bir çalışma zamanına mı dayandığına göre değişiyor.

  • Framework-dependent uygulamalar: Uygulamanın hedeflediği .NET sürümüne ait güncel çalışma zamanı kurulmalı, ardından uygulama yeniden başlatılmalı.
  • Self-contained uygulamalar: Güncel çalışma zamanı kullanılarak uygulama yeniden derlenmeli ve yeniden yayınlanmalı. Ana bilgisayara yeni bir çalışma zamanı kurmak, uygulamayla birlikte paketlenmiş eski çalışma zamanını değiştirmiyor.
  • Konteyner tabanlı dağıtımlar: Güncel .NET konteyner imajlarıyla yeni imaj oluşturulmalı ve dağıtım yeniden yapılmalı.
  • Kaynak koddan derleme yapan kullanıcılar: İlgili .NET sürümüne ait güncel kaynak derleme paketleri alınmalı, paketler yeniden oluşturulmalı.
  • .NET 8 ve .NET 9 ASP.NET Core tarball kullanıcıları: Kaynak koddan derleme yapılmasa bile yenilenmiş ASP.NET Core Runtime tarball paketi kurulmalı.

Bu adımların tamamlanması, uygulamanın dağıtım biçimine bağlı olarak eski ve savunmasız bileşenlerin kullanımda kalmasını önlemeye yardımcı oluyor.

Yöneticiler, sistemde yüklü .NET çalışma zamanlarını dotnet --list-runtimes komutuyla listeleyebiliyor. Çıktı, hangi sürümlerin kurulu olduğunu göstererek güncelleme gereksiniminin belirlenmesini kolaylaştırıyor. Kurulu sürümün listelenmesi tek başına uygulamanın güvenli olduğunu kanıtlamadığı için yöneticilerin uygulama paketlerini, konteyner imajlarını ve dağıtım ortamlarını da incelemesi gerekiyor.

Microsoft’un önerisi, etkilenen sürümlerin gecikmeden güncellenmesi ve uygulamaların yeni çalışma zamanı ya da paketlerle yeniden dağıtılması yönünde. Güncelleme sırasında sorun yaşayan geliştiriciler, geri bildirimlerini .NET sürüm geri bildirim kayıtları üzerinden iletebiliyor.

İlgili Makaleler

Bir yanıt yazın

Başa dön tuşu