Node.js 21 Ekim Güvenlik Sürümü: Brotli RCE ve TLS Doğrulama Açıkları İçin Ne Yapmalı?
Node.js projesi 21 Ekim 2026'da 10 güvenlik açığını kapatan sürümler yayınladı; dördü yüksek önem dereceli. Brotli çözücüsündeki uzaktan kod çalıştırma ve iki TLS ana makine adı doğrulama atlatması öne çıkıyor. Hangi sürümlerin güvenli olduğunu ve ne sormanız gerektiğini anlatıyoruz.
Kısaca: Node.js projesi 21 Ekim 2026'da 26.x, 24.x ve 22.x hatları için güvenlik sürümleri yayınladı: v26.12.1, v24.22.1 (LTS) ve v22.23.4. Toplam 10 açık kapatıldı: 4 yüksek, 3 orta, 3 düşük önem dereceli. En kritik olanı, Brotli çözücüsündeki bellek taşması nedeniyle uzaktan kod çalıştırmaya izin verebilen CVE-2026-111497. Ayrıca iki yüksek önemli TLS ana makine adı (hostname) doğrulama atlatması da düzeltildi. Sunucu tarafında Node.js çalıştıran bir uygulamanız (API, Next.js sunucusu, arka uç) varsa yazılım ekibinizden Node.js sürümünü ve yamanın uygulanıp uygulanmadığını yazılı olarak isteyin. Bu yazı, Node.js'in resmî duyurusuna dayanır (23 Ekim 2026).
Son güncelleme: 23 Ekim 2026
Hangi sürümler düzeltildi?
| Hat | Düzeltilmiş sürüm | En yüksek önem |
|---|---|---|
| 26.x | v26.12.1 | Yüksek |
| 24.x | v24.22.1 (LTS) | Yüksek |
| 22.x | v22.23.4 | Yüksek |
Duyuru yalnızca bu üç hattı kapsıyor. Resmî ifadeyle, ömrünü doldurmuş (EOL) sürümler her güvenlik sürümünden etkilenir ve düzeltme almaz; bu hatlardaysanız desteklenen bir sürüme geçmeniz gerekir. (İkincil kaynaklar Node.js 20'nin Nisan 2026'da ömrünü doldurduğunu belirtiyor; kendi sürümünüzün destek durumunu Node.js sürüm takviminden doğrulayın.)
Öne çıkan açıklar
| CVE | Önem | Özet |
|---|---|---|
| CVE-2026-111497 | Yüksek | Brotli çözücüsünde bellek dışına yazma; uzaktan kod çalıştırmaya izin verebilir. 26, 24 ve 22 hatlarını etkiliyor |
| CVE-2026-105482 | Yüksek | dns.resolve, NUL karakteri içeren adları kesiyor |
| CVE-2026-105483 | Yüksek | IP adresi tam genişlikli (fullwidth) rakamlarla yazıldığında TLS ana makine adı doğrulaması atlatılabiliyor (26 ve 24) |
| CVE-2026-106069 | Yüksek | Ana makine adı gevşek biçimde bir IP'ye çözüldüğünde TLS ana makine adı doğrulaması atlatılabiliyor |
| CVE-2026-105481 | Orta | Keep-alive soketleri, istek gönderilmeden önce yazılmış bir yanıtı işleyebiliyor |
| CVE-2026-106072 | Orta | Standart dışı IPv4 adları, DNS SAN'ların IP uç noktalarını doğrulamasına yol açıyor (hatalı sertifika doğrulaması) |
| CVE-2026-106074 | Orta | crypto.randomUUID() ve randomInt() entropi önbellekleri başlangıç anlık görüntülerine kaydedilince süreçler aynı değerleri üretebiliyor |
| CVE-2026-106070/106071/106073 | Düşük | ZIP başlığı doğrulaması, Permission Model dosya sistemi izinleri |
Güncelleme ayrıca c-ares, CA sertifika deposu (eMudhra ara CA ile ilgili), OpenSSL, SQLite ve Undici gibi paketlenmiş bileşenleri de yeniliyor.
Bu açıklar işletmeniz için ne anlama geliyor?
Brotli açığı
Brotli, web sunucularının ve istemcilerin kullandığı yaygın bir sıkıştırma biçimi. Çözücüdeki bir hata, kötü niyetli hazırlanmış sıkıştırılmış verinin işlenmesi sırasında kod çalıştırmaya yol açabiliyor. Bu açık üç desteklenen hattı da etkilediği için en öncelikli kalem olarak değerlendirilmelidir. Uygulamanızın dışarıdan gelen sıkıştırılmış veriyi Node.js içinde işleyip işlemediğini yazılım ekibiniz değerlendirmelidir.
TLS ana makine adı doğrulama açıkları
Bu açıklar, bir sunucuya güvenli bağlandığınızı sanırken sahte bir sertifikayla kandırılabilmenize yol açabilir. Özellikle IP adresiyle bağlantı kuran ve ana makine adı kontrolüne güvenen servisler etkilenir (örneğin servisler arası iç bağlantılar, bazı ödeme/ERP entegrasyonları). Ödeme, kimlik ve ERP gibi hassas entegrasyonlarda Node.js sürümünün güncel olması önemlidir. Entegrasyon güvenliği için sistem entegrasyonu rehberimize bakabilirsiniz.
Docker ve derlenmiş uygulamalar
Yalnızca sunucudaki Node.js'i güncellemek yetmeyebilir: Docker imajları ve tek dosyaya paketlenmiş (SEA) uygulamalar kendi Node.js sürümlerini taşır; bunların yeniden derlenmesi gerekir. Duyuru ayrıca randomUUID() açığının başlangıç anlık görüntülerini ve SEA'ları etkilediğini belirtiyor.
Yazılım ekibinize soracaklarınız
- Sunucularımız/konteynerlerimiz hangi Node.js sürümünde? Hangi hatta (22, 24, 26 veya eski)?
- v22.23.4 / v24.22.1 / v26.12.1 sürümlerine geçildi mi? Ne zaman?
- Docker imajları yeniden derlendi ve dağıtıldı mı?
- Node.js'in desteklenen bir hatta olduğunu nereden takip ediyorsunuz?
- Yükseltme sonrası kritik akışlar (ödeme, giriş, entegrasyonlar) test edildi mi?
- Acil güvenlik yamaları için bakım sözleşmesinde süre taahhüdü var mı? (Bakım ve SLA rehberimiz)
Haftanın deseni: üç ayrı yama aynı günlerde
Bu hafta, farklı teknolojilerde aynı anda acil yamalar çıktı: PHP (21 Ekim, PHP2Shell), Node.js (21 Ekim) ve Next.js (14 Ekim, ayrıntılar). Çıkarım: güvenlik güncellemeleri artık “yılda bir kez bakım” işi değil, sürekli bir süreç. Bunun için:
- Kullandığınız tüm çalışma zamanlarının (PHP, Node.js, Python vb.) güncel bir envanteri,
- Desteklenen sürümlerde kalma politikası,
- Acil yamalar için tanımlı süre ve sorumlu,
- Yükseltme sonrası otomatik testler
gerekir. Genel önlemler için web uygulaması güvenliği rehberimize bakın.
Aktaş Digital ile bakım ve güvenlik
Node.js ve Next.js tabanlı projelerde sürüm takibi, güvenlik güncellemeleri ve yükseltme sonrası test, bakım planının temel parçasıdır. Mevcut uygulamanızın çalışma zamanı ve bağımlılık durumunu değerlendirmek ya da yeni bir proje için kapsam ve maliyet dökümü almak isterseniz teklif formumuzu kullanabilirsiniz. İlgili hizmetlerimiz: web çözümleri.
Sık Sorulan Sorular
Node.js 20 kullanıyoruz; ne yapmalıyız?
Resmî duyuru yalnızca 22.x, 24.x ve 26.x hatlarını kapsıyor; ömrünü doldurmuş sürümler düzeltme almaz. Desteklenen bir hatta (ör. 24 LTS) geçiş planlayın.
Sunucuda Node.js'i güncelledik; Docker imajlarımız da güncel mi?
Hayır, otomatik değil. Docker imajları kendi Node.js sürümünü taşır; imajın yeniden derlenip dağıtılması gerekir.
Brotli açığı sitemi doğrudan etkiler mi?
Etkisi, uygulamanızın Brotli sıkıştırılmış veriyi Node.js içinde çözüp çözmediğine ve verinin kaynağına bağlıdır. Hangi bileşenlerin etkilendiğini yazılım ekibiniz değerlendirmeli; en güvenli yol, düzeltilmiş sürüme geçmektir.
Geçici çözüm var mı?
Kullandığımız kaynaklarda duyuru için bir geçici çözüm belirtilmedi; öneri düzeltilmiş sürüme geçmektir.
Sonuç
Node.js'in 21 Ekim sürümü, bir uzaktan kod çalıştırma ve iki TLS doğrulama atlatması dahil dört yüksek önemli açığı kapatıyor. Bugün yapabileceğiniz ilk iş: sunucularınızda ve Docker imajlarınızda hangi Node.js sürümünün çalıştığını öğrenip, düzeltilmiş sürüme geçişi yazılı olarak talep etmek.
