İçindekiler
- 1 WordPress Siteniz Sürekli Hackleniyorsa Ne Anlama Geliyor?
- 2 Paylaşımlı Hosting ve Tekrarlayan Hack Sorunu
- 3 İlk 24 Saat: Panik Yapmadan Hasar Tespiti ve İzolasyon
- 4 Paylaşımlı Hosting Üzerinde Adım Adım WordPress Temizliği
- 5 Güvenliği Sertleştirme: Aynı Saldırının Tekrarını Nasıl Engellersiniz?
- 6 Paylaşımlı Hosting Yeterli mi? Ne Zaman VPS veya Dedicated Düşünmelisiniz?
- 7 Taşıma Stratejisi: Sıfırdan Kurulum mu, Temiz Yedekten Dönüş mü?
- 8 DCHost ile Pratik Yol Haritası ve Son Söz
WordPress Siteniz Sürekli Hackleniyorsa Ne Anlama Geliyor?
WordPress siteniz birkaç haftada bir temizlenmesine rağmen tekrar tekrar hackleniyorsa, ortada genelde tek bir açık değil, birden fazla zayıf halka vardır: güncellenmeyen eklentiler, zayıf parolalar, paylaşımlı hosting’in doğası, eksik yedekleme stratejisi ve çoğu zaman da aceleyle yapılmış yüzeysel temizlikler. Bu yazıda tam da bu noktada takılan site sahipleri için, paylaşımlı hosting üzerinde neleri gerçekten yapabileceğinizi, nerede sınırlarınıza çarpacağınızı ve hangi aşamada daha izole bir ortama (VPS, dedicated ya da yönetilen çözüm) geçmeniz gerektiğini, sahada sıkça gördüğümüz senaryolara dayanarak anlatacağız.
Amacımız, “bir kere temizleyip kurtulmak” değil; sitenizi kalıcı olarak temizlemek, tekrar hacklenmeyi önlemek ve mümkünse süreci daha güvenli bir altyapıya taşıyarak kapatmaktır. Adım adım ilerleyeceğiz: önce zararı tespit edeceğiz, sonra temizliği yapacağız, ardından güvenliği sertleştireceğiz, son olarak da DCHost tarafında hangi barındırma stratejisinin sizin senaryonuz için mantıklı olduğuna değineceğiz.
Paylaşımlı Hosting ve Tekrarlayan Hack Sorunu
Önce sorunun köküne inelim: Neden bazı WordPress siteleri bir kere hacklenirken, bazıları sürekli hedef oluyor ve tekrar tekrar ele geçiriliyor?
Paylaşımlı hosting’in doğası
Paylaşımlı hosting, özellikle başlangıç ve düşük bütçeli projeler için harika bir çözümdür. Ancak güvenlik tarafında bazı yapısal sınırlamaları vardır:
- Aynı sunucu üzerinde çok sayıda farklı hesap ve web sitesi barınır.
- Sunucuya root erişimi sizde değil, güvenlik önlemlerinin çoğu hosting sağlayıcısı tarafından merkezi olarak uygulanır.
- Çoğu zaman aynı IP ve benzer kaynaklar birçok site tarafından ortak kullanılır.
Bu, “bir site hacklenirse hepsi hacklenir” anlamına gelmek zorunda değildir; düzgün izole edilmiş altyapılarda hesaplar birbirinden ayrılır. Ancak kötü yapılandırılmış sunucularda veya eski panellerde, başka bir hesabın açığı üzerinden sizin dosyalarınıza da sızılması mümkündür. Ayrıca saldırganlar, zayıf parolalar veya güvenli olmayan eklentiler gibi tamamen sizin sitenize özel açıkları da sıkça kullanır.
Neden tekrar tekrar hackleniyor?
Gerçek dünyada sık gördüğümüz tekrar eden hack senaryolarının ortak noktaları şunlar:
- Yüzeysel temizlik: Sadece görünür zararlı dosyalar siliniyor, ama arka kapılar (backdoor) kalıyor.
- Güncel olmayan çekirdek, tema, eklenti: Güvenlik güncellemeleri aylarca hatta yıllarca erteleniyor.
- Zayıf parolalar: admin/admin123, FTP ve cPanel parolalarının tekrar kullanılması, parola paylaşımı.
- Eksik yedek stratejisi: Hackten önceki temiz bir noktaya güvenle dönemeyecek durumda olmak.
- Yanlış izinler: 777 dosya izinleri, herkesin yazabildiği upload klasörleri.
- Enfekte yedekten dönüş: Temiz sanılan ama aslında zararlı içeren yedeklerin tekrar geri yüklenmesi.
Bu tabloyu tersine çevirmek için önce hasarı kontrollü biçimde tespit edip, sonra bilinçli bir temizlik ve güvenlik sertleştirme süreci yürütmemiz gerekiyor.
İlk 24 Saat: Panik Yapmadan Hasar Tespiti ve İzolasyon
Hack fark edildiğinde ilk refleks genelde “şu birkaç dosyayı sileyim, site geri gelsin” oluyor. Bu, kısa vadede işe yarasa bile uzun vadede tekrarlayan hack döngüsünü besler. İlk 24 saatte şu yolu izlemek çok daha sağlıklı:
1. Siteyi geçici olarak korumaya alın
- Mümkünse WordPress’i bakım moduna alın veya .htaccess ile IP kısıtlaması yaparak sadece kendi IP’nizden erişilebilir hale getirin.
- Yoğun trafiğiniz varsa, anasayfaya “Geçici bakım” mesajı koymak, zararlı içeriğin ziyaretçilere gösterilmesini engeller.
- Eğer ciddi phishing veya zararlı yazılım yayma durumu varsa, siteyi kısa süreliğine tamamen kapatmak da mantıklı olabilir.
2. Mevcut durumu kaydedin (log ve dosya tarihleri)
Temizliğe başlamadan önce, saldırının nasıl gerçekleştiğini anlamaya yarayacak izleri saklamak önemli:
- cPanel veya paneliniz üzerinden erişim loglarını indirin (access_log, error_log).
- FTP veya Dosya Yöneticisi üzerinden, özellikle
wp-contentvewp-includesaltındaki son değişiklik tarihlerini not alın veya bir liste olarak indirin. - Bu veriler, ileride kalıcı güvenlik önlemleri alırken hangi açığın kullanıldığını anlamanıza yardım eder.
3. Tam yedek alın (ama hemen geri yüklemeyin)
İlk içgüdü, hemen önceki yedeğe dönmek oluyor. Ancak yedeğinizin temiz olduğundan emin değilseniz, bu sizi sadece hack’in başlangıç noktasına geri götürür. Bunun yerine:
- Tüm dosya yapısını (home dizini +
public_html) bir arşiv halinde indirin. - Veritabanının MySQL dump’ını alın.
- Bu yedeği “adli kopya” gibi düşünün; temizlikten önce ve sonra karşılaştırma yapmak için kullanacağız.
Sağlıklı bir yedekleme düzeni kurmak için paylaşımlı hosting ve VPS senaryolarını ayrıntılı ele aldığımız WordPress yedekleme stratejileri rehberimize mutlaka göz atın.
Paylaşımlı Hosting Üzerinde Adım Adım WordPress Temizliği
Şimdi en kritik kısma geldik: Temizlik. Buradaki amaç, sadece görünen zararlı dosyaları silmek değil, çekirdek dosyaları, temaları, eklentileri ve veritabanını sistematik şekilde tarayıp arka kapıları imha etmek.
1. Çekirdek WordPress dosyalarını sıfırlayın
En güvenli yol, WordPress çekirdeğini resmi kaynakla birebir eşitlemektir:
- WordPress’in kullandığınız sürümünü resmi kaynaktan indirin.
- Sunucudaki
wp-adminvewp-includesklasörlerini tamamen silin. - İndirdiğiniz paketten gelen temiz
wp-adminvewp-includesklasörlerini sunucuya yükleyin. - Kök dizindeki WordPress dosyalarını (wp-*.php) da orijinaliyle karşılaştırıp, bozulmuş olanları sıfırlayın.
Bu adım genelde enjekte edilmiş zararlı kodların önemli bir kısmını temizler. Ancak asıl risk wp-content altında ve veritabanında saklanan arka kapılardır.
2. Tema ve eklentileri manuel tarayın
wp-content/themes ve wp-content/plugins altı, saldırganların en çok oynadığı alanlardır. Şu adımları izleyin:
- Kullanmadığınız tüm temaları ve eklentileri tamamen silin (sadece devre dışı bırakmak yetmez).
- Aktif tema klasörünüz içinde garip isimli PHP dosyaları, tek satırlık uzun base64 kodları,
eval,gzinflate,shell_execgibi fonksiyonları arayın. - Şüpheli dosyaları silin ve mümkünse temayı resmi kaynaktan yeniden yükleyin.
- Premium temalar/eklentiler için mutlaka orijinal lisanslı sürümleri kullanın; null edilmiş sürümler çoğu zaman bilerek arka kapı içerir.
3. Upload klasörünü kontrol edin
wp-content/uploads klasörü, normalde sadece medya dosyaları (jpg, png, pdf vb.) içermelidir. Eğer burada PHP dosyaları görüyorsanız bu ciddi bir işarettir:
uploadsaltında .php, .php7, .phtml uzantılı dosyalar olup olmadığını tarayın.- Varlarsa, büyük ihtimalle bunlar web shell veya arka kapı dosyalarıdır; kaldırın.
- Uzun, rastgele isimli .ico, .js veya .txt dosyalarını açıp içeriğini kontrol edin; zararlı kod saklanmış olabilir.
4. Veritabanını temizleyin
Hack temizliğinde en çok atlanan kısım veritabanıdır. Oysa saldırganlar sık sık:
- wp_options içine otomatik zararlı kod yürüten kayıtlar ekler,
- wp_posts içindeki yazı ve sayfalara gizli iframeler, JS script’leri gömer,
- admin yetkili yeni kullanıcılar açar.
Yapmanız gerekenler:
- wp_users tablosunu kontrol edin, tanımadığınız admin hesaplarını silin.
- wp_usermeta’da admin rolü atanmış şüpheli kullanıcılar olup olmadığına bakın.
- wp_options tablosunda garip isimli autoload = yes</strong kayıtlarını inceleyin; uzun ve karmaşık içerikli olanlar zararlı olabilir.
- wp_posts içindeki yazı ve sayfalarda, temizlik sonrası hâlâ spam link veya script kalıp kalmadığını tarayın.
5. Tüm parolaları değiştirin
Temizlik yapılırken bile çoğu zaman en basit ama en kritik adım atlanıyor: parolalar. Aşağıdaki her şey için benzersiz ve güçlü parolalar belirleyin:
- WordPress admin hesapları
- FTP/SFTP hesapları
- cPanel veya yönetim paneli hesabınız
- Veritabanı kullanıcısı (wp-config.php içindeki user/pass)
Ayrıca wp-config.php dosyasındaki SALT anahtarlarını yenileyin. Bu, aktif oturumları geçersiz kılar ve çalınmış çerezlerle giriş yapılmasını zorlaştırır.
6. Dosya izinlerini düzeltin
Yanlış dosya izinleri, özellikle paylaşımlı hosting’de saldırganların işini kolaylaştırır.
- Genel kural: dizinler
755, dosyalar644olmalı. - Asla
777izin kullanmayın; bu, herkesin yazabildiği anlamına gelir. wp-config.phpiçin daha kısıtlı izinler (örneğin 600 veya 640) kullanın.
Güvenliği Sertleştirme: Aynı Saldırının Tekrarını Nasıl Engellersiniz?
Siteyi bir şekilde ayağa kaldırdınız, ama asıl kritik nokta şu: Aynı film tekrar oynamasın. Bunun için WordPress tarafında ve hosting tarafında güvenliği sertleştirmeniz gerekiyor.
WordPress güvenlik sertleştirme adımları
Detaylı bir kontrol listesi için WordPress güvenlik sertleştirme rehberimizi mutlaka okuyun. Burada öne çıkan bazı kritik adımları özetleyelim:
- Her şeyi güncel tutun: Çekirdek, tema, eklentiler için otomatik güncellemeleri mümkün olduğunca etkinleştirin.
- Gereksiz eklentileri kaldırın: Kullanmadığınız her eklenti potansiyel saldırı yüzeyidir.
- Dosya düzenleyicisini kapatın:
wp-config.phpiçinedefine('DISALLOW_FILE_EDIT', true);ekleyerek panelden tema/eklenti düzenlemeyi devre dışı bırakın. - XML-RPC’yi sınırlandırın: Kullanımı zorunlu değilse kapatın veya sadece belirli IP’lere izin verin.
- İki faktörlü kimlik doğrulama (2FA) kullanın; özellikle admin hesaplarında.
wp-login ve brute-force saldırılarını sınırlayın
Pek çok saldırı, aslında çok basit parola denemeleriyle başlar. Paylaşımlı hosting’de uygulayabileceğiniz bazı önlemler:
- Giriş deneme sayısını sınırlandıran güvenilir bir güvenlik eklentisi kullanın.
- Giriş URL’nizi özelleştirin (varsayılan
/wp-login.phpyolunu değiştirmek tek başına çözüm değildir ama gürültüyü azaltır). - Mümkünse .htaccess ile wp-login’e IP kısıtlaması getirin (sadece ofis IP’leriniz gibi).
Daha gelişmiş seviyede, kendi VPS’inizde Nginx ve Fail2ban kullanarak brute-force saldırılarını nasıl susturabileceğinizi wp-login.php ve XML-RPC brute-force saldırılarını sınırlama rehberimizde detaylıca anlattık. Paylaşımlı hosting’den daha izole bir mimariye geçtiğinizde bu teknikler çok işinize yarar.
cPanel ve hosting tarafını sertleştirin
Sadece WordPress’i değil, kontrol panelinizi de güvenceye almanız gerekir:
- cPanel kullanıcı adınızı ve parolanızı tahmin edilmesi zor hale getirin.
- Varsa iki faktörlü kimlik doğrulama özelliğini aktif edin.
- Kritik hesaplara IP kısıtlaması ekleme imkânınız varsa kullanın.
Panel seviyesinde alabileceğiniz önlemleri ayrıntılı bir kontrol listesi halinde görmek için cPanel güvenlik sertleştirme rehberimize göz atabilirsiniz.
HTTP güvenlik başlıkları ve SSL
Uygun SSL yapılandırması ve HTTP güvenlik başlıkları, XSS ve içerik enjeksiyonu gibi bazı saldırı türlerine karşı fazladan bir katman sağlar:
- Her zaman geçerli bir SSL sertifikası kullanın ve sitenizi sadece HTTPS üzerinden yayınlayın.
- HSTS, X-Frame-Options, X-Content-Type-Options, Referrer-Policy gibi başlıkları doğru şekilde ayarlayın.
- Gelişmiş güvenlik başlıklarını nasıl uygulayacağınıza dair teknik detayları HTTP güvenlik başlıkları rehberimizde bulabilirsiniz.
Paylaşımlı Hosting Yeterli mi? Ne Zaman VPS veya Dedicated Düşünmelisiniz?
Paylaşımlı hosting üzerinde makul ölçüde güvenlik sağlamak mümkündür. Ancak bazı durumlarda, tekrar tekrar hack yaşayan siteler için sorun sadece WordPress tarafında değildir; trafik hacmi, eklenti yükü, saldırı sıklığı ve izolasyon ihtiyacı paylaşımlı hosting’in doğal sınırlarını zorlar.
Paylaşımlı hosting’in zorlandığı tipik senaryolar
- Yoğun trafik alan e-ticaret veya üyelik siteleri
- Çok sayıda eklenti kullanan, karmaşık WordPress kurulumları
- Sürekli brute-force ve DDoS benzeri saldırı alan, WAF ve rate limiting ihtiyacı yüksek siteler
- Aynı sunucudaki diğer hesapların güvenlik hijyeninden endişe duyulan durumlar
Bu tip senaryolarda, daha izole bir ortamda (VPS veya dedicated sunucu) çalışmak, hem performans hem güvenlik açısından ciddi avantaj sağlar. Kaynakları ve güvenlik duvarını kendinize göre ayarlayabilir, WAF, Fail2ban, gelişmiş loglama gibi çözümleri doğrudan sunucuya kurabilirsiniz.
DCHost tarafında ne yapabilirsiniz?
DCHost olarak paylaşımlı hosting’in yanı sıra, VPS, dedicated sunucu ve colocation hizmetleri de sunuyoruz. Tekrarlayan hack sorunları yaşayan müşterilerde sıkça izlediğimiz yol şu:
- Önce mevcut paylaşımlı hosting hesabında kapsamlı bir temizlik yapıyoruz.
- Ardından, yeni bir DCHost VPS veya dedicated sunucu üzerinde temiz bir WordPress kurulumu hazırlıyoruz.
- Yalnızca temizlenmiş verileri ve medyayı yeni ortama taşıyoruz.
- Sunucu tarafında güvenlik sertleştirme (firewall, Fail2ban, güncel PHP, HTTP başlıkları, otomatik yedekler) yapıyoruz.
Paylaşımlı hosting’den daha izole bir ortama geçiş adımlarını planlarken, paylaşımlı hosting’den VPS’e geçiş rehberimizde anlattığımız kontrol listesi, taşıma sürecinizi çok daha öngörülebilir hale getirecektir.
Taşıma Stratejisi: Sıfırdan Kurulum mu, Temiz Yedekten Dönüş mü?
Tekrarlayan hack vakalarında belki de en kritik karar, “Bu WordPress kurulumunu kurtaralım mı, yoksa sıfırdan mı kuralım?” sorusudur. Net olmak gerekirse:
- Hack uzun süredir fark edilmediyse,
- Yedeklerinizin ne zamandan beri enfekte olduğunu bilmiyorsanız,
- Çok sayıda arka kapı bulunduysa,
en temiz yol çoğu zaman yeni ve tertemiz bir WordPress kurulumu yapıp, sadece temizlenmiş içerik ve medyayı taşımaktır.
Temiz kurulum + veri taşıma yaklaşımı
- Yeni sunucu veya yeni hesap üzerinde güncel bir WordPress kurulumu yapın.
- Eski siteden sadece temizlenmiş veritabanını ve medya dosyalarını alın.
- Temalarınızı ve eklentilerinizi kesinlikle resmi kaynaklardan yeniden indirin; eski dosyaları taşımayın.
- Yeni kurulumda SALT anahtarlarını, admin hesabını ve parolaları baştan güvenli şekilde oluşturun.
Staging ortamı kullanmanın avantajı
Taşıma öncesi, sitenizi bir staging (önizleme) ortamında ayağa kaldırıp test etmek, hem SEO açısından hem de kullanıcı deneyimi açısından büyük rahatlık sağlar. cPanel üzerinde staging kurulumunu adım adım anlattığımız WordPress staging ortamı rehberine göz atarak:
- Önce temiz sitenizi alt alan adında çalıştırabilir,
- Tüm fonksiyonları ve formları test edebilir,
- Daha sonra DNS yönlendirmesini yaparak kesintisiz geçiş sağlayabilirsiniz.
DCHost ile Pratik Yol Haritası ve Son Söz
Özetleyelim: WordPress siteniz sürekli hackleniyorsa sorun sadece “bir dosyada virüs var” meselesi değildir. Çoğu zaman; eksik yedekleme, zayıf parolalar, güncel olmayan eklentiler, yanlış dosya izinleri ve paylaşımlı hosting’in doğal sınırlarının birleşiminden oluşan yapısal bir problemdir. Bu yüzden çözüm de tek adımlık değildir; temizlik + sertleştirme + doğru altyapı seçimi üçlüsünü birlikte düşünmek gerekir.
DCHost tarafında müşterilerle çalışırken genelde şu adımları öneriyoruz:
- Mevcut sitede kapsamlı temizlik ve analiz (dosya, veritabanı, log’lar).
- WordPress ve cPanel için güvenlik sertleştirme, otomatik yedeklerin devreye alınması.
- Sitenin profilini (trafik, eklenti yükü, güvenlik ihtiyacı) değerlendirip, gerektiğinde VPS veya dedicated gibi daha izole çözümlere geçiş.
- Yeni ortamda staging → test → canlıya alma akışıyla kesintisiz taşıma.
Eğer siz de “Artık bu hack döngüsünü kırmak istiyorum” noktasındaysanız, önce bu yazıdaki adımlarla mevcut sitenizi olabildiğince temizleyin ve sertleştirin. Ardından, yedekleme, güvenlik ve altyapı tarafında daha kalıcı bir yol haritası çizmek için DCHost ekibiyle birlikte sitenizin profilini gözden geçirebilirsiniz. Böylece, her saldırıda panik olmak yerine, önceden tasarlanmış ve test edilmiş bir güvenlik ve taşıma stratejisi ile çok daha sakin kalırsınız.
