FUTIA
GÜVENLIK9 dk okuma

WordPress Hacklendi: 10 Adımlık Acil Müdahale Rehberi (2025)

WordPress siteniz hacklendiğinde ilk 24 saat kritik. 6 yıldır dijital pazarlama yapan birisi olarak 40+ hack vakasında uyguladığım adım adım kurtarma protokolünü paylaşıyorum.

WordPress Hacklendi: 10 Adımlık Acil Müdahale Rehberi (2025)
Miraç Eroğlu
17 Mayıs 2026

Sabah 07:30'da müşteriden mesaj: "Site açılmıyor, sayfalar Rusça bahis reklamlarına yönlendiriyor." Kahvemi içmeden önce karşılaştığım 4. hack vakasıydı o ay. WordPress sitelerinin %90'ı temel güvenlik hatalarından dolayı hackleniyor ve site sahiplerinin çoğu ilk 2 saatte yanlış kararlar alıyor. Ben Miraç, 6 yıldır sosyal medya pazarlama ve 2 yıldır AI otomasyon alanında çalışıyorum. FUTIA'da Hollanda'dan Türk markalarına hizmet verirken onlarca hack vakasıyla uğraştım. Bu yazıda panik yapmadan, veri kaybetmeden, SEO sıralamanızı koruyarak nasıl kurtulacağınızı anlatacağım. Çünkü yanlış bir hareket 3 aylık organik trafiğinizi 2 saatte bitirebilir.

WordPress'in pazar payı %43 olduğu için hackerların 1 numaralı hedefi. Ama asıl sorun şu: Çoğu site sahibi hacklendiğini 3-7 gün sonra fark ediyor. Google'ın blacklist'ine düşmüş, müşteri veritabanı çalınmış, sunucu kaynaklarınız kripto madenciliğine kullanılmış olabiliyor. İlk 24 saat içinde doğru adımları atmak, hem veri kaybını önlüyor hem de SEO hasarını minimize ediyor. Şimdi adım adım gidelim.

Adım 1: Siteyi Hemen Bakım Moduna Alın (İlk 10 Dakika)

Panik yapıp plugin silmeye başlamayın. İlk yapmanız gereken ziyaretçileri ve Google botlarını korumak. Ben her zaman şu sırayı izliyorum:

1. Hosting panelinden siteyi geçici olarak kapatın (maintenance mode) 2. Google Search Console'a giriş yapın, "Güvenlik Sorunları" bölümünü kontrol edin 3. Eğer "Bu site hacklenmiş olabilir" uyarısı varsa, hemen "İnceleme Talebi" oluşturmayın (henüz erken) 4. Cloudflare kullanıyorsanız "I'm Under Attack" modunu aktive edin

Bir müşterim (e-ticaret sitesi, aylık 15.000 ziyaretçi) hacklendiğinde ilk 2 saat siteyi açık tutmuş. Google 47 sayfa için "deceptive site" uyarısı verdi. Temizleme sonrası bile 3 ay boyunca organik trafik %60 düştü. Oysa bakım modu koysaydı, Google sadece 1 gün erişemezlik görecekti.

Bakım modu için WP Maintenance Mode plugini kullanabilirsiniz ama FTP üzerinden .htaccess ile de yapabilirsiniz:

RewriteEngine On
RewriteCond %{REMOTE_ADDR} !^123\.456\.789\.000
RewriteCond %{REQUEST_URI} !^/maintenance\.html$
RewriteRule ^(.*)$ /maintenance.html [R=307,L]

Kendi IP'nizi beyaz listeye alın ki siz çalışabilin. 307 redirect kullanın çünkü geçici olduğunu belirtir.

Adım 2: Tüm Şifreleri ve Erişimleri Değiştirin

Hackerlar genellikle backdoor bırakır. Siz malware'i temizleseniz bile 2 hafta sonra tekrar girebilirler. Şu erişimleri mutlaka değiştirin:

  • WordPress admin şifreleri (tüm kullanıcılar)
  • FTP/SFTP şifreleri
  • cPanel/hosting panel şifresi
  • Veritabanı şifresi (wp-config.php içindeki)
  • Cloudflare, Google Analytics gibi entegre servislerin şifreleri

Bir dönem kamupersonelhaber.com için güvenlik denetimi yaparken şunu gördüm: 3 eski çalışanın admin erişimi hala aktifti. Biri 2 yıl önce ayrılmış. Kullanıcı yönetimi %30'luk güvenlik açığı demek.

Şifre değiştirirken şunlara dikkat edin:

  • Minimum 16 karakter, büyük/küçük harf, rakam, sembol karışık
  • 1Password veya Bitwarden gibi şifre yöneticisi kullanın
  • "admin", "editor" gibi varsayılan kullanıcı adlarını değiştirin
  • wp-config.php içine şu satırları ekleyin:
define('FORCE_SSL_ADMIN', true);
define('DISALLOW_FILE_EDIT', true);

İkinci satır, admin panelinden tema/plugin düzenlemeyi kapatır. Hackerlar genellikle buradan kod enjekte eder.

Adım 3: Temiz Bir Yedekten Geri Dönün (Eğer Varsa)

En hızlı çözüm: Hackten önceki temiz yedeğe dönmek. Ama dikkat, yedek alma stratejiniz yoksa bu adım işe yaramaz.

