Veri: 1 Kasım 2026 Son 7 günde 324 yeni kayıt, 19 kritik
Açık türleri

Dosya yükleme açıkları, ortanca puanı 8,8 olan WordPress kayıtları

5 dk okuma · Yayın 23 Ekim 2026 · Son kontrol 20 Ekim 2026 · 3 kaynak · Ücretli Tema ekibi

İçindekiler
  1. Ne oluyor
  2. Nerede çıkıyor
  3. Kim kullanabiliyor
  4. Dağınık bir tür
  5. Yükleme klasöründe betik çalıştırmayı kapatmak
  6. Bir kayıt çıktığında
  7. Takip

Ekim 2025 ile Ekim 2026 arasındaki 6.630 WordPress kaydının yalnız 193’ü kısıtsız dosya yükleme türünde. Sayı küçük, ama ağırlığı büyük: bu kayıtların ortanca CVSS puanı 8,8, tüm WordPress kayıtlarında ise 6,4. 84 tanesi kritik, 96 tanesi yüksek sınıfta; orta puanlı olanlar yalnız 13. Yarıdan fazlası sitede hesabı olmayan biri tarafından kullanılabiliyor. Bir sitenin tamamen ele geçirilmesine giden en kısa yollardan biri olduğu için bu türü ayrı bir yazıda ele alıyoruz.

Ne oluyor

MITRE’nin zayıflık listesinde karşılığı CWE-434: ürün, tehlikeli türdeki dosyaların yüklenmesine izin veriyor ve bu dosyalar kendi ortamında otomatik olarak işleniyor. WordPress açısından tehlikeli tür genellikle PHP dosyasıdır.

OWASP bu riski iki adımla anlatır. Saldırıların çoğunda ilk adım, hedef sisteme bir kod parçası yerleştirmektir; ikinci adım o kodu çalıştırmanın yolunu bulmaktır. Dosya yükleme açığı ilk adımı bedavaya verir. WordPress’in yükleme klasörü web sunucusu üzerinden erişilebilir olduğu için, bir PHP dosyası oraya yerleşebilirse ikinci adım da çoğu zaman tarayıcıdan o dosyanın adresini açmaktan ibarettir.

MITRE’nin açıklaması bir ayrıntıya dikkat çeker: Unix sistemlerinde programların çalışması için normalde dosyada çalıştırma izni olması gerekir, ama PHP dosyaları işletim sistemi doğrudan çağırmadan web sunucusu tarafından çalıştırılır. Yani dosya izinlerini “çalıştırılamaz” yapmak PHP için tek başına yeterli değildir.

Nerede çıkıyor

Kayıtların açıklamalarında sık geçen yerler arasında şunlar var: form eklentilerinin dosya alanları, ön yüzden profil fotoğrafı ya da belge yüklemeye izin veren üyelik eklentileri, içe aktarma (import) işlevleri, dosya yöneticisi eklentileri ve bazı temaların demo içerik yükleyicileri. Son 12 ayın dosya yükleme kayıtlarından beşi tema kaydı, gerisi eklenti.

Eklenti yüklenen dosyanın türünü yalnız uzantıya ya da tarayıcının gönderdiği içerik türü (Content-Type) başlığına bakarak denetliyorsa, OWASP’ın listelediği atlatma yöntemlerine açık kalır. OWASP örnekler arasında çift uzantıları, sunucunun tanıdığı ama yasak listesinde unutulmuş PHP uzantılarını ve sunucu yapılandırmasındaki ayrıştırma hatalarını sayar. Bu yüzden OWASP yasaklı uzantılar listesi yerine izin verilen uzantılar listesi kullanmayı önerir.

Kim kullanabiliyor

193 kaydın 108’i hiçbir hesap gerektirmiyor. Bu, herkese açık bir formun dosya alanı ya da giriş kontrolü olmayan bir yükleme işlevi demek. 35 kayıt abone düzeyinde, yaklaşık 20 kayıt yazar düzeyinde bir hesap istiyor. Yönetici gerektirenler azınlıkta.

CISA’nın kayıtlara eklediği değerlendirmede bu kayıtların yaklaşık yarısı “otomatikleştirilebilir” olarak işaretli: saldırganın keşiften istismara kadar adımları güvenilir biçimde otomatik yapabildiği anlamına gelir. Bu işaret, açığın toplu tarama araçlarıyla binlerce sitede aynı anda denenebileceğini söyler.

Çekirdekte de bir örnek var: Ağustos 2026’da WordPress’in kendisi için, yazar düzeyindeki bir kullanıcının belirli bir dosya türünü yükleyerek sunucuda kod çalıştırmasına yol açan bir kayıt yayımlandı. Kayıt, sunucuda belirli görüntü işleme kitaplıklarının bulunmasını ön koşul olarak sayıyor; düzeltme 7.0.4 sürümünde geldi. WordPress çekirdeği sayfasında listelenmiş durumda.

Dağınık bir tür

Dosya yükleme kayıtları birkaç büyük eklentide toplanmıyor. 193 kayıt 176 farklı ürüne dağılıyor; yani bu türde kayıt çıkan ürünlerin neredeyse hepsinde yalnız bir kayıt var. Bu, “popüler eklentileri takip edersem yeter” yaklaşımının bu türde işe yaramadığını gösteriyor. Az bilinen bir iletişim formu ya da destek bileti eklentisi, en az bir sayfa oluşturucu kadar risk taşıyabilir.

