Node.js Güvenlik Açığı: 4 Yüksek Önemli Açık İçin Ne Yapmalı?
Node.js 21 Ekim 2026'da 10 açığı kapattı; 4'ü yüksek önemde, biri uzaktan kod çalıştırmaya izin veriyor. Hangi sürüme geçmeniz gerektiğini anlatıyoruz.

İçindekiler 10
Node.js güvenlik açığı haberi, 21 Ekim 2026'da yayımlanan güvenlik güncellemesiyle gündeme geldi. Node.js ekibi 22.23.4, 24.22.1 ve 26.12.1 sürümlerini çıkardı ve toplam 10 açığı kapattı. Bunların 4'ü yüksek önemde; en ciddisi Brotli çözücüdeki uzaktan kod çalıştırma açığı. Çözüm kısa: sürümünüzü kontrol edin, güncelleyin ve süreçleri yeniden başlatın.
Kısaca:
- 21 Ekim 2026'da Node.js 22.23.4, 24.22.1 ve 26.12.1 yayımlandı; 10 açık kapatıldı.
- En kritik açık CVE-2026-111497: Brotli çözücüde sınır dışı yazma, uzaktan kod çalıştırmaya izin veriyor.
- İki açık TLS hostname doğrulamasını atlatıyor, biri dns.resolve'u etkiliyor.
- Node.js 20 ve 18 gibi destek süresi dolmuş sürümler yama almıyor.
Node.js güvenlik güncellemesinde neler var?
Resmi duyuru 21 Ekim 2026 tarihli. Node.js güvenlik duyurusuna göre üç aktif sürüm hattı için yeni sürümler çıktı. Bu güncelleme yalnızca Node.js'in kendi kodunu düzeltmiyor. c-ares, OpenSSL, SQLite ve Undici gibi bağımlılıklar için de güncellemeler içeriyor. Ayrıca eMudhra sertifika ele geçirmesine ilişkin bir güncelleme de pakette yer alıyor.
Haberlerde "7 açık" ya da "8 açık" gibi farklı sayılar görebilirsiniz. İkincil yayınlar açıkları farklı biçimde saydığı için bu tutarsızlık doğal. Resmi duyuru 10 açıktan söz ediyor; bu yazı da onu esas alıyor.
Dört yüksek önemli açık neler?
Aşağıdaki tablo dört açığı özetliyor:
| CVE | Konu | Etkilenen hat |
|---|---|---|
| CVE-2026-111497 | Brotli çözücüde sınır dışı yazma, uzaktan kod çalıştırma | Yama kapsamındaki sürümler |
| CVE-2026-105482 | dns.resolve, NUL karakterli adları kesiyor | 22, 24 ve 26 |
| CVE-2026-105483 | Tam genişlikli rakamlarla yazılan IP'de TLS hostname doğrulaması atlanıyor | 26 ve 24 |
| CVE-2026-106069 | Gevşek çözümlenen Host'ta TLS hostname doğrulaması atlanıyor | 26, 24 ve 22 |
Brotli açığı en ciddisi. Diğer üçü daha çok doğrulama mantığındaki zayıflıklarla ilgili. Yine de TLS doğrulamasını zayıflatan açıklar, güvenli bağlantı varsayımına dayanan her uygulama için tehlikeli.
Brotli açığı uygulamanızı nasıl etkiler?
CVE-2026-111497, Brotli çözücüde sınır dışı yazma hatası. Bu hata uzaktan kod çalıştırmaya yol açabiliyor. Üstelik fetch() üzerinden tetiklenebildiği bildiriliyor. Güvenlik araştırmacılarının paylaşımlarına göre kötü niyetli bir sunucunun Content-Encoding: br yanıtı döndürmesi yeterli.
Bu yüzden risk yalnızca sunucu tarafında değil. Uygulamanız dışarıdaki bir adrese fetch() ile istek atıyorsa, o adres ele geçirilmişse ya da kötü niyetliyse risk altındasınız. Üçüncü taraf API'lere, web kazıma işlerine ve webhook doğrulamalarına bağlanan servisler özellikle dikkat etmeli.
TLS hostname açıkları neden önemli?
TLS hostname doğrulaması, bağlandığınız sunucunun gerçekten beklediğiniz sunucu olduğunu garanti eder. CVE-2026-105483 ve CVE-2026-106069 bu kontrolü belirli koşullarda atlatıyor. İlki IP adresinin tam genişlikli rakamlarla yazılmasından, ikincisi Host değerinin gevşek biçimde bir IP adresine çözümlenmesinden kaynaklanıyor.
Kontrol atlanırsa araya giren bir saldırgan sahte sertifikayla trafiği okuyabilir veya değiştirebilir. Mikroservisler arası iç haberleşme, ödeme sağlayıcı entegrasyonları ve IP üzerinden yapılan bağlantılar bu açıdan hassas. Hangi sürümde hangi açığın geçerli olduğunu yukarıdaki tablodan kontrol edin; 22 hattı yalnızca CVE-2026-106069 ve CVE-2026-105482'den etkileniyor.
Hangi sürümdeyim, etkileniyor muyum?
Terminalde şunu çalıştırın:
node -v
Çıktı v22, v24 veya v26 ile başlıyorsa yama kapsamındasınız. Hedef sürümler 22.23.4, 24.22.1 ve 26.12.1. Sürüm numaranız bunlardan düşükse güncelleme yapmanız gerekir. Docker kullanıyorsanız imajın içindeki Node sürümünü de ayrıca kontrol edin; sunucudaki sürüm ile konteynerdeki aynı olmayabilir.
Node.js 20 veya 18 kullanıyorsanız ne yapmalısınız?
Destek süresi dolmuş sürümler bu yamaları almıyor. Sürüm takvimine göre Ekim 2026 itibarıyla Node.js 22 bakım modunda ve 30 Nisan 2027'ye kadar destekleniyor. Node.js 26 ise 28 Ekim 2026'da LTS oluyor.
Pratik öneri şöyle:
- Node.js 20 veya 18 çalıştırıyorsanız desteklenen bir hatta geçiş planı yapın.
- Geçişi hemen yapamıyorsanız dışarıya
fetch()ile bağlanan servisleri kısıtlayın. - Yeni projelerde 24 veya LTS'ye girecek 26 hattını tercih edin.
Eski sürümde kalmak "çalışıyor, dokunmayalım" rahatlığı verir ama her yeni güvenlik duyurusunda açıkları biriktirir. Benzer bir durumu GitLab kritik güvenlik açığı yazımızda da ele aldık.
Güncelleme sonrası yeniden başlatma gerekir mi?
Evet. Yeni sürümü kursanız bile çalışan süreçler eski kodla devam eder. Güncellemeden sonra uygulamanızı yeniden başlatmanız gerekir. PM2, systemd veya konteyner kullanıyorsanız ilgili servisi yeniden başlatın ya da imajı yeniden dağıtın. Yeniden başlatmadan yama etkisiz kalır.
Önerilen sıra şu:
node -vile mevcut sürümü not edin.- Hedef sürüme (22.23.4, 24.22.1 veya 26.12.1) güncelleyin.
- Bağımlılıklarınızı ve imajlarınızı yeniden derleyin.
- Servisleri yeniden başlatın.
node -vile yeni sürümün çalıştığını doğrulayın.
Sıkça sorulan sorular
Brotli açığına sadece sunucular mı açık?
Hayır. Açık, fetch() ile tetiklenebildiği için istemci tarafı kullanım da risklidir. Node.js uygulamanız kötü niyetli bir sunucuya bağlanıp Content-Encoding: br yanıtı alırsa açık tetiklenebilir.
Bu güncellemede kaç açık kapatıldı?
Resmi duyuruya göre toplam 10 açık kapatıldı, bunların 4'ü yüksek önemde. Bazı ikincil kaynaklar farklı sayılar verebiliyor; resmi duyuruyu esas almak en güvenlisi.
Node.js 20 için yama çıkacak mı?
Destek süresi dolmuş sürümler bu yamaları almıyor. Desteklenen bir sürüme geçmeniz gerekir.
Güncelledim ama hâlâ risk altında mıyım?
Süreçleri yeniden başlatmadıysanız evet. Eski süreç eski kodla çalışmaya devam eder; yeniden başlatma şart.
Sonuç
Bu güncelleme acil olarak değerlendirilmeli. node -v ile sürümünüzü öğrenin, 22.23.4, 24.22.1 veya 26.12.1'e geçin ve servisleri yeniden başlatın. Desteği biten sürümlerdeyseniz geçiş planı yapmanın zamanı geldi. Mevcut bir Node.js uygulamasının güncellenmesi, sürüm geçişi ya da güvenlik denetimi konusunda destek isterseniz EngerekTech ekibi yardımcı olabilir. Benzer güvenlik güncellemelerini takip etmek için PHP güvenlik açığı yazımıza da göz atabilirsiniz.





