Contact Form 7'de kritik dosya yükleme açığı: kimlik doğrulamasız yükleme bazı sunucularda kod çalıştırmaya varıyor
WordPress'in en yaygın form eklentisi Contact Form 7'nin 6.2.4 öncesi sürümlerindeki CVE-2026-114432 (CVSS 9.8), dosya alanı olan formlar üzerinden kimlik doğrulamasız dosya yüklenmesine izin veriyor. Varsayılan Debian/Ubuntu Apache yapılandırmasında bu, uzaktan kod çalıştırmaya dönüşebiliyor; düzeltme 6.2.4'te.
CVE-2026-114432WordPress sitelerinde en çok kullanılan form eklentilerinden Contact Form 7'de kritik bir açık, 8 Kasım'da CVE-2026-114432 kimliğiyle yayımlandı. WPScan kaydına göre 6.2.4 öncesi sürümler, formdaki dosya alanından gelen yüklemelerin türünü ve uzantısını doğrulamıyor. Ayrıca geçici dosya temizleme mantığındaki bir hata, yüklenen dosyanın diskte kalmasına yol açıyor. Sonuç: kimlik doğrulaması olmayan biri siteye istediği dosyayı bırakabiliyor. Puan CVSS v3.1'e göre 9.8.
Etki sunucu yapılandırmasına bağlı. Kayda göre dizin listelemesi açık ve .phar uzantısını PHP işleyicisine bağlayan varsayılan Debian/Ubuntu Apache kurulumlarında dosya bulunup çalıştırılabiliyor; bu da uzaktan kod çalıştırma (RCE) demek. nginx ya da .htaccess korumalı Apache'de etki, uploads dizinine keyfi dosya yazılmasıyla sınırlı kalıyor. Ancak bu dosya sitenin kendi alan adından HTML veya SVG gibi aktif içerik olarak sunulabiliyor. Bu saat itibarıyla açık KEV'de değil ve doğrulanmış bir istismar raporu yok.
Etkilenen ve düzeltilmiş sürümler
| Ürün | Etkilenen | Düzeltilmiş sürüm |
|---|---|---|
| Contact Form 7 (WordPress eklentisi) | 6.2.4 öncesi tüm sürümler | 6.2.4 |
Beni etkiliyor mu?
Risk, sitenizdeki formlardan en az birinde dosya yükleme alanı ([file] etiketi) varsa doğar. Önce eklenti sürümünü kontrol edin; sunucuda eklentinin readme dosyasından okuyabilirsiniz:
grep -i "Stable tag" wp-content/plugins/contact-form-7/readme.txtArayüzden: Yönetim paneli › Eklentiler › Contact Form 7 satırındaki sürüm numarası. Ardından İletişim › İletişim Formları altında formları açıp dosya alanı olup olmadığına bakın. Apache kullanıyorsanız dizin listelemesinin ve .phar eşlemesinin açık olup olmadığını yapılandırma dosyalarında okuyarak kontrol edin:
grep -Rni "Indexes\|phar" /etc/apache2/Ne yapılmalı?
- Contact Form 7'yi 6.2.4 ya da üstüne güncelleyin. Otomatik eklenti güncellemesi kapalıysa elle yapın; dosya alanı kullanan formlar varsa bu işi bekletmeyin.
- Hemen güncelleyemiyorsanız geçici önlem olarak dosya alanı içeren formları yayından kaldırın ya da o alanı formdan çıkarın. Web sunucusunda uploads dizininde dizin listelemesini kapatmak ve bu dizinde PHP/PHAR çalıştırılmasını engellemek riski azaltır.
wp-content/uploads/altında, özellikle Contact Form 7'nin geçici yükleme klasöründe, beklenmeyen.phar,.php,.htmlya da.svgdosyalarını arayın. Web sunucusu günlüklerinde form gönderim uç noktasına gelen olağan dışı POST isteklerini inceleyin.- Şüpheli dosya bulursanız onu silmeden önce kanıt olarak saklayın, sitenin olay müdahale sürecini başlatın ve yönetici parolalarını değiştirin.
- Çok sayıda site yöneten ajans ve barındırma firmaları, güncellemeyi toplu değişiklik planına alıp sürüm envanterini doğrulamalı.