Nginx'in 20 Yıllık Açıkları: NGINX Rift Sizi Hemen Güncellemeye Zorlayan Neden

Nginx'in 20 Yıllık Açıkları: NGINX Rift Sizi Hemen Güncellemeye Zorlayan Neden

May 14, 2026 nginx security cve-2026-42945 nginx rift web server vulnerabilities infrastructure security buffer overflow rewrite module zero-day response production security

Nginx'in 20 Yıllık Açığı: NGINX Rift Sizi Hemen Güncellemeye Zorlayacak

"Eski kod = güvenlik riski" deyişini hepimiz duymuşuz. Peki ya bu eski kod, internetin en popüler web sunucularından birinin içinde on sekiz yıl boyunca oturmuş olsa?

F5, Nginx için dört yeni açığa ilişkin yamaları yayınladı. Başı çeken soruna NGINX Rift adı verilmiş (depthfirst tarafından keşfedilmiş) ve bunun ciddiyeti tüm altyapı ekiplerini güncelleme scriptlerine koşturmalı. CVE-2026-42945 kimliğine sahip bu açık, tek başına bir felaket senaryosu.

Mükemmel Fırtına: Eski Kod, Yeni Tehditler

Bu açığı bu kadar tehlikeli kılan faktörleri sıralamak gerekirse:

Sorunun Kaynağı: Nginx'in rewrite modülünde gizlenmiş bir heap buffer overflow. 2008'de yayınlanan 0.6.27 sürümünden beri burada duruyor. O zamanlar Docker yoktu, çoğumuzun cep telefonu bile yoktu ve Nginx'i Apache yerine kullanalım fikri daha aklımıza gelmemişti bile.

Saldırı Yöntemi: Yetkisiz bir saldırgan, sadece tek bir kötü amaçlı HTTP isteğine ihtiyaç duyuyor. Karmaşık exploit zinciri yok, sosyal mühendislik yok, hesap hırsızlığı yok. Sunucunuza isabet eden bir talep yeterli.

Sonuçları: ASLR (Address Space Layout Randomization) etkin olmayan sistemlerde bu, uzaktan kod çalıştırmaya dönüşüyor. Oyun bitti. ASLR açık olsa bile, işçi proseslerin ölüp yeniden başladığı döngüler yoluyla güvenilir hizmet kesintileriyle karşı karşıya kalıyorsunuz.

CVSS Puanı: 9.2 Kritik. Mükemmel 10'dan sonraki en yüksek tehdit seviyesi.

Neden Bu Kadar Önemli?

Asıl soru şu: Bu açık nasıl yirmi yıl boyunca gözden kaçabildi? Cevap, yazılım güvenliğine ilişkin önemli bir şeyi ortaya seviyor.

Nginx'in rewrite modülü, PCRE (Perl Compatible Regular Expressions) kullanarak URL şablonlarını eşleştiriyor. Rewrite kuralları başka bir rewrite, if ya da set direktifi ile birlikte isimsiz captures ($1, $2 gibi) içinde bulunduğunda, kod tahsis edilen heap belleğinin ötesine yazabilir. Klasik bir buffer overflow – kod incelemesi sırasında yakalanması gereken ama nedense kaçan türden bir açık.

Bu açık, milyonlarca sunucu tarafından kullanılan Nginx gibi popüler, iyi yönetilen açık kaynak projelerin bile antik hatalardan muaf olmadığını gösteriyor. Böyle eski bir yazılımdaki buluş, etki alanını muazzam şekilde genişletiyor.

Hemen Harekete Geçmesi Gerekenler

NGINX Plus Kullananlar: R32 ile R36 arasındaki sürümleri çalıştırıyorsanız, sırasıyla R32 P6 veya R36 P4 yamaları lazım.

NGINX Open Source Kullananlar: 1.0.0 ile 1.30.0 arasındaki tüm sürümler etkilenmiş. Hemen 1.30.1 veya 1.31.0'a geçin.

