WordPress'in kendisi güvenlidir; saldırıların neredeyse tamamı güncellenmemiş eklentiler ve zayıf parolalar üzerinden gerçekleşir. Aşağıdaki on adım riskin büyük bölümünü ortadan kaldırır.
1. Güncellemeleri erteleyin, ama geciktirmeyin
Çekirdek güvenlik güncellemelerini otomatik açın. Eklenti güncellemelerini haftada bir, yedek alarak toplu yapın. Aylardır güncellenmemiş eklenti, hacklenmiş sitelerin bir numaralı ortak özelliğidir.
2. "admin" kullanıcısını kaldırın
Saldırı botları önce admin kullanıcı adını dener. Yeni bir yönetici hesabı açın, eski hesabın içeriklerini yeni hesaba devredip admin kullanıcısını silin.
3. Güçlü parola + iki adımlı doğrulama
Yönetici hesapları için parola yöneticisiyle üretilmiş 16+ karakter parola kullanın. İki adımlı doğrulamayı (2FA) mutlaka açın; tek başına bu adım, çalınmış parolayla girişlerin neredeyse tamamını engeller.
4. Giriş denemelerini sınırlayın
Limit Login Attempts benzeri bir eklentiyle 5 başarısız denemeden sonra IP'yi geçici engelleyin. Ek olarak giriş adresini /wp-admin yerine özel bir yola taşımak otomatik botların çoğunu eler.
Giriş adresini değiştirmek tek başına bir güvenlik önlemi değil, gürültü azaltıcıdır. 2FA ve güçlü parolanın yerini tutmaz.
5. XML-RPC ve REST API'yi denetleyin
Jetpack veya mobil uygulama kullanmıyorsanız xmlrpc.php erişimini kapatın; brute-force ve pingback saldırılarında sık kullanılır. .htaccess içine:
<Files xmlrpc.php>
Require all denied
</Files>
6. Dosya izinlerini düzeltin
- Klasörler: 755
- Dosyalar: 644
wp-config.php: 600 veya 640
777 izni verilmiş hiçbir klasör kalmasın. İzin kontrolü için FTP rehberimizdeki chmod bölümüne bakabilirsiniz.
7. Dosya düzenleyiciyi kapatın
Yönetici hesabı ele geçirilirse panelden tema/eklenti dosyalarına kod eklenebilir. wp-config.php içine ekleyin:
define('DISALLOW_FILE_EDIT', true);
8. SSL zorunlu olsun
Tüm trafiği HTTPS'e yönlendirin; aksi hâlde giriş bilgileri açık ağda okunabilir. Sertifika ve yönlendirme adımları için SSL kurulum yazımızı inceleyin.
9. Yedeklemeyi otomatikleştirin
Sunucu tarafındaki günlük yedeklerin yanında kendi yedeğinizi de alın ve sunucu dışında saklayın. Hacklenme durumunda temiz bir sürüme dönebilmek en hızlı çözümdür. Bkz. cPanel yedekleme rehberi.
10. Kullanıcı rollerini sınırlayın
Herkese yönetici yetkisi vermeyin. İçerik girenler için "Yazar", müşteri için "Abone" rolü yeterlidir. Ayrılan personelin hesabını aynı gün kapatın.
Site hacklendiyse ne yapmalı?
- Sitenizi kapatın (bakım moduna alın) ve parolaları değiştirin: WordPress, cPanel, FTP, veritabanı.
- Yeni eklenen ya da son günlerde değişmiş dosyaları arayın;
wp-content/uploadsiçindeki.phpdosyaları neredeyse her zaman zararlıdır. - Temiz bir yedeğe dönün. Yedek yoksa çekirdek dosyaları WordPress'in resmi sürümüyle değiştirin, eklentileri silip yeniden kurun.
- Veritabanında
wp_userstablosuna eklenmiş bilinmeyen yönetici hesaplarını silin. - Tüm bileşenleri güncelleyin, ardından Google Search Console üzerinden yeniden inceleme talep edin.
Zararlı yazılım temizliği zaman alan ve dikkat isteyen bir iştir. Şüpheye düştüğünüzde destek ekibimize yazın; sunucu tarafındaki taramayı biz yapıp size etkilenen dosya listesini çıkarırız.
