Geliştiriciler ve büyük teknoloji şirketleri, Node.js ortamına ve diğer birçok yazılım platformuna gömülü olan C dilinde yazılmış Brotli sıkıştırma açma kitaplığını etkileyen HTTP2Shell (CVE-2026-111497 koduyla takip edilen ve Node2Shell ile Broccoli2Shell adlarıyla da bilinen) son derece kritik bir açığı gidermek için acil güvenlik düzeltmeleri yayınladı.
Açık, Brotli'nin 1.0.3'ten 1.0.9'a kadar olan sürümlerinin yanı sıra 1.1.0 ve 1.2.0 sürümlerini de etkiliyor. Sorun, ilk olarak Node.js ortamında keşfedildikten sonra Brotli sıkıştırma açıcıdaki aynı kusurun çok çeşitli ve farklı teknik ortamlardaki yazılımları etkilediğinin anlaşılması nedeniyle birden fazla isim altında bildirildi.
Etki Alanı ve Etkilenen Sistemler
HTTP2Shell adı, HTTP protokolü istemcileri ve sunucuları üzerindeki olası etkiyi yansıtsa da, açık yalnızca HTTP/2 ile sınırlı olmayıp, saldırganların kontrol ettiği Brotli veri sıkıştırmasının açılmasına dayanan tüm uygulamaları kapsayacak şekilde uzanmaktadır. Etkilenme potansiyeli olan uygulamalar şunlardır:
- Popüler Node.js çalışma zamanı ortamı.
- Zarar görmüş bir Brotli sıkıştırma açıcı ile çalışacak şekilde yapılandırıldıklarında urllib3, requests, httpx ve aiohttp gibi Python HTTP kitaplıkları.
- İstismar edilmesi etkilenen sistemlerde ayrıcalık yükseltilmesine olanak tanıdığı için Microsoft'un .NET platformundaki açıyla mücadele etmek amacıyla yayınladığı acil güvenlik güncellemeleri.
İstismar Mekaniği ve Teknik Etkileri
Açık, arabellek taşması (Buffer Overflow) kusurundan kaynaklanmaktadır. Özel olarak hazırlanmış Brotli verilerinin akışı, sıkıştırma açıcının geçerli kabul ettiği ve daha fazla girdi talebi olarak yanlış yorumladığı geçersiz blok değiştirme işlemini tetikler. Girdi baytlarını sekiz bayt boyutundaki dahili bir arabelleğin içine eklemeye devam ederek, yazma işlemi izin verilen sınırları aşar ve bitişik belleği bozar.
Siber güvenlik şirketi Imperva tarafından yayınlanan teknik raporlar, bu açığın başarılı bir şekilde istismar edilmesinin yazılım işlemlerinin çökmesine, hassas bellek içeriklerinin ifşa edilmesine ve uzaktan kod yürütmeye (RCE) kadar varabileceğini ortaya koydu.
Pratikte Ne Değişiyor ve Nasıl Düzeltilir?
Açığın siber saldırılarda kötüye kullanıldığını doğrulayan mevcut raporlar bulunmamakla birlikte, istismar için kavram kanıtı (PoC) kanıtlarının mevcut olması, sistem yöneticileri ve geliştiriciler tarafından hızlı bir hareket tarzı benimsenmesini gerektirmektedir.
- Anında Güncellemeler: Google Brotli (1.0.10, 1.1.1 ve 1.2.1), Node.js (22.23.4, 24.22.1 ve 26.12.1 sürümleri) ve etkilenen Python kitaplıklarındaki hatayı gidermek için güncellenmiş sürümler sunulmuştur.
- Ek Prosedürler: Güncellemeler yüklenildikten sonra yöneticiler etkilenen işlemleri yeniden başlatmalı, konteyner (Container) imajlarını yeniden oluşturmalı ve bunları yeniden yayınlamalıdır.
- Geçici Alternatif Çözümler: Anında güncelleme yapılması mümkün değilse, Python uygulamalarından Brotli desteğinin tamamen kaldırılması ve bir proxy veya güvenlik duvarı düzeyinde gelen Brotli isteklerinin engellenmesi önerilir.