Node2Shell: Node.js'te Brotli Çözücüsünde Kritik Uzaktan Kod Çalıştırma Açığı (CVE-2026-111497)
Node.js 21 Ekim 2026'da 10 güvenlik açığını kapatan acil bir sürüm yayınladı. En ciddisi, Node2Shell olarak anılan CVE-2026-111497: gömülü Brotli çözücüsündeki sınır dışı yazma hatası uzaktan kod çalıştırmaya imkân veriyor. Tek çözüm v26.12.1, v24.22.1 veya v22.23.4 sürümlerine güncellemek.
Node.js ekibi 21 Ekim 2026'da, çalışan tüm aktif sürüm dallarını kapsayan acil bir güvenlik sürümü yayınladı. Sürüm toplam 10 güvenlik açığını kapatıyor; bunların en ciddisi olan CVE-2026-111497, güvenlik topluluğunda Node2Shell adıyla anılıyor ve kötü niyetli bir girdiyle uzaktan kod çalıştırmaya (RCE) imkân verebiliyor.
Açığın kaynağı Node.js'in kendi yazdığı bir kod değil: Sorun, Node.js'in içine gömülü olan Brotli sıkıştırma kütüphanesinin çözücüsünde (decoder). Bu nedenle etki Node.js ile sınırlı değil — aynı Brotli çözücüsünü paketleyen diğer yazılımlar da aynı riski taşıyor.
Açık tam olarak ne?
CVE-2026-111497, Brotli çözücüsünde bir sınır dışı yazma (out-of-bounds write) hatasıdır. Bozuk biçimlendirilmiş (malformed) bir Brotli verisi çözülürken, çözücü ayrılmış bellek bölgesinin dışına veri yazabiliyor. Bellek bozulmasına yol açan bu tür hatalar, dikkatle hazırlanmış bir girdiyle saldırganın kontrolündeki kodun çalıştırılmasına kadar gidebilir.
Önemli olan, bu verinin nereden geldiği: Brotli, web'de yaygın bir içerik sıkıştırma biçimidir. Brotli ile sıkıştırılmış istek gövdelerini kabul eden ya da kullanıcı tarafından verilen adreslerden içerik çeken bir servis, dışarıdan gelen veriyi doğrudan bu çözücüye besliyor olabilir. Bu da açığı uzaktan tetiklenebilir kılıyor.
Hangi sürümler etkileniyor, hangisine güncellenmeli?
Node.js yamaları aktif dalların tamamı için yayınlandı. Düzeltmeyi içeren sürümler:
- 26.x için: v26.12.1
- 24.x için: v24.22.1
- 22.x için: v22.23.4
Bu sürümlerden eskisini çalıştıran her kurulum etkilenir. Tek gerçek çözüm yamalı sürüme güncellemektir; yapılandırma değişiklikleriyle açığı tamamen kapatmak güvenilir bir yöntem değildir.
Aynı sürümdeki diğer açıklar
Node2Shell öne çıksa da, aynı sürüm toplam 10 açığı kapatıyor: dört yüksek, üç orta ve üç düşük önem dereceli. Yüksek önem dereceli diğerleri şunlar:
- CVE-2026-105482 —
dns.resolveile ilgili bir güvenlik sorunu. - CVE-2026-105483 ve CVE-2026-106069 — TLS ana makine adı (hostname) doğrulamasıyla ilgili iki açık. Hatalı hostname kontrolü, şifreli bağlantıların yanlış sunucuya güvenmesine kapı aralayabilir.
Tek bir sürümde bu kadar açığın birlikte kapatılması, güncellemeyi yalnızca Node2Shell için değil, bütün olarak zorunlu kılıyor.
Şu an istismar ediliyor mu?
26 Ekim 2026 itibarıyla güvenlik firması Rapid7, CVE-2026-111497 için gerçek dünyada aktif bir istismar gözlemlemediğini bildirdi ve açık, ABD CISA'nın "bilinen istismar edilen açıklar" (Known Exploited Vulnerabilities) kataloğunda yer almıyor. Ancak açığın ayrıntıları ve kavram kanıtı analizleri kamuya açıldığı için, bu durumun hızla değişebileceği varsayılmalı. Açığın kritik önem derecesi (kaynaklara göre CVSS 9.2 ile 9.8 arasında) ve uzaktan tetiklenebilirliği, bekleyip görmeyi riskli kılıyor.
Yapılması gerekenler
- Önce Brotli yüzeyini öne al. Dışarıdan Brotli ile sıkıştırılmış veri kabul eden ya da kullanıcı adreslerinden içerik çeken servisleri en yüksek öncelikle güncelle.
- Çalışma ortamını güncelle. Üretim sunucularını, konteyner imajlarını ve CI/CD işleyicilerindeki Node.js sürümünü v26.12.1 / v24.22.1 / v22.23.4 veya üstüne taşı. Birçok resmi Docker imajı eski Node.js sürümlerini içerir; imaj etiketlerini kontrol et.
- Dolaylı kullanımı unutma. Node.js'i doğrudan kullanmasan bile, üzerine kurulu araçlar (derleme araçları, sunucusuz işlevler, masaüstü Electron uygulamaları) aynı çalışma ortamını barındırabilir.
- Sürüm envanterini çıkar. Hangi sistemlerin hangi Node.js sürümünü çalıştırdığını bilmiyorsan, yamadan önce bir envanter çıkarman gerekir — güncellenemeyen gizli bir kurulum tek başına riski sürdürür.
Node.js'in resmi güvenlik duyurusu, etkilenen sürümlerin ve her CVE'nin ayrıntılı listesini içerir ve güncelleme kararının birincil kaynağı olarak kullanılmalıdır.
Benzer İçerikler
JWT (JSON Web Token) Nedir? Durumsuz Kimlik Doğrulama
JWT (JSON Web Token), iki taraf arasında bilgiyi imzalı ve doğrulanabilir biçimde taşıyan açık bir standarttır (RFC 7519). Web'de durumsuz kimlik doğrulama için kullanılır: kimlik token'ın içine yazılır ve kriptografik olarak imzalanır. Kritik nokta: JWT imzalıdır ama şifreli değildir; payload herkes tarafından okunabilir.
27 Eki 20262 kaynakSEC3 DKPHP2Shell: PHP'de Kimlik Doğrulamasız Uzaktan Kod Çalıştırma Açıkları (CVE-2026-109618 ve CVE-2026-109619)
PHP projesi 21 Ekim 2026'da, birlikte PHP2Shell olarak anılan iki kritik açığı kapatan güvenlik sürümleri yayınladı. CVSS 9.2 puanlı açıklar kimlik doğrulama gerektirmeden uzaktan kod çalıştırmaya izin veriyor ve aynı gün istismar edilmeye başlandı. Tek gerçek çözüm 8.5.12, 8.4.27, 8.3.36 veya 8.2.35 sürümlerine güncellemek.
27 Eki 20264 kaynakSEC1 DKThe Hacker News: Siber Güvenlikte Güvenilir Bir Kaynak
The Hacker News, siber güvenlik alanındaki en güncel haberler ve analizler için başvurulacak en güvenilir kaynaklardan biridir.
22 Ağu 20268 kaynak