Zaman içinde de bir yoğunlaşma var. Şubat–Haziran 2026 arasında ayda 6–11 kayıt çıkarken, Temmuz’dan bu yana her ay 20’nin üzerinde kayıt yayımlandı. Ekim’in ortasındaki iki günde, üç farklı eklenti için giriş gerektirmeyen ve 9,8 puan alan üç dosya yükleme kaydı birden geldi; bunlardan yalnız birinde düzeltilmiş sürüm numarası yazıyordu. Bu kayıtların hepsi CISA değerlendirmesinde “otomatikleştirilebilir” olarak işaretli.

Yükleme klasöründe betik çalıştırmayı kapatmak

OWASP’ın önleme listesindeki maddelerden biri, site sahibinin de uygulayabileceği bir adım: yükleme yapılan klasörün çalıştırma izni olmamalı ve bu klasördeki betik işleyicileri kaldırılmalı. MITRE ise daha ileri bir öneri yapar: yüklenen dosyaları web belge kökünün tamamen dışında saklamak.

WordPress’te ortam dosyaları wp-content/uploads altında durur ve web sunucusunun bu klasöre yazabilmesi gerekir. WordPress sıkılaştırma belgesi dosya izinlerini olabildiğince kısmayı, yalnız yazma gereken yerlerde gevşetmeyi önerir; wp-content klasörünün hem sizin hesabınız hem de web sunucusu tarafından yazılabilir olmasının amaçlandığını, eklenti klasörünün ise yalnız sizin hesabınız tarafından yazılabilir olması gerektiğini söyler.

Yükleme klasöründe PHP çalışmasını kapatmak, sunucunuzun türüne göre farklı yapılır: Apache’de klasör düzeyinde bir yapılandırma dosyasıyla, Nginx’te sunucu yapılandırmasındaki bir konum kuralıyla. Paylaşımlı barındırmada bu ayar çoğu zaman panelde ya da barındırma firmasının destek ekibi aracılığıyla yapılır. Ayarı yaptıktan sonra sitenizdeki tüm özelliklerin çalıştığını kontrol edin; bu klasörde kendi betiğini çalıştırmaya çalışan bir eklenti varsa ayar onu bozabilir.

Bu adım açığı kapatmaz, ama etkisini çoğu durumda sınırlar: dosya yüklense bile sunucu onu kod olarak çalıştırmaz. Saldırgan başka bir açıkla, örneğin bir dosya dahil etme (LFI) açığıyla, yüklenen dosyayı çalıştırmaya çalışabilir. Bu yüzden asıl çözüm yine düzeltilmiş sürümdür.

Bir kayıt çıktığında

  1. Güncelleyin ya da kapatın. Giriş gerektirmeyen bir dosya yükleme kaydı varsa ve düzeltme henüz yoksa, eklentiyi devre dışı bırakın. Bu türde beklemenin bedeli yüksek.
  2. Yükleme klasörünü tarayın. Güncellemeden sonra wp-content/uploads altında .php uzantılı ya da adı tuhaf dosyalar olup olmadığına bakın. Ortam kitaplığı yalnız resim, belge ve video içermeli. Barındırma panelinizin dosya yöneticisi ya da FTP yeterli.
  3. Yönetici hesaplarını kontrol edin. Kod çalıştırabilen bir saldırgan çoğu zaman kendine bir yönetici hesabı açar. Kullanıcılar sayfasını role göre süzün.
  4. Panelden dosya düzenlemeyi kapatın. Sıkılaştırma belgesindeki DISALLOW_FILE_EDIT sabiti, panelden tema ve eklenti dosyası düzenlemeyi kapatır.
  5. Yedeğinizi siteden ayrı tutun. Belge, düzenli yedeği ve kurtarma planını güvenliğin parçası sayar. Sunucu ele geçirilirse aynı sunucudaki yedek de güvenilmez hâle gelir.

Kişisel veri barındıran bir sitede, örneğin form girişleri ya da müşteri bilgileri tutan bir sitede, ele geçirme şüphesi doğduğunda yasal yükümlülükler de devreye girebilir; bunu sitemizdeki ayrı bir yazıda, KVKK’nın veri ihlali bildirim kurallarıyla birlikte ele alıyoruz.

Takip

Dosya yükleme kayıtlarının tamamı, en çok kayıt çıkan ürünler ve ay ay dağılım dosya yükleme sayfasında. Bu türün yakın akrabası olan dosya dahil etme kayıtları özellikle temalarda sık görülüyor. Kritik puanlı kayıtların güncel listesi kritik açıklar sayfasında.

Kaynaklar

  1. MITRE, CWE-434 Unrestricted Upload of File with Dangerous Type
  2. OWASP, Unrestricted File Upload
  3. WordPress Developer Resources, Hardening WordPress (File Permissions)

Bu yazıyı Ücretli Tema ekibi hazırladı. Yazıda satış ortaklığı bağlantısı yoktur. Bir hata gördüyseniz bize yazın.

Devamını okuyun