WordPress güvenliği, tek bir eklentiyle değil; güncel yazılım, güçlü giriş koruması, sınırlı yetkiler, sıkılaştırılmış sunucu ayarları ve düzenli yedekten oluşan katmanlarla sağlanır. WordPress’in resmi sıkılaştırma belgesi güvenliği riskin sıfırlanması değil azaltılması olarak tanımlar: amaç, saldırganın işini zorlaştırmak ve bir saldırı başarılı olsa bile verebileceği zararı sınırlamaktır.

Bu rehber, site hacklenmeden önce alınması gereken önlemlere odaklanır ve her adımı WordPress.org’un resmi belgelerine dayandırır. Saldırı zaten gerçekleşmişse izlenecek yol farklıdır; temizlik, Google uyarılarının kaldırılması ve erişimlerin yenilenmesi hacklenmiş WordPress sitesini kurtarma sürecinde ele alınır.

WordPress Güvenli mi, Risk Nereden Gelir?

WordPress çekirdeği, kendi güvenlik ekibi tarafından sürekli izlenen ve açıklar bulunduğunda düzeltme sürümleri yayımlanan bir yazılımdır; risklerin büyük kısmı çekirdekten değil, sitenin nasıl yönetildiğinden doğar. WordPress güvenlik sayfasına göre resmi olarak yalnızca en güncel sürüm desteklenir; ekip kritik düzeltmeleri eski sürümlere de iyi niyet gereği taşır, ancak bu bir taahhüt değildir.

Sıkılaştırma belgesi, sitelerin nadiren altyapı yüzünden, çoğunlukla da site sahibinin sorumluluğundaki uygulama katmanı yüzünden ele geçirildiğini vurgular. Hosting firması sunucuyu korur; kurulan tema, eklenti, kullanıcı hesabı ve şifre ise site sahibinin alanıdır. Saldırıların büyük bölümü otomatik botlarla, güncellenmemiş bileşenlerdeki bilinen açıkları ya da tahmin edilebilir şifreleri hedefleyerek yapılır.

Resmi belge, zincirin site yöneticisinin kendi bilgisayarından başladığını da hatırlatır. Tuş kayıtlarını çalan bir zararlı yazılım bulaşmış bilgisayarda, sunucudaki önlemlerin hiçbiri şifreyi korumaz. İşletim sistemi ve tarayıcının güncel tutulması, yönetim paneline açık ve şifresiz kablosuz ağlardan girilmemesi bu yüzden WordPress güvenliğinin ilk halkasıdır.

Güncelleme: En Temel WordPress Güvenlik Önlemi

Güncel olmayan çekirdek, tema ve eklentiler en yaygın giriş kapısıdır, çünkü bir açık kapatıldığında onu istismar etmek için gereken bilgi de kamuya açık hâle gelir. WordPress’in sıkılaştırma belgesi, eski sürümleri güncel tutmanın bu yüzden en temel önlem olduğunu belirtir. WordPress 3.7’den beri çekirdekte otomatik arka plan güncellemeleri vardır; WordPress 5.5 ile her eklenti için otomatik güncelleme ayrı ayrı açılabilir hâle gelmiştir.

Otomatik güncelleme güvenlik açısından hızlıdır, fakat büyük sürüm geçişlerinde bir eklentinin siteyi bozma ihtimali vardır. Bu yüzden özellikle e-ticaret ya da form ağırlıklı sitelerde kontrollü bir sıra izlenir:

  1. Güncellemeden hemen önce dosya ve veritabanı yedeği alınır.
  2. Mümkünse güncelleme önce sitenin bir test kopyasında denenir.
  3. Canlı sitede güncelleme yapılır; güvenlik düzeltmesi içeren küçük sürümler bekletilmez.
  4. Ana sayfa, formlar, sepet ve üye girişi gibi kritik işlevler elle kontrol edilir.
  5. Güncellemesi uzun süredir gelmeyen ya da dizinden kaldırılan bileşenler not edilip yerine seçenek aranır.

Sunucudaki PHP sürümü de bu zincirin parçasıdır. Destek süresi biten bir PHP sürümü güvenlik düzeltmesi almaz ve güncel eklentilerle uyumsuzluk çıkarabilir.