Talihsiz İstisna: Eğer hala Nginx 0.6.27 ile 0.9.7 sürümlerini (çoktan yaşı bitti, destek sonu olanları) çalıştırıyorsanız, F5 yama yayınlamıyor. Tam bir sürüm yükseltmesi yapmalısınız – tartışma yok.

Şu An Güncelleme Yapamıyorsanız?

Kodu dondurma döneminde olup ta hemen güncellemeyi risky kılan eski bağlılıklarla uğraşıyorsanız, geçici bir çare var:

Rewrite direktiflerinizdeki isimsiz PCRE captures'ları adlandırılmış captures'larla değiştirin. $1, $2 yerine $capture_group_name gibi adlandırılmış gruplar kullanın. Temel açığı düzeltmeyecek ama buffer overflow'u tetikleyen kod yolunu engelleyecek.

Dönüştürme örneği:

# Riskli desen
rewrite ^/user/([0-9]+)$ /profile?id=$1 last;

# Daha güvenli desen (geçici)
rewrite ^/user/(?<id>[0-9]+)$ /profile?id=$id last;

Bu bir yamalama, gerçek bir çözüm değil. Güncellemeyi yapabilir yapabilmez öncelik haline getirin.

Bu Sürümdeki Diğer Üç Açık

NGINX Rift manşetleri çalarken, F5 üç tane daha açığı kapattı:

  • CVE-2026-42946 (CVSS 8.3 Yüksek): SCGI ve uWSGI modüllerinde aşırı bellek tahsisi – belirli proxy yapılandırmalarında DoS'a yol açabilir.
  • CVE-2026-40701 (CVSS 6.3 Orta): SSL modülünde use-after-free, ssl_verify_client ve ssl_ocsp ayarlarının tetiklediği.
  • CVE-2026-42934 (CVSS 4.8 Orta): Charset modülünde sınırlar dışı okuma.

Hiçbiri NGINX Rift kadar acil değil ama bir sonraki bakım pencerenizde ele almaya değer.

Bu Bize Altyapı Güvenliği Hakkında Neler Öğretiyor?

Bu açık, hoş olmayan birkaç gerçeği hatırlatmalı:

  1. Popülarite incelemeyi getirir, ama muafiyet vermez. Nginx her yerde ama bu hata on sekiz yıl boyunca gözlemci kalmaya başardı.

  2. Yaş güvenlik özelliği değildir. Daha eski kod, daha çok sınanan kod anlamına gelmez – sorunları biriktirebilecek daha fazla zamanı olan kodu ifade eder.

  3. En yavaş yamanız kadar güvenlisiniz. Dağıtılmış altyapıda, tek bir güncellenmemiş Nginx örneği tüm mimarinizi tehlikeye atabilir.

  4. İzleme önemlidir. ASLR açık olsa bile, güvenilir DoS bileşeni saldırganların hemen hizmetinizi kesebileceği anlamına gelir.

Sonuç

Nginx çalıştırıyor olsanız – Open Source ya da Plus olarak – bu haftanın yamaları rutin bakım yerine bir güvenlik acil durumu olarak değerlendirin. Aşırı yaş, basit saldırı vektörü ve kritik önem kombinasyonu, NGINX Rift'i neredeyse her şeyin üzerine almayı hak ediyor.

Bu hafta güncelleyin. Hazırlamada önce test edin elbette, ama üretimde gecikmeyin. Güvenliksiz kalmanın riski, Nginx gibi olgun ve stabil bir altyapı parçasını güncellemenin riskinden çok daha fazladır.

Bir süredir Nginx yapılandırmalarınızı gözden geçirmediyseniz? Şimdi rewrite kurallarınızı inceleme, güvenlik duruşunuzu güçlendirme ve altyapınızda yanlışlıkla eski sürümleri çalıştırmadığınızdan emin olma zamanı.

Güvende kalın.

Read in other languages:

RU BG EL CS UZ SV FI RO PT PL NB NL HU IT FR ES DE DA ZH-HANS EN