K000161019: NGINX CVE-2026-42945
14 Mayıs 2026 tarihinde yayınlandı

K000161019: NGINX ngx_http_rewrite_module güvenlik açığı CVE-2026-42945, uygulamaların, API'lerin veya oturum açma akışlarının önünde yeniden yazma kuralları istek işleme yapıyorsa, her yerde acil inceleme gerektirir. Yığınınız karmaşık `rewrite`, `if`, `return` veya URI normalleştirme davranışına bağlıysa, önce kontrol edilmesi gereken yer burasıdır. İyi haber şu ki sorun genellikle net bir denetim, geçici bir kural kümesi temizliği ve kontrollü bir NGINX güncellemesi ile yönetilebilir.
Çoğu operatör için pratik soru, NGINX'in mevcut olup olmadığı değildir. Soru, `ngx_http_rewrite_module`'ün hazırlanmış isteklerin amaçlanan yönlendirme veya güvenlik mantığını atlamasına izin verecek şekilde kullanılıp kullanılmadığıdır. Bu ayrım önemlidir. Minimal yapılandırmalı sade bir statik site ile eski yeniden yazma zincirlerine ve sabaha karşı 2'de yazılmış birkaç kahramanca regex'e sahip çok kiracılı bir uygulama ağ geçidi arasında risk profili açısından büyük fark vardır.
Resmi bağlantı: https://my.f5.com/manage/s/article/K000161019
K000161019: NGINX ngx_http_rewrite_module güvenlik açığı CVE-2026-42945 ne anlama geliyor
Bu tavsiye, NGINX yeniden yazma modülünün belirli istek kalıplarını işlemesindeki bir kusura işaret ediyor. Tam istismar yolları etkilenen derleme ve yapılandırmaya bağlı olsa da operasyonel endişe tutarlıdır: bozuk biçimli veya dikkatle şekillendirilmiş istekler, yöneticinin niyetiyle eşleşmeyen yeniden yazma davranışını tetikleyebilir.
Gerçek ortamlarda bu, erişim kontrollerinin yanlış aşamada uygulanması, yönlendirmelerin beklenmeyen bir URI'ye göre değerlendirilmesi veya arka uç yönlendirme kararlarının asla güvenilmemesi gereken yeniden yazılmış değerlerden verilmesi anlamına gelebilir. Günlükler artık aynı hikâyeyi anlatıyor - bu, NGINX'in genel olarak bozuk olmasından çok kural işlemedeki tehlikeli uç durumlarla ilgilidir.
Bu yüzden etkilenen yüzey yapılandırmaya duyarlıdır. Aynı NGINX sürümünü çalıştıran iki sunucunun maruziyeti çok farklı olabilir. Bunlardan biri yalnızca basit `return 301` yönlendirmeleri kullanıyor ve diğeri kimlik doğrulama kontrollerinden önce regex yeniden yazmalarını zincirliyorsa, ikincisi çok daha fazla ilgiyi hak eder.
Üretimde olası etki
En gerçekçi etki, istek işlemenin atlatılmasıdır. Sunucu bloğunuzun nasıl oluşturulduğuna bağlı olarak, bir saldırganın korunduğunu varsaydığınız bir konuma ulaşması, bir isteğin uygulamaya ulaşmadan önce nasıl normalleştirildiğini değiştirmesi veya güvenlik varsayımlarınızı bozan yönlendirme ve rota sonuçları oluşturması mümkün olabilir.
Ajanslar ve SaaS ekipleri için bu, NGINX'in yalnızca bir web sunucusu değil, bir ilke geçidi olarak da hareket ettiği yerlerde en önemlidir. Yönetim panellerinin, faturalama portallarının, API uç noktalarının, dahili panoların veya yükleme işleyicilerinin önünde duruyorsa, yeniden yazma davranışı isteseniz de istemeseniz de güvenlik modelinizin bir parçası haline gelir.
Burada ödünleşimler vardır. Her savunmasız yapılandırma doğrudan ele geçirilme ile sonuçlanmaz. Bazı durumlarda risk, kötü yönlendirmeler veya yol karışıklığı ile sınırlıdır. Diğerlerinde, özellikle yukarı akış uygulamaları başlıklara, yollara veya yalnızca dahili konumlara güveniyorsa, bu zayıflık daha kötü bir şey için basamak taşı haline gelebilir.
Öncelikle dikkat edilmesi gereken sistemler
Özel NGINX yapılandırmaları, devralınmış parçacıklar veya eski uygulama şablonları kullanan ana bilgisayarlarla başlayın. Çok hafif yapılandırmaya sahip varsayılan bir paket kurulumu, genellikle üç yönetici, iki dağıtım sistemi ve güçlü görüşlere sahip bir eklenti ekosistemi tarafından değiştirilmiş bir sunucudan daha kolay incelenir ve daha düşük risklidir.
Şu ortamları önceliklendirin:
- Kimlik doğrulama akışlarının önündeki ters proxy'ler
- Çok sayıda yeniden yazma kuralına sahip WordPress, Magento, Laravel veya özel PHP yığınları
- Yol tabanlı yukarı akış yönlendirmesine sahip API ağ geçitleri
- Çok siteli veya çok kiracılı barındırma düğümleri
- Daha güçlü kimlik doğrulama katmanları yerine URI kalıbıyla kısıtlanan yönetim panelleri
- İç içe `if`, regex yakalamaları veya dahili yönlendirmeler kullanan eski yapılandırmalar
Yönetilen altyapı çalıştırıyorsanız, bu aynı zamanda paket kaynağınızın üretici tarafından mı, dağıtım tarafından mı korunduğunu yoksa kaynaktan özel olarak mı derlendiğini doğrulama zamanıdır. Yama zamanlaması farklı olabilir ve bu da yanıt planlamasını etkiler.
Maruz kalmış olabileceğinizi nasıl kontrol edersiniz
Önce, yeniden yazma modülünün yapılandırmalarınızda etkin olarak kullanılıp kullanılmadığını doğrulayın. Çoğu standart derlemede `ngx_http_rewrite_module` varsayılan olarak kullanılabilir, ancak asıl maruziyet nasıl kullanıldığından kaynaklanır. Etkin NGINX yapılandırmasında `rewrite`, `if`, `return`, `set` ve regex ağırlıklı `location` bloklarını arayın.
Ardından güvenlik kararlarının yeniden yazılmış URI'lere nerede bağlı olduğunu inceleyin. Yaygın bir sorun, korumalı bir yolun yeniden yazmadan önce kontrol edilmesi, arka ucun ise yeniden yazmadan sonra farklı bir etkili yol almasıdır. Bir diğeri, güvenilmeyen istek değerlerinden oluşturulan yönlendirme mantığıdır; bu da istek normalleştirmesi beklenmedik davrandığında atlatma veya karışıklık yaratabilir.
Şu kalıpları dikkatle inceleyin:
- `location` blokları içindeki `if` ifadeleri
- `last` veya `break` ile birden çok sıralı yeniden yazma
- Proxy'leme veya erişim mantığında yeniden kullanılan regex yakalamaları
- Erişimi yalnızca URI biçimine göre ayıran kurallar
- Harici istek varyantlarından erişilemez olduğu varsayılan dahili konumlar
Bundan sonra, mümkünse bir hazırlık kopyasında kasıtlı olarak sıra dışı isteklerle test edin. Kodlanmış eğik çizgiler, yinelenen yol ayırıcıları, karışık büyük-küçük harfli yollar, traversal benzeri girdi ve uç durum sorgu dizeleri denenmeye değerdir. Her birinin çalışacağı için değil, yeniden yazma kusurları kendilerini çoğu zaman olağandışı ama geçerli HTTP isteklerinde gösterdiği için.
Yama beklemek zorundaysa acil azaltma
Yama uygulamak doğru düzeltmedir, ancak operasyon gerçek hayattır ve her ekip önümüzdeki on dakika içinde güncelleme yapamaz. Kısa süreli bir bekleme düzenine ihtiyacınız varsa, kırılgan yeniden yazma mantığına bağımlılığı azaltın.
En güvenli geçici adım sadeleştirmektir. Özellikle kimlik doğrulama sınırları, yönetim alanları ve yukarı akış yönlendirmesi için gerekli olmayan yeniden yazma zincirlerini kaldırın veya devre dışı bırakın. Mümkün olan yerlerde akıllıca regex yeniden yazmalarını açık `location` bloklarıyla değiştirin. Açık yapılandırma daha az gösterişlidir, ama daha rahat uyur.
Erişim kontrolü URI kalıp eşleştirmesine bağlıysa, bunu başka bir katmanda güçlendirin. Uygulama kimlik doğrulaması, yönetici yolları için IP kısıtlamaları, WAF kuralları ve daha sıkı yukarı akış doğrulaması etki alanını daraltabilir. Bu en güzel DNS durumu değil ama kontrol altında sözü burada da geçerlidir - geçici kontroller net ve geri alınabilir oldukları sürece kabul edilebilir.
Ayrıca inceleme penceresi sırasında günlüklemeyi artırın. İstek URI'sini, mevcut olduğunda normalleştirilmiş URI davranışını, yanıt kodlarını, yukarı akış hedeflerini ve şüpheli yönlendirme kalıplarını yakalayın. Sunucuyu bir depolama ısıtıcısına çevirmeden kötüye kullanım girişimlerini fark edecek kadar görünürlük istersiniz.
Gereksiz drama olmadan yama stratejisi
Düzeltilmiş bir NGINX sürümü veya üretici paketi mevcut olduğunda, normal kontrollü bir sırayla güncelleyin. Önce paketin kökenini kontrol edin, ardından yeniden yazma ile ilgili düzeltmeler ve uyumluluk notları için değişiklik günlüğünü okuyun. NGINX'i kaynaktan derliyorsanız, yerel modüllerin veya yamaların derleme yolunu etkileyip etkilemediğini doğrulayın.
Hazırlık ortamında gerçekten önemli olan yapılandırmaları test edin: oturum açma yönlendirmeleri, uygulama ön denetleyici yeniden yazmaları, yönetici yolu işleme, medya rotaları ve API uç noktaları. Doğrulamayı yalnızca `nginx -t` ile sınırlamayın. Sözdizimi mükemmel olabilirken davranış hâlâ yanlış olabilir.
Yüksek trafikli ortamlar için, büyük ikili paketleme değişiklikleri söz konusu değilse aşamalı bir yeniden yükleme genellikle yeterlidir. Yine de dağıtımdan sonra en az bir trafik döngüsü boyunca hata oranlarını, yönlendirme döngülerini, olağandışı 404 kalıplarını ve arka uç uyumsuzluğu sorunlarını izleyin. Bazen güvenlik düzeltmesi kolaydır ve sizi 2019'dan kalma bozuk eski yeniden yazma ısırır.
Temiz bir yeniden yazma incelemesi nasıl görünür
İyi bir sonuç yalnızca "güncellenmiş paket kuruldu" değildir. İyi bir sonuç, güvenlik kontrollerinizin artık yeniden yazmanın yan etkilerine bağlı olmadığını bilmektir. Daha güçlü kontroller mevcut olduğunda, yeniden yazmaları ilke uygulaması için değil yönlendirme kolaylığı için kullanın.
Yol biliniyorsa geniş regex'ler yerine tam `location` eşleşmelerini tercih edin. Yönlendirme mantığını deterministik tutun. Doğrulama sıkı değilse yukarı akış kararlarını kullanıcı denetimindeki parçalardan oluşturmaktan kaçının. Bir uygulama çalışmadan önce karmaşık URI ameliyatı gerektiriyorsa, bunu düzgün şekilde belgeleyin ve her sürümün parçası olarak test edin.
Bu aynı zamanda kullanılmayan yapılandırmayı kaldırmak için de yararlı bir andır. Birçok NGINX ortamı önceki çerçevelerden, geçişlerden veya kopyalanmış örneklerden eski parçacıklar taşır. Bu artıklar genellikle uç durum davranışının gizlendiği yerdir.
Müşteriler bundan sonra ne beklemeli
Kendi sunucularınızı yönetiyorsanız, CVE-2026-42945'i yalnızca bir sürüm kontrolü değil, yapılandırma ve yama incelemesi olarak ele alın. Maruziyeti doğrulayın, riskli yeniden yazma yollarını sadeleştirin, düzeltmeler mevcut olduğunda yamalayın ve devreye alma sonrası günlükleri izleyin.
Barındırma ortağınız yığını yönetiyorsa, çok doğrudan sorular sorun. Etkilenen NGINX sürümü belirlendi mi, yeniden yazma ağırlıklı yapılandırmalar incelendi mi, gerekirse geçici azaltmalar uygulandı mı ve güncelleme sonrası davranış üretime benzer rotalarda test edildi mi? İstediğiniz şey, ayrıntılar içeren sakin yanıtlardır.
kodu.cloud'da bu, tam olarak rutin altyapı çalışması gibi ele alınması gereken türden bir sorundur: kapsamı doğrulayın, riski azaltın, dikkatlice yamalayın ve hizmeti yeniden sakin tutun. Güvenlik yanıtı sihir değildir. Bu; disiplinli kontrol, iyi günlükler ve bir yeniden yazma kuralı akıllıca davranmaya başladığında paniğe kapılmayan mühendislerdir.
Bugün yalnızca tek bir eylem için zamanınız varsa, NGINX yeniden yazma mantığının erişimi veya yönlendirmeyi etkilediği her yeri denetleyin. CVE-2026-42945'in bir bülten olmaktan çıkıp gerçek bir üretim sorununa dönüştüğü yer orasıdır.
Andres Saar Müşteri Hizmetleri Mühendisi