Güçlü Şifre, İki Adımlı Doğrulama ve Passkey

Giriş güvenliği, benzersiz ve uzun şifreler ile bütün yönetici hesaplarında açılan iki adımlı doğrulamaya dayanır. WordPress’in kaba kuvvet saldırıları belgesi, şifre yöneticisi kullanılmasını ve yetkili tüm hesaplarda iki adımlı doğrulamanın açılmasını önerir; belgeye göre bu özellik çekirdekte bulunmaz, bir eklenti ya da kurumsal kimlik sağlayıcı üzerinden eklenir.

Aynı belge, parola yerine cihazdaki parmak izi, yüz tanıma ya da güvenlik anahtarıyla giriş yapmayı sağlayan passkey (WebAuthn) yöntemini kimlik avına dayanıklı bir seçenek olarak anar ve her yöneticiye en az iki doğrulayıcı tanımlanmasını tavsiye eder. Böylece telefonu kaybeden kişi hesabının dışında kalmaz.

Şifre seçiminde kaçınılması gerekenler de sıkılaştırma belgesinde sayılır: kişinin, şirketin ya da sitenin adından türetilen şifreler, herhangi bir dilde sözlükte bulunan kelimeler, kısa şifreler ve yalnızca rakam ya da yalnızca harften oluşan diziler. WordPress, şifre değiştirme ekranında bir güç göstergesi de sunar; zayıf olarak işaretlenen şifre kabul edilmemelidir.

Siteye bağlanan dış uygulamalar için de ayrı bir kural vardır: bu servislere yönetici şifresi verilmez. WordPress 5.6 ile gelen uygulama şifreleri, her entegrasyon için ayrı bir anahtar oluşturmayı ve gerektiğinde ana şifreye dokunmadan o anahtarı iptal etmeyi sağlar.

Sayfa İçeriği

Güvenilir web ajansı: el sıkışan müşteri ve ekip, güven kalkanı illüstrasyonu

Giriş Sayfasına Yönelik Saldırıları Sınırlamak

Giriş denemeleri, mümkünse saldırı WordPress’e ulaşmadan, sunucu ya da güvenlik duvarı düzeyinde sınırlandırılmalıdır. Kaba kuvvet belgesi, uygulama düzeyinde çalışan giriş sınırlama eklentilerinin yoğun bir saldırıda yine PHP ile çalıştığını ve sunucu kaynağı tükettiğini hatırlatır. Kenar ağında ya da sunucuda yapılan hız sınırlaması daha verimlidir. Giriş formuna eklenen bir insan doğrulaması botları yavaşlatır; olağan dışı giriş hareketleri için uyarı kurulması ve saldırgan IP adreslerinin geçici olarak engellenmesi de belgede sayılan adımlardandır.

XML-RPC arayüzü (xmlrpc.php), tek istekte çok sayıda şifre denemesine izin verebildiği için sık hedef alınır; kullanılmıyorsa kapatılması, kullanılıyorsa kısıtlanması önerilir. Giriş sayfasının adresini değiştirmek otomatik tarama gürültüsünü azaltabilir, ancak resmi belgeye göre tek savunma olarak görülmemelidir. Aynı gerekçeyle “admin” ya da “webmaster” gibi kolay tahmin edilen kullanıcı adları da kullanılmaz.

Kullanıcı Rolleri ve En Az Yetki İlkesi

Her kullanıcıya, işini yapmasına yetecek en düşük rol verilmelidir; bir hesap ele geçirildiğinde verilecek zarar o hesabın yetkisiyle sınırlı kalır. WordPress’in varsayılan rolleri ve yetkileri şöyledir:

RolYapabildikleriKime verilir?
YöneticiTüm ayarlar, kullanıcılar, tema ve eklenti yönetimiSiteden teknik olarak sorumlu bir ya da iki kişi
EditörBaşkalarının yazıları dahil tüm içeriği yayımlama ve düzenleme; tek sitelerde filtresiz HTML ekleyebilmeİçerikten sorumlu güvenilir ekip üyesi
YazarKendi yazılarını yayımlama ve yönetmeDüzenli içerik üreten çalışan
KatılımcıYazı hazırlama, yayımlayamamaDışarıdan yazı gönderen kişiler
AboneYalnızca kendi profilini yönetmeÜye ziyaretçiler

