En popüler içerik yönetim sistemi olması WordPress’in en çok saldırıya maruz kalan CMS olması paradoksuna neden oluyor:
Çok fazla web sitesinin WordPress ile yönetilmesi, WordPress sitelerini; çekirdek kodda ya da eklenti ve tema kodlarında güvenlik açığı bulmaya çalışan bilgisayar korsanları için hedef haline getiriyor.
Google, kötü amaçlı yazılımlar için her gün 10.000’den fazla web sitesini, kullanıcı bilgileri ve şifreleri çalmaya odaklanan kimlik avına yönelik aktiviteler için de her hafta yaklaşık 50.000 web sitesini kara listeye alıyor.
Üstelik bilgisayar korsanları, sadece kötü amaçlı yazılım yüklemekle kalmıyor, ziyaretçilerinize de bu kötü amaçlı yazılımları dağıtabiliyor.
Ancak genellikle WordPress kullanıcıları, web siteleri saldırıya uğrayana kadar web sitesi güvenliğinin öneminin farkına varamıyor.
WordPress web sitenizin güvenlik seviyesini yükseltmek adına önlem almak isterseniz, güvenlik ipuçlarını paylaştığımız önerilerimize göz atabilirsiniz:
Ücretsiz Eklentiler
Genellikle ücretsiz alternatifler şeklinde sunulan eklentiler, kötü amaçlı yazılımlar barındırabiliyor.
Bu nedenle normalde ücretli olan bir eklentinin bazı sitelerde ücretsiz olduğunu görürseniz bunu bir fırsat olarak değil, bir alarm olarak algılamalısınız.
Eğer ücretli olanları almak istemiyorsanız, resmi WordPress eklenti deposundan ihtiyacınız olan eklentileri bulabilirsiniz.
Güncellemeler
WordPress, tüm eklentilerinizi, tüm temalarınızı ve sitenizin tüm temel kodunu aynı anda güncellemenizi sağlayan tek tıklamayla otomatik güncelleme özelliğine sahiptir.
WordPress geliştiricileri, genellikle bilgisayar korsanlarının bulduğu açıkları, saatler içinde kapatarak güncellemeler yayınlar.
Bu nedenle bu düzeltmelerden yararlanabilmeniz için güncellemeleri düzenli olarak yüklemeniz gerek.
Herhangi bir sıkıntı yaşanmaması için güncellemelerden önce yedekleme yapmanız önerilir.
WordPress Hosting
Kaliteli bir web hosting şirketi web sitelerinizi ve verilerinizi korumak için arka planda sürekli çalışır:
- Şüpheli etkinlik için ağlarını sürekli izler.
- Büyük ölçekli DDOS saldırılarını önlemek için gelişmiş araçlara sahiptir.
- Bilgisayar korsanlarının eski bir sürümde bilinen bir güvenlik açığından yararlanmalarını önlemek için sunucu yazılımlarını ve donanımlarını sürekli güncel tutar.
- Veri kaybına karşı felaket kurtarma ve kaza planları, her an için uygulamaya hazırdır.
Bu nedenle Web sitenizi güvenlik açıklarına karşı korumak için uygulayabileceğiniz adımların en önemlisi; WordPress sitenizin güvenliği için ekstra önlemler alan, kaliteli bir hosting firmasının WordPress hosting hizmetlerinden yararlanmanızdır.
Çünkü WordPress hosting; donanımları WordPress’e özel olarak optimize edilmiş olan ve WordPress’e özel güvenlik yapılandırmaları sunan bir hosting çözümüdür.
Güçlü Parolalar ve Kullanıcı İzinleri
En yaygın WordPress saldırı girişimleri çalıntı şifrelerle yapıldığından web siteniz için tahmin edilmesi zor, uzun ve güçlü bir şifre kullanmanız ve bu şifreyi düzenli olarak değiştirmeniz gerekir.
Yalnızca WordPress yönetici paneli için değil, aynı zamanda FTP hesapları, veritabanı, hosting hesabı ve sitenizin alan adını kullanan özel e-posta adresleriniz için de çok güçlü şifreler seçmeniz riski azaltmanın başka bir yoludur.
Gerekmedikçe kimseye WordPress yönetici hesabınıza erişim vermemeniz de önerilir. Büyük bir ekiple ya da konuk yazarlarla çalışıyorsanız, sitenize yeni kullanıcı hesapları eklemeden önce WordPress’teki kullanıcı rollerini ve yetkilerini anladığınızdan emin olmalısınız.
Yedekleme
Herhangi bir WordPress saldırısına karşı ilk savunmanız, WordPress sitenizi hızlı bir şekilde geri yüklemenizi sağlayan yedeklemeler olmalıdır.
Web sitenizi ne sıklıkta güncellediğinize bağlı olarak günde bir yedekleme almanız önerilir.
Yedekleme konusunda en çok kullanılan yöntem; çok sayıda ücretsiz/ücretli WordPress yedekleme eklentisinden biri ile, eş zamanlı yedekler alıp Amazon, Dropbox gibi bir bulut hizmetinde depolamaktır.
Ayrıca her bir yedekleme dosyası sürücünüzde yer kapladığından, yeni bir yedekleme yapıldıktan sonra bu yedeklemelerin çoğunun silindiğinden emin olmanız önemlidir.
Güvenlik Eklentileri
En iyi WordPress güvenlik eklentileri arasından birini seçip web sitenizde gerçekleşen her tür aktiviteyi takip eden bir denetim ve izleme sistemi kurmak en çok başvurulan güvenlik çözümlerinden biridir.
Genellikle bu eklentilere; dosya bütünlüğü izleme, başarısız giriş denemeleri, kötü amaçlı yazılım taraması gibi özellikler dahildir.
Firewall (Güvenlik Duvarı)
Web sitenizi korumanın en kolay yolu, kötü amaçlı trafiği sitenize ulaşmadan engelleyen bir güvenlik duvarı kullanmaktır.
Saldırıya uğramış bir web sitesini eski haline getirmektense en baştan bir güvenlik duvarı kullanmak oldukça mantıklıdır.
SSL Sertifikası
SSL (Güvenli Yuva Katmanı), web siteniz ve kullanıcı arasındaki veri aktarımının şifrelenmesidir. Bu şifreleme, verilerin çalınmasını oldukça zorlaştırır.
Hosting firmanız aracılığıyla SSL’i etkinleştirdikten sonra, web sitenizi ziyaret edenler, tarayıcıda adresinizin başında bir asma kilit işareti ve HTTP yerine HTTPS yazısını görür.
SSL sertifikasına sahip olmanız hem Google’ın hem ziyaretçilerinizin gözündeki itibarınızda ummadığınız kadar etkilidir:
Google, SSL’i olan siteleri arama sonuçlarında daha üst sıralarda gösterme ve ziyaretçiler de adres çubuğunda güvenli değil uyarısı gördükleri siteleri hızla terk etme eğilimindedir!
Varsayılan Kullanıcı Adını Değiştirmek
WordPress’i yüklerken özel bir kullanıcı adı seçmeniz gerekir ancak bazen tek tıkla WordPress yükleme işleminde varsayılan kullanıcı adı kendiliğinden “admin” olarak ayarlanır.
Kullanıcı adları; giriş bilgilerinin yarısını oluşturduğundan, önce “Kullanıcılar” sekmesinden yeni bir kullanıcı adı oluşturmanız sonra da “Admin” adındaki eski kullanıcı hesabını silmeniz önerilir.
Admin Dizini
Wp-admin dizini bir WordPress sitesinin kalbidir.
Hackerların, bu en güçlü kısma saldırmalarını engellemenin bir yolu, wp-admin dizinini parola ile korumaktır. Böylece biri giriş sayfası, diğeri WordPress yönetici alanını koruyan iki şifre ile kontrol paneline erişebilir.
Genellikle hosting kurulumunuzu cPanel aracılığıyla gerçekleştirmek bu düzenlemeyi içerir.
Dosya Düzenlemeyi Devre Dışı Bırakmak
WordPress, temanızı ve eklenti dosyalarınızı doğrudan WordPress yönetici alanınızdan düzenlemenizi sağlayan yerleşik bir kod düzenleyicisine sahiptir.
Yanlış ellerde, bu özellik bir güvenlik riski oluşturabileceğinden FTP programı yardımıyla wp-config.php dosyasının sonuna aşağıdaki kodu ekleyebilir ya da bir eklenti kullanarak dosya düzenlemeyi kapatabilirsiniz.
1 | // Disallow file edit |
2 | define( ‘DISALLOW_FILE_EDIT’, true ); |
Böylece, WordPress kontrol panelinizde, yönetici erişimi edinmiş olan bir bilgisayar korsanı dahil, hiç kimse dosyaları değiştiremez.
Wp-config.php Dosyasını Taşımak
Wp-config.php dosyası WordPress kurulumunuz hakkında önemli bilgiler içeren, sitenizin kök dizinindeki en önemli dosyadır.
Bunu korumak, WordPress blogunuzun çekirdeğini güvence altına almak anlamına gelir.
Koruma işlemi için wp-config.php dosyanızı kök dizinden daha yüksek bir seviyeye taşısanız bile sunucu ona erişebilir.
Çünkü WordPress mimarisinde, yapılandırma dosyası ayarları öncelik listesindeki en yüksek değere ayarlanmıştır.
Bu nedenle, kök dizinin üstünde bir klasör saklansa bile, WordPress yine de wp-config.php dosyanızı görebilir.
Giriş URL’sini Yeniden Adlandırmak
WordPress giriş sayfasına, sitenin ana URL’sine eklenen wp-login.php veya wp-admin aracılığıyla kolaylıkla erişilebilir.
Bilgisayar korsanlarının giriş sayfanızın doğrudan URL’sini bilmelerini önlemek ve sitenizi güvence altına almak için giriş URL’sini değiştirebilirsiniz.
- Wp-login.php
- / Wp-admin /
- /Wp-login.php?action=register ögelerini değiştirmek; gerçek URL’yi bilenlerin dışındakilerin sitenize erişmesini engeller.
Belirli WordPress Dizinlerinde PHP Dosya Yürütmeyi Devre Dışı Bırakma
WordPress güvenliğinizi artırmanın bir başka yolu, gerekli olmayan dizinlerde PHP dosya yürütülmesini; bir WordPress eklentisi ile ya da kod ekleyerek devre dışı bırakmaktır.
Kod ekleyerek PHP dosya yürütmeyi devre dışı bırakmak için; / wp-content / uploads / gibi dizinleri “Not Defteri” gibi bir metin düzenleyicisinde açıp alttaki kodu yapıştırmalı, ardından bu dosyayı .htaccess olarak kaydetip, bir FTP istemcisi kullanarak web sitenizdeki / wp-content / uploads / klasörlerine yüklemelisiniz.
1 | <Files *.php> | |
2 | deny from all | |
3 | </Files> |
Giriş Denemelerini Sınırlamak
WordPress; kullanıcıların istedikleri kadar oturum açmaya çalışmasına izin verir. Bu yüzden hackerların farklı kombinasyonlarla giriş yapmaya çalışarak şifreleri kırma çabaları sitenizi saldırılara karşı savunmasız bırakır.
Firewall ya da bir eklenti ile giriş denemelerini sınırlandırarak bu durumu önleyebilirsiniz.
İki Faktörlü Kimlik Doğrulama
İki adımlı kimlik doğrulama yöntemi kullanarak oturum açmak için ilk adım olarak kullanıcı adı ve parola, ikinci adımda ise ayrı bir cihaz ya da uygulama kullanılır.
Google, Facebook, Twitter gibi popüler sitelerin, kullandığı bu özelliği bir eklenti yardımıyla WordPress sitenize eklemeniz mümkün.
Böylece normal bir şifre ve ardından gizli bir soru ya da telefonunuza gizli bir kod gönderilmesiyle sitenizin güvenliği artırılmış olur.
Ayrıca WordPress’e giriş yapmak için kullanıcı adı yerine bir e-posta kimliği kullanmak da güvenli bir yaklaşımdır.
Hotlinking Engelleme
Hotlinking; sitenizdeki bir görseli kendi web sitesinde göstermek için linkini kullanarak sunucu bant genişliğinizin çalınması anlamına gelir, bu; sayfa yükleme hızınızı düşürebilir.
Hotlinking’i önlemek için bazı manuel teknikler ya da WordPress güvenlik eklentileri kullanılmaktadır.
WordPress Veritabanı Önekini Değiştirmek
Sitenizin tüm verileri ve bilgileri veritabanında saklanır.
WordPress veritabanınızdaki tüm tablolar için önek olarak wp_ kullanır.
Bilgisayar korsanlarının tablo adınızın ne olduğunu tahmin etmesini kolaylaştırdığı için, bunu değiştirmeniz önerilir.
Yani varsayılan öneki değiştirmek, veritabanınızı SQL enjeksiyon saldırılarından koruyabilir (Örneğin, mywp- veya wpnew- yapabilirsiniz ancak bu, düzgün bir şekilde yapılmazsa sitenizi bozabileceği için kodlama bilgisi yeterli birinin yardımı gerekebilir).
Dizine Ekleme ve Taramayı Devre Dışı Bırakma
Dizin taramasını, korsanlar güvenlik açığına sahip herhangi bir dosyanız olup olmadığına bakmak, görüntüleri kopyalamak, dizin yapınızı bulmak gibi nedenler için kullanabilir.
Bu nedenle dizin indekslemeyi ve taramayı kapatmanız önerilir.
Bunun için; FTP veya cPanel’in dosya yöneticisini kullanarak web sitenize bağlanmanız ve web sitenizin kök dizinindeki .htaccess dosyasını bulup bu dosyanın sonuna aşağıdaki satırı eklemeniz gerekir:
Options -Indexes
Sonrasında .htaccess dosyasını kaydetmeyi ve sitenize geri yüklemeyi unutmayın.
WordPress’de XML-RPC’yi Devre Dışı Bırakmak
XML-RPC ile, bir bilgisayar korsanı system.multicall işlevini kullanarak 20 veya 50 istekle binlerce parolayı deneyebilir.
Bu nedenle kullanmıyorsanız, XML-RPC’yi devre dışı bırakmanız önerilir.
Aktif Olmayan Kullanıcı Ekranının Otomatik Kapatılması
Giriş yapılmış halde kalan kullanıcı ekranları oturumun ele geçirilmesi, şifrelerin değiştirilmesi ve hesaplarda değişiklik yapılması gibi güvenlik risklerine neden olabilir.
Bu yüzden birçok bankacılık ve finans sitesinin yaptığı gibi, etkin olmayan kullanıcının otomatik olarak kapatılmasını sağlayan bir eklenti kullanabilirsiniz.
WordPress Giriş Ekranına Güvenlik Soruları Ekleme
WP güvenlik sorusu eklentileri ile WordPress giriş ekranınıza güvenlik sorusu eklemek, yetkisiz erişimleri engelemenize yarar.
Kötü Amaçlı Yazılım ve Güvenlik Açıkları için Tarama Yapmak
WordPress güvenlik eklentileri rutin olarak kötü amaçlı yazılımları ve güvenlik ihlallerini kontrol eder.
Ancak, sitenizin trafiğinde ya da arama sıralamalarında ani bir düşüş olursa, bu taramayı manuel yapmanız gerekebilir.
Bunun için de online güvenlik tarayıcılarından birine web sitenizin URL’lerini girerek ya da güvenlik eklentinizi kullanarak tarama yapabilirsiniz.
DDoS Saldırılarından Korunmak
DDoS saldırısı, sunucunuza çok sayıda program ve sistem yüklenmesini içerir. Böyle bir saldırı site dosyalarınızı tehlikeye atmasa da, çözümlenmediği takdirde sitenizin çökmesine neden olabilir.
Bazı WordPress güvenlik eklentileri ve güvenlik duvarları; kullanılan bant genişliğini analiz etmek ve DDoS saldırılarını tamamen engellemek için uygun çözümler sunar.
WordPress Sürüm Numaranızı Kaldırmak
Sitenizin kaynak görünümünden ya da kontrol panelinizin sağ alt kısmından; mevcut WordPress sürüm numaranızı görebilirsiniz.
Bilgisayar korsanları hangi WordPress sürümünü kullandığınızı bilmemelidir.
Bu nedenle sürüm numaranızı WordPress güvenlik eklentilerinden biriyle gizleyebilirsiniz.
Manuel olarak yapmak isterseniz function.php dosyanıza aşağıdaki kodu eklemelisiniz:
function wpbeginner_remove_version() { return ''; } add_filter('the_generator', 'wpbeginner_remove_version');
Özet
Saldırıya uğramış bir WordPress sitesini düzeltmek zor ve zaman alıcı olabilir. Dahası saldırıdan etkilenmiş sitelere korsanlar tarafından yerleştirilen arka kapılar farkedilmez ya da doğru şekilde kapatılmazsa aynı sitelerin tekrar saldırıya uğrama ihtimali doğar.
Bahsettiğimiz güvenlik önlemlerinin,uygulanması, sitenizi olası saldırılardan çok büyük oranda koruyacaktır.