Kısaca: WordPress güvenliği, tek bir eklentiyle çözülen bir konu değil, düzenli uygulanan küçük adımların toplamıdır. Güncel yazılım, güçlü parola ve iki adımlı doğrulama, sınırlı yönetici hesabı, doğru dosya izinleri, SSL ve geri yüklemesi test edilmiş yedek, saldırıların büyük bölümünü etkisiz bırakır. Bu yazıdaki 10 adımlık kontrol listesini sırayla uygulayabilirsiniz.
WordPress çok yaygın kullanıldığı için saldırılar genellikle belirli bir siteye değil, bilinen bir açığı taşıyan tüm sitelere yöneliktir. Otomatik tarama araçları eski eklenti sürümlerini, zayıf parolaları ve açık bırakılmış dosyaları arar. Siteniz küçük olsa bile bu taramaların kapsamındadır.
Saldırıların en sık kullandığı giriş noktaları şunlardır:

Güvenlik yamaları güncellemelerle gelir. WordPress küçük sürüm güncellemelerini varsayılan olarak kendiliğinden kurar; eklenti ve temalar için otomatik güncellemeyi yönetim panelindeki Eklentiler ekranından tek tek açabilirsiniz. Büyük sürüm geçişlerinden önce yedek alın.
Devre dışı bırakılmış bir eklentinin dosyaları sunucuda durmaya devam eder ve açığı varsa kullanılabilir. Kullanmadığınız eklentileri devre dışı bırakmakla yetinmeyin, silin. Etkin temanız ve bir adet varsayılan tema dışındaki temaları da kaldırın.
Her hesap için benzersiz ve uzun bir parola belirleyin, parolaları bir parola yöneticisinde saklayın. Yönetici ve editör hesaplarında iki adımlı doğrulamayı (2FA) açın; WordPress'te bu özellik bir eklentiyle eklenir. Parola ele geçse bile ikinci adım girişi engeller.
Yönetici rolünü yalnızca gerçekten ihtiyacı olan kişilere verin. İçerik giren kişiler için Editör veya Yazar rolü yeterlidir. Kullanıcı adı olarak "admin" kullanmayın, ayrılan çalışanların ve eski ajansların hesaplarını kapatın.
WordPress varsayılan olarak hatalı giriş denemelerini sınırlamaz. Deneme sayısını kısıtlayan bir eklenti, parola tahmin saldırılarını yavaşlatır. Aynı saldırılar XML-RPC üzerinden de yapılabildiği için, kullanmıyorsanız bu arayüzü kapatın. Adımları WordPress'te XML-RPC nedir rehberimizde anlattık.
Giriş bilgileri şifresiz bağlantıda ağ üzerinden okunabilir. Sitenizin tamamını HTTPS üzerinden yayınlayın ve HTTP isteklerini HTTPS'e yönlendirin. Temel bilgiler için SSL sertifikası nedir makalesine, geçiş adımları için HTTP'den HTTPS'e geçiş rehberine bakabilirsiniz.
Genel kural olarak klasörler 755, dosyalar 644 izinle çalışır. Veritabanı parolanızı içeren wp-config.php için daha sıkı bir izin (örneğin 600) kullanın. Hiçbir klasöre 777 izni vermeyin; bir eklenti bunu istiyorsa sorun izinde değil, dosya sahipliğindedir.
Yönetim panelindeki tema ve eklenti düzenleyicisi, hesabı ele geçiren kişinin doğrudan kod yazmasına izin verir. wp-config.php dosyasına şu satırı ekleyerek düzenleyiciyi kapatabilirsiniz:
define( 'DISALLOW_FILE_EDIT', true );
Ek olarak, yüklenen dosyaların bulunduğu wp-content/uploads klasöründe PHP çalıştırılmasını engellemek, yüklenmiş zararlı bir dosyanın çalışmasını önler. Apache kullanan sunucularda bu klasöre aşağıdaki içerikle bir .htaccess dosyası eklenir:
<FilesMatch "\.php$">
Require all denied
</FilesMatch>
Yedek, diğer tüm önlemler aşıldığında sitenizi geri getiren tek şeydir. Dosyaları ve veritabanını birlikte yedekleyin, yedeğin bir kopyasını sunucu dışında tutun ve yılda birkaç kez geri yüklemeyi deneyin. Ayrıntılar için web sitesi yedekleme stratejisi makalemizi inceleyin.
Desteği sona ermiş PHP sürümleri güvenlik yaması almaz. Sitenizi, tema ve eklentilerinizin uyumlu olduğu güncel bir PHP sürümünde çalıştırın. Sürümü hosting kontrol panelinizden değiştirebilirsiniz; bu adım aynı zamanda hız kazandırır ve ayrıntısı WordPress hız optimizasyonu yazımızda yer alır.
Kapsamlı bir kaynak arıyorsanız WordPress'in resmi güvenlik sıkılaştırma rehberi bu adımların teknik ayrıntılarını içerir.
ÇAP Hosting hosting paketleri ücretsiz SSL sertifikası, PHP 8.x desteği ve CWP kontrol paneli ile gelir; PHP sürümünü, dosya izinlerini ve SSL'i panelden yönetebilirsiniz. Yeni bir site kuracaksanız WordPress kurulum rehberimizle başlayabilir, bu listedeki bir adımda takılırsanız bizimle iletişime geçebilirsiniz.
WordPress çekirdeği düzenli olarak güvenlik güncellemesi alır. Sorunların çoğu çekirdekten değil, güncellenmemiş eklenti ve temalardan, zayıf parolalardan ve kaynağı belirsiz yazılımlardan doğar. Güncel tutulan ve doğru yapılandırılan bir WordPress sitesi güvenle kullanılabilir.
Şart değildir ama işinizi kolaylaştırır. Giriş denemesi sınırlama ve iki adımlı doğrulama gibi özellikler WordPress'te yerleşik olmadığı için eklentiyle eklenir. Eklenti, güncelleme, parola ve yedek disiplininin yerini tutmaz; bunları tamamlar.
Tanımadığınız yönetici hesapları, sizin eklemediğiniz içerik veya bağlantılar, ziyaretçilerin başka sitelere yönlendirilmesi, arama sonuçlarında yabancı dilde başlıklar ve açıklanamayan kaynak kullanımı artışı yaygın belirtilerdir. Bu durumda parolaları değiştirin ve temiz bir yedeğe dönün.
Çoğu site için otomatik güncellemenin faydası riskinden büyüktür, çünkü açıklar yayımlandıktan kısa süre sonra taranmaya başlar. Düzenli yedek alıyorsanız, hatalı bir güncellemeyi geri almak mümkündür. Kritik e-ticaret sitelerinde güncellemeyi önce bir test ortamında denemek daha güvenlidir.
SSL, ziyaretçi ile sunucu arasındaki veriyi şifreler ve giriş bilgilerinin ağ üzerinden okunmasını önler. Eklenti açıklarını veya zayıf parolaları engellemez. Bu nedenle SSL gereklidir ama tek başına yeterli değildir.