Editör rolünün tek sitelerde filtresiz HTML ekleme yetkisine sahip olması, bu rolün de zararsız sayılmaması gerektiğini gösterir. Projesi biten ajans ve serbest çalışan hesapları kapatılmalı, herkes kendi adına açılmış hesabı kullanmalıdır. Ayarlar sayfasındaki “yeni kullanıcı varsayılan rolü” Abone olarak kalmalı; üyelik gerekmiyorsa herkesin kayıt olabilmesi kapalı tutulmalıdır.

Sitenin Güvenlik Katmanlarını Birlikte Gözden Geçirelim

Güncelleme durumu, yönetici hesapları, giriş koruması ve yedek düzeni ücretsiz ön değerlendirmede tek tek kontrol edilir. Hangi önlemin eksik olduğu ve hangisine önce başlanacağı açıkça paylaşılır; kesin koruma vaadi verilmez, riskin nerede yoğunlaştığı gösterilir.

Panelden Tema ve Eklenti Düzenlemeyi Kapatmak

WordPress, yöneticilerin tema ve eklenti dosyalarını panel üzerinden düzenlemesine varsayılan olarak izin verir; bu özellik kapatılmalıdır. Sıkılaştırma belgesi, bu düzenleyicinin kod çalıştırmaya imkân verdiği için bir saldırganın panele girdiğinde ilk başvurduğu araç olduğunu belirtir. wp-config.php dosyasına eklenen define( 'DISALLOW_FILE_EDIT', true ); satırı, tüm kullanıcılardan tema, eklenti ve dosya düzenleme yetkisini kaldırır.

Belge bu ayarın zararlı dosya yüklenmesini engellemediğini, ancak bazı saldırıları durdurabileceğini de açıkça yazar. Sayfa oluşturucuların ayarlarında bulunan SVG ya da JSON gibi filtresiz dosya yükleme seçenekleri de yalnızca gerçekten gerektiğinde açılmalıdır; bu dosyalar zararlı kod taşıyabilir. Veritabanına yazılan kodu çalıştırmaya izin veren eklentiler ise bir saldırı sonrasında zararı büyüttüğü için mümkünse kullanılmaz.

Dosya İzinleri, wp-config.php ve Veritabanı

Dosya izinleri mümkün olduğunca kısıtlı tutulmalı, yazma izni yalnızca gereken klasörlere verilmelidir. Resmi belgedeki örnek düzende klasörler 755, dosyalar 644 iznine sahiptir ve yazma yetkisi klasörlere göre şöyle dağılır:

  • Kök dizin, wp-admin ve wp-includes: yalnızca site sahibinin kullanıcı hesabı yazabilir
  • wp-content: kullanıcı hesabı ve web sunucusu birlikte yazabilir, çünkü yüklemeler buraya gelir
  • wp-content/plugins: yalnızca kullanıcı hesabı yazabilir
  • wp-content/themes: panelden tema düzenleme kapalıysa yalnızca kullanıcı hesabı yazabilir

Veritabanı bağlantı bilgilerini ve güvenlik anahtarlarını barındıran wp-config.php için belge 400 ya da 440 iznini ve sunucu ayarıyla doğrudan erişimin engellenmesini önerir.

Sunucuya dosya aktarımında şifresiz FTP yerine SFTP kullanılır; böylece şifre ağda açık metin olarak gitmez. Aynı sunucuda birden fazla WordPress sitesi varsa her birinin ayrı veritabanı ve ayrı veritabanı kullanıcısıyla çalışması, bir sitenin ele geçirilmesinin diğerlerine yayılmasını zorlaştırır. Tablo önekinin varsayılan “wp_” dışında bir değer olması da belgeye göre bazı otomatik SQL enjeksiyonu saldırılarını boşa çıkarabilir.

Şeffaf fiyatlandırma: hesap makinesi ve bütçe planlaması illüstrasyonu

Tema ve Eklenti Kaynağı: Güvenilir Kaynak Kuralı

