Node.js, Brotli açığı dahil 10 güvenlik hatasını kapattı; uzaktan kod çalıştırma riski var
Node.js projesi 22, 24 ve 26 sürüm dalları için güvenlik güncellemesi yayımladı. En ciddi açık, Brotli ile sıkıştırılmış veriyi açan bileşende uzaktan kod çalıştırmaya imkan verebilen bir bellek hatası. Güncelleme ayrıca TLS doğrulamasındaki iki açığı kapatıyor ve eMudhra sertifikalarını güvenilir l
Node.js projesi 21 Ekim 2026'da 22, 24 ve 26 sürüm dalları için güvenlik güncellemesi yayımladı. Node.js'in güvenlik duyurusuna göre güncelleme dördü yüksek, üçü orta, üçü düşük önemde olmak üzere 10 açığı kapatıyor. Düzeltilmiş sürümler 22.23.4, 24.22.1 ve 26.12.1.
En ciddi açık: Brotli çözücüsü
Brotli, web'de yaygın kullanılan bir sıkıştırma biçimi; tarayıcılar ve sunucular sayfaları bu biçimde sıkıştırıp gönderebiliyor. Node.js, Brotli verisini açmak için kendi içinde bir çözücü taşıyor. Duyuruya göre CVE-2026-111497 numaralı açık, bu çözücüde ayrılan bellek alanının dışına yazmaya yol açıyor ve uzaktan kod çalıştırmaya imkan verebiliyor. Açık üç sürüm dalının hepsini etkiliyor. Sürüm notlarına göre düzeltme, Brotli projesinin kendi kodundaki bir düzeltmenin Node.js'e aktarılmasıyla yapıldı.
Node.js açığın nasıl tetiklendiğine dair ayrıntı ve önem puanı (CVSS) paylaşmadı. Risk altında olanlar, dışarıdan gelen ve saldırganın hazırlayabileceği Brotli verisini açan uygulamalar: örneğin Content-Encoding: br ile sıkıştırılmış istek gövdesini açan sunucular ya da kontrol etmediğiniz sunuculardan gelen sıkıştırılmış yanıtları açan programlar.
TLS doğrulamasında iki açık
Yüksek önemdeki diğer iki açık, Node.js'in bağlandığı sunucunun sertifikasını doğrulama biçimiyle ilgili. CVE-2026-105483'te IP adresi tam genişlikli (fullwidth) rakamlarla yazıldığında, CVE-2026-106069'da ise adres gevşek biçimde bir IP adresine çözümlendiğinde sertifikadaki ad denetimi atlanabiliyordu. Bu tür açıklar, araya giren birinin kendini bağlanılan sunucu gibi göstermesine kapı aralayabiliyor. Dördüncü yüksek önemli açık CVE-2026-105482: dns.resolve işlevi içinde boş karakter (NUL) bulunan adları bu karakterde kesiyordu.
Diğer düzeltmeler
- Orta önemde: bağlı kalan (keep-alive) bir bağlantının, istek gönderilmeden önce yazılmış bir yanıtı işlemesi (CVE-2026-105481); standart dışı yazılmış IPv4 adreslerinde sertifika doğrulama hatası (CVE-2026-106072);
crypto.randomUUID()verandomInt()önbelleklerinin başlangıç anlık görüntülerine kaydedilmesi yüzünden her sürecin aynı "rastgele" değerleri üretmesi (CVE-2026-106074). - Düşük önemde: ZIP okuyucusu ve izin modeliyle ilgili üç açık (CVE-2026-106070, CVE-2026-106071, CVE-2026-106073).
- Bağımlılık güncellemeleri: c-ares, OpenSSL (3.5.9), SQLite ve undici. Güvenilir kök sertifika listesi de NSS 3.131.1'e güncellendi; bu güncelleme, gizli anahtarları ele geçirilen Hindistan merkezli sertifika kuruluşu eMudhra'nın sertifikalarına güveni kaldırıyor.
Ne yapmalı
Sunucularda ve geliştirme ortamlarında node -v komutuyla sürümü kontrol edin ve dalınıza göre 22.23.4, 24.22.1 ya da 26.12.1'e geçin. Docker kullanıyorsanız imajlarınızı yeni Node.js tabanıyla yeniden oluşturun; eski imajla çalışan kapsayıcılar açık kalır. Node.js'i Linux dağıtımının paket yöneticisinden kuruyorsanız dağıtımın kendi güvenlik duyurusunu takip edin. Node.js 20 ve daha eski sürümler artık destek almıyor ve bu güncellemeyi de almayacak; Node.js, desteği biten sürümlerin her güvenlik güncellemesinde etkilenmiş sayılması gerektiğini hatırlatıyor.
Açıkların ayrıntıları şu an yalnızca Node.js'in duyurusuna ve sürüm notlarına dayanıyor; proje teknik ayrıntıyı ve önem puanlarını paylaşmadı. Brotli açığının hangi kullanım biçimlerinde dışarıdan tetiklenebildiği netleşene kadar, dışarıdan sıkıştırılmış veri alan uygulamaların önce güncellenmesi en güvenli yol. Gelişmeleri farklı açılardan görmek için bağımsız güvenlik araştırmacılarının değerlendirmelerini de takip edin.