Ben FUTIA'da müşterilere şu yedekleme sistemini kuruyorum:

1. Günlük otomatik yedek (UpdraftPlus Premium) 2. Yedekler Google Drive + Dropbox'a gönderiliyor (çift lokasyon) 3. Veritabanı ayrı, dosyalar ayrı yedekleniyor 4. Her yedek sonrası Slack bildirimi (başarılı/başarısız)

diolivo.com.tr için %340 trafik artışı sağladığımız dönemde bir hack denemesi oldu. Cloudflare firewall'ı durdurdu ama yine de 2 saatlik veri kaybı yaşadık. Neyse ki her 6 saatte bir yedek alıyorduk, 4 saat önceki yedeğe döndük.

Yedekten dönerken:

  • Sadece dosyaları değil, veritabanını da geri yükleyin
  • wp-content/uploads klasörünü ayrı kontrol edin (buraya backdoor gizlenebilir)
  • Geri yükleme sonrası tüm pluginleri ve temayı güncelleyin
  • Permalink ayarlarını kaydedin (SEO için kritik)

Eğer yedek yoksa veya yedek de enfekteli ise, Adım 4'e geçin.

Adım 4: Kötü Amaçlı Kodu Tespit Edin ve Temizleyin

Bu en zahmetli kısım. Manuel olarak binlerce dosyayı taramak imkansız. Ben şu araçları kullanıyorum:

Wordfence Security (Ücretsiz)

Deep scan özelliği tüm dosyaları WordPress resmi depolarıyla karşılaştırır. Değiştirilmiş core dosyaları, şüpheli plugin kodlarını gösterir. Tarama 15-45 dakika sürer (site büyüklüğüne göre).

Sucuri SiteCheck (Ücretsiz Online)

Dışarıdan tarama yapar, Google blacklist durumunu, bilinen malware imzalarını kontrol eder. Ama sadece yüzeysel tarama, sunucu dosyalarına erişemez.

MalCare (Ücretli, $99/yıl)

Otomatik temizleme özelliği var. Ben 3 vakada kullandım, %80 başarı oranı. Ama karmaşık backdoorları manuel temizlemeniz gerekebilir.

manuel tarama için FTP üzerinden şu klasörlere bakın:

  • /wp-content/uploads/ (PHP dosyası olmamalı)
  • /wp-includes/ (core dosyalar, değiştirilmiş olabilir)
  • /wp-content/themes/[aktif-tema]/ (functions.php en riskli)
  • /wp-content/plugins/ (bilinmeyen pluginler)

Şüpheli kod örnekleri:

eval(base64_decode(...)); // Şifreli kod çalıştırma
@include("/tmp/..."); // Gizli dosya dahil etme
preg_replace("/.*/e", ...); // Kod enjeksiyonu

Bir müşteride (italyanmutfagi.com için 618 tarif ürettiğimiz site değil, başka bir proje) wp-content/uploads/2019/03/favicon.ico.php adında backdoor bulduk. İçinde base64 encode edilmiş 4500 satır kod vardı. Decode edince Rus forum scripti çıktı.

Adım 5: WordPress Core, Tema ve Pluginleri Yeniden Yükleyin

Temizleme yeterli değil. Hackerlar WordPress core dosyalarını bile değiştirebilir. En güvenli yöntem:

1. WordPress.org'dan temiz core dosyaları indirin (aynı versiyon) 2. FTP ile /wp-admin/ ve /wp-includes/ klasörlerini silin 3. Yeni indirdiğiniz dosyaları yükleyin 4. wp-content/themes/ ve wp-content/plugins/ için aynısını yapın (aktif olanlar için)

Dikkat: wp-content/uploads/ ve wp-config.php'yi silmeyin. Uploads medya dosyalarınız, wp-config veritabanı bağlantınız.

Pluginler için:

  • Kullanmadığınız tüm pluginleri silin (deaktif değil, tamamen sil)
  • Nulled (korsan) plugin varsa kesinlikle kaldırın
  • Her plugin için WordPress.org'dan temiz versiyonu yükleyin

Ben doktorbul.com'da 79.000 doktor profili için programatik SEO yaparken 23 plugin kullanıyordum. Güvenlik denetiminde 8'ini gereksiz bulup sildim. Her plugin potansiyel güvenlik açığı demek.

Adım 6: Veritabanını Temizleyin

Malware sadece dosyalarda değil, veritabanında da saklanabilir. Özellikle wp_options ve wp_posts tablolarına injection yapılır.

phpMyAdmin üzerinden şu SQL sorgularını çalıştırın:

-- Şüpheli admin kullanıcıları bul
SELECT * FROM wp_users WHERE user_login NOT IN ('bilinen_admin1', 'bilinen_admin2');

-- wp_options tablosunda base64 kodlu değerler
SELECT * FROM wp_options WHERE option_value LIKE '%base64%';

-- Spam yorumlar
DELETE FROM wp_comments WHERE comment_approved = 'spam';

-- Eski post revizyonları (performans için)
DELETE FROM wp_posts WHERE post_type = 'revision';

Bir vakada wp_options tablosunda "siteurl" değeri değiştirilmişti. Site Rus bahis sitesine redirect ediyordu. phpMyAdmin'den doğru URL'yi geri yazdık.

Ayrıca:

  • wp_posts içinde