Tema ve eklentiler yalnızca WordPress.org dizininden ya da bilinen geliştiricilerin kendi sitelerinden alınmalıdır. Sıkılaştırma belgesi, güvenilmeyen kaynaklardan indirilen bileşenlerin sorun çıkarabileceği konusunda açıkça uyarır; ücretli bir eklentinin “ücretsiz” dağıtılan kırılmış kopyaları çoğu zaman arka kapı taşır.

Kullanılmayan bileşenler devre dışı bırakılmakla yetinilmeyip silinmelidir. WordPress’in Site Sağlığı ekranı da etkin olmayan eklentilerin saldırganlar için cazip hedefler olduğunu belirterek kullanılmayacak eklentinin kaldırılmasını önerir. Sayı azaldıkça takip edilmesi gereken güncelleme ve olası açık sayısı da azalır.

Kurulum sırasında dosyalara yazma izni isteyen bir eklenti varsa, resmi belge kodun incelenmesini ya da güvenilen birine danışılmasını önerir. Yeni bir eklenti eklenmeden önce dizindeki bakım bilgileri de okunur: eklentinin en son ne zaman güncellendiği, hangi WordPress sürümüne kadar denendiği ve destek forumunda yanıtsız kalan sorunlar.

Hosting, Sunucu ve Güvenlik Duvarı

Sitenin barındığı sunucu, WordPress güvenliğinin görünmeyen ama belirleyici katmanıdır. Resmi belge, paylaşımlı bir sunucudaki başka bir site ele geçirildiğinde diğer sitelerin de etkilenebileceğini belirtir ve güvenilir bir hosting firmasının güvenlik sorularını açıkça yanıtlamasını, sunucu yazılımlarını güncel tutmasını ve güvenilir yedekleme ve geri yükleme imkânı sunmasını bekler. Bu ölçütler hosting seçimi sırasında sorulmalıdır.

Web uygulaması güvenlik duvarı (WAF) üç düzeyde çalışabilir: WordPress içinde çalışan bir eklenti olarak, sunucuya kurulan bir modül olarak ya da trafiği siteye ulaşmadan süzen bir ters vekil sunucu ve içerik dağıtım ağı olarak. Trafiği kaynağına ulaşmadan durduran katmanlar sunucuyu da yormaz. wp-admin klasörüne sunucu düzeyinde ikinci bir parola koymak da resmi belgede anılan bir yöntemdir; ancak yanlış yapılandırıldığında admin-ajax.php üzerinden çalışan özellikleri bozabileceği için dikkatle uygulanır. Seçim, sitenin trafiğine, barındırma türüne ve yönetim kapasitesine göre yapılır.

Önlem Yetmezse: Yedek, Kayıt ve Değişiklik İzleme

Hiçbir önlem riski sıfırlamadığı için saldırıyı erken fark etmeyi ve hızlı geri dönmeyi sağlayan hazırlık da güvenliğin parçasıdır. Sıkılaştırma belgesi, düzenli aralıklarla alınan tam site kopyalarının önemini bir örnekle anlatır: 1 Mayıs’ta ele geçirilen ama 12 Mayıs’ta fark edilen bir sitede haftalık kopyalar varsa, saldırı öncesine ait temiz bir yedek hazır olur ve sonraki kopyalar saldırının nasıl gerçekleştiğini anlamaya yardım eder.

Yedeğin kendisi de korunmalıdır. Belge, yedeklerin şifrelenmesini, her yedek dosyası için bağımsız bir özet değeri (hash) kaydı tutulmasını ya da salt okunur ortamlarda saklanmasını, verinin sonradan değiştirilmediğinden emin olmanın yolları olarak sayar.

Sunucu erişim kayıtları, kaba kuvvet denemelerini ve şüpheli istekleri gösterir. Dosya değişikliklerini izleyen bir düzen, özellikle PHP dosyalarına yapılan beklenmeyen eklemeleri erken yakalar. Bu takip, WordPress bakım ve güncelleme çalışmasının düzenli işleri arasında yer alır.

WordPress Güvenlik Kontrol Listesi

Aşağıdaki liste, bir sitenin temel güvenlik durumunu hızla gözden geçirmek için kullanılabilir. Her maddenin karşılığı yukarıdaki bölümlerde açıklanmıştır:

  • Çekirdek, tema, eklenti ve PHP sürümü güncel
  • Kullanılmayan tema ve eklentiler silinmiş
  • Tüm yönetici hesaplarında iki adımlı doğrulama açık, şifreler benzersiz
  • “admin” kullanıcı adı yok, eski personel ve ajans hesapları kapatılmış
  • Her kullanıcı işine yetecek en düşük rolde
  • Panelden dosya düzenleme kapalı
  • XML-RPC kullanılmıyorsa kapalı, giriş denemeleri sınırlı
  • Dosya aktarımı SFTP ile, wp-config.php erişime kapalı
  • Yedekler düzenli, siteden ayrı bir konumda ve geri yüklemesi denenmiş
  • Site HTTPS ile açılıyor, yönetim paneli girişleri şifreli bağlantıda

Listedeki maddelerin çoğu bir kez yapılır ve kalıcıdır; güncelleme, hesap temizliği ve yedek kontrolü ise sürekli takip ister. Bir güncelleme sonrasında site hata vermeye başlarsa sorunun kaynağı WordPress problem çözme adımlarıyla bulunur; güvenlik önlemleri gevşetilerek geçici çözüm aranmaz.

Güvenlik Önlemlerini Siteye Göre Planlayalım

Her sitenin riski farklıdır: tanıtım sitesi, üyelik sistemi ve e-ticaret mağazası aynı öncelikleri taşımaz. WordPress güvenliği için hangi katmanın eksik olduğunu görmek adına kısa bir inceleme yeterlidir. WhatsApp’tan yazmak ya da aramak, ücretsiz ön değerlendirmeyi başlatmak için yeterlidir.

Sıkça Sorulan Sorular

WordPress çekirdeği güvenlik ekibi tarafından izlenen ve açıklar için düzeltme sürümleri yayımlanan bir yazılımdır. Risklerin çoğu güncellenmeyen eklentiler, zayıf şifreler ve fazla yetkili hesaplar gibi yönetim hatalarından doğar.

Şart değildir; eklenti tek başına güvenlik sağlamaz, güncelleme, yetki yönetimi ve yedekle birlikte bir katmandır. Giriş sınırlama ve güvenlik duvarı gibi korumalar mümkünse sunucu veya kenar ağı düzeyinde yapılır.

Resmi belgeye göre iki adımlı doğrulama çekirdekte bulunmaz; güvenilir bir eklenti ya da kurumsal kimlik sağlayıcı ile eklenir. Tüm yönetici hesaplarında açılması ve her hesaba birden fazla doğrulayıcı tanımlanması önerilir.

Otomatik botların gürültüsünü azaltabilir, ancak WordPress’in resmi belgesine göre tek savunma olarak kullanılmamalıdır. Güçlü şifre, iki adımlı doğrulama ve sunucu düzeyinde giriş sınırlaması asıl korumayı sağlar.

wp-config.php dosyasına eklenen bu ayar, panel üzerinden tema ve eklenti dosyalarının düzenlenmesini tüm kullanıcılar için kapatır. Panele giren bir saldırganın doğrudan kod eklemesini zorlaştırır, ancak zararlı dosya yüklenmesini tek başına engellemez.

Taşıyabilir; dosyaları sunucuda durduğu sürece içindeki açıklar istismar edilebilir. WordPress’in Site Sağlığı ekranı da kullanılmayacak eklentilerin silinmesini önerir.

Güvenlik düzeltmesi içeren sürümler yayımlandıktan sonra bekletilmeden uygulanmalıdır. Büyük sürüm güncellemeleri ise önce yedek alınarak ve mümkünse test kopyasında denenerek yapılır.

Onur Ertem - Onur Freelance Kurumsal Web Tasarım

Onur Ertem

İşletmenizi Dijitalde Güçlendirin! 🚀 Kurumsal web tasarım ve dijital pazarlama çözümleriyle markanızı büyütmeye hazır mısınız? Hemen bize ulaşın, profesyonel desteğimizle dijital dünyada öne çıkın!

Bizi Arayın

Detaylı bilgi için bizi arayın.

Sizi, Biz Arayalım!

Numaranızı paylaşın sizi, biz arayalım!

İletişim Bilgileri