Konuyu Okuyanlar: 2 Ziyaretçi

Node2Shell CVE-2026-111497: Node.js Brotli Açığıyla Uzaktan Kod Çalıştırma

Node2Shell CVE-2026-111497: Node.js Brotli Açığıyla Uzaktan Kod Çalıştırma
[Resim: attachment.php?aid=366]

Selamlar,

PHP2Shell gündemi sürerken JavaScript dünyasına da benzer isimli bir uyarı geldi: Node2Shell. Node.js 21 Ekim 2026'da yayımladığı güvenlik sürümlerinde, bundled Brotli çözücüsündeki sınır dışı yazma (out-of-bounds write) açığını kapattı. Açık CVE-2026-111497 olarak izleniyor ve Imperva Red Team 22 Ekim'de resmi Node.js 24.22.0 imajında kod çalıştırmayı gösterdi.

Konuda anlatılacaklar
  1. Açık nerede?
  2. Hangi uygulamalar risk altında?
  3. Düzeltilmiş sürümler ve EOL uyarısı
  4. Sürüm kontrolü ve güncelleme
  5. Sahte PoC ve "yama scripti" uyarısı

Açık nerede?
CVE kaydına göre sorun Google Brotli kütüphanesinin çözücüsünde (c/dec/decode.c), 1.0.3 - 1.2.0 aralığında. OX Security'nin analizine göre DecodeBlockTypeAndLength fonksiyonu aynı dönüş değeriyle hem "geçersiz akış" hem "daha fazla girdi lazım" anlamı taşıyordu. Blok geçişi çağıranlar bunu kurtarılabilir hata sanınca çözücü geçersiz durumla devam etti ve tamponun dışına yazdı. Upstream düzeltme bu durumu artık format hatası olarak döndürüyor.

Puanlama: CVE kaydında CVSS 4.0 9.2 (Kritik); Node.js projesi ise kendi değerlendirmesinde High olarak sınıflandırıyor. Açığı OpenAI Codex Security'den Khai Tran ve Sylvie Mayer bildirdi.

Kim risk altında?
Saldırgan kontrolündeki Brotli verisini açan her Node.js süreci. Imperva ve OX Security'nin örnekleri:
  • Gelen istekler: Content-Encoding: br ile gönderilen ve Express 5 / body-parser 2.x tarafından açılan istek gövdeleri (Imperva Express 5.0.0-5.3.0 ve body-parser 2.0.0-2.3.0'ı test etti).
  • Giden istekler: Yerleşik fetch() ile alınan Brotli sıkıştırılmış yanıtlar. Yani sizin sunucunuz kötü niyetli bir sunucudan veri çektiğinde de tetiklenebilir.
  • Doğrudan kullanım: Güvenilmeyen veride zlib.brotliDecompress() / brotliDecompressSync() çağrıları.
OX Security özellikle WAF'ın bu açığı azaltmadığını vurguluyor; Imperva ise kendi müşterileri için WAF kuralı eklediğini belirtiyor. Kalıcı çözüm her durumda runtime güncellemesi.

Düzeltilmiş sürümler
Kod:
Node.js 26.x -> 26.12.1 Node.js 24.x -> 24.22.1 Node.js 22.x -> 22.23.4 EOL (25.x, 23.x, 20.x ve oncesi) -> yama YOK, desteklenen hatta gecin Bun -> 1.4.4 (pwn.watch kaydina gore)
Aynı sürümde dokuz CVE daha (TLS hostname/IP doğrulama atlatmaları, DNS NUL kesmesi) ve eMudhra olayı nedeniyle CA deposu güncellemesi de geldi.

Kontrol ve güncelleme
Kod:
node -v # Konteynerlerde: calisan imajdaki surum docker run --rm node:24 node -v # Dockerfile'da etiketi sabitleyip yeniden build edin # FROM node:24.22.1-bookworm-slim
Konteyner kullanıyorsanız eski imajı yeniden başlatmak yetmez; yamalı base imajla yeniden build edip deploy edin. Serverless platformlarda sağlayıcının runtime güncellemesini teyit edin.

Sahte PoC uyarısı
OX Security'nin notu önemli: sosyal medyada veya rastgele repolarda paylaşılan doğrulanmamış exploit ya da "patch" scriptlerini klonlayıp çalıştırmayın. Bu tür büyük olaylarda sahte PoC'lerle zararlı dağıtımı sık görülüyor. Kaynağınız Node.js resmi duyurusu ve resmi sürümler olsun.

Ekibinizde hâlâ Node.js 20 veya 18 çalıştıran servis var mı? EOL geçişini nasıl planladığınızı yorumlarda paylaşın.

Yasal uyarı
Bu yazı bilgilendirme ve savunma amaçlıdır. Anlatılan kontrolleri yalnızca kendi sistemlerinizde veya yazılı izinle yapın. İzinsiz erişim, tarama ve sömürü girişimleri TCK 243-245 kapsamında suçtur. TurkTeam white-hat bir topluluktur; çalıntı veri, hesap, combo/log paylaşımı ve hack hizmeti talepleri forum kurallarına aykırıdır.

Kaynaklar


Ek DosyalarEkran Görüntüleri
   
Cevapla



Hızlı Menü: