secaudit.eu
Uyumluluk

WordPress güvenlik denetim raporu: hangi kanıtlar saklanmalı

WordPress güvenlik denetim raporu nasıl hazırlanır: saklanacak altı kayıt, iyi kanıtın özellikleri, tedarikçi ve sigorta soruları ile hazır bir şablon.

Yazar: , AngelForce OÜ 7 dk okuma

Diğer diller: English Deutsch Français Español Italiano Polski Português

Bir müşteri, denetçi ya da sigortacı WordPress sitenizin güvenli olduğunu kanıtlamanızı istediğinde "her şeyi güncel tutuyoruz" cevap sayılmaz. Kayıt isterler. Bir WordPress güvenlik denetim raporu, bu kayıtları başkasının okuyup doğrulayabileceği tek bir belgede toplar. Bu yazıda neleri saklamanız gerektiğini, işe yarar bir kaydın nasıl göründüğünü ve bunu ikinci bir mesaiye dönüştürmeden nasıl güncel tutacağınızı bulacaksınız.

WordPress güvenlik denetim raporu neden önemli: iddia etmek değil, göstermek

GDPR (AB Genel Veri Koruma Tüzüğü) uyarınca veri sorumlusu, uyumu kanıtlayabilmek zorundadır. İlkeleri uygulamak yetmez (Madde 5(2)). Madde 32(1)(d) ayrıca güvenlik önlemlerinizi düzenli olarak test etmek, değerlendirmek ve ölçmek için bir süreç öngörür. Bu süreç gerçekten işliyorsa arkasında bir kayıt izi kalır.

Bu, siteyle çalışan kişiler için de geçerli. Yönetici erişimi olan hosting sağlayıcıları ve ajanslar genellikle Madde 28 anlamında veri işleyendir. Müşterileri de onlardan aynı türde kanıt isteyecektir. Önlemlerin kendisinin ne olması gerektiği için WordPress için GDPR Madde 32 rehberimize bakın.

Dokümantasyonun sınırları var. Önlemlerin uygulandığına dair kanıt sunabilir, ama bu önlemlerin etkili olmaya devam ettiğini tek başına göstermez. Bir siteyi güvenli kılmaz; yalnızca evrak da GDPR yükümlülüklerinizi karşılamaz. Güncelliğini yitirmiş dokümantasyon, hiç olmamasından bile kötü olabilir. Geçen yıl kaldırdığınız bir eklentiyi anlatan yedekleme politikası, denetçiye kayıtlarınızın bakımsız olduğunu söyler.

Denetçilerin ve müşterilerin gerçekte baktığı altı kayıt

Diyagram: beş kutuda gruplanmış altı kanıt kaydı, güncelleme sıklıklarıyla birlikte tek bir güvenlik denetim raporuna akıyor
Her kaydın kendi ritmi vardır; rapor, hepsinin anlık görüntüsüdür

1. Envanter. Çekirdek sürümü, sürümleriyle birlikte tüm eklentiler ve temalar, hosting sağlayıcısı, PHP sürümü ve kullandığınız üçüncü taraf hizmetler burada listelenir. Her bileşenin hangi kişisel verilere dokunduğu da not edilir. İşe yarar bir kayıt şöyle olur: "İletişim formu eklentisi, girdileri veritabanında saklar (ad, e-posta, mesaj); girdiler politikamız gereği 90 gün sonra silinir." Bir şey değiştiğinde envanteri güncelleyin ve her çeyrekte gerçek durumla karşılaştırın.

2. Güncelleme günlüğü. Her satırda tarih, bileşen, eski ve yeni sürüm, güncellemeyi kimin yaptığı ve otomatik çalışıp çalışmadığı yer alır. Her değişiklik için ayrı kayıt ekleyin. Otomatik güncellemeler de sayılır, ancak sonrasında sitenin hâlâ çalıştığını birinin doğrulaması gerekir.

3. Tarama raporları. Tarih damgalı raporları ve takip kayıtlarını, bir önceki raporun üzerine yazmak yerine belgelenmiş bir saklama politikası çerçevesinde tutun. Her bulguyu ve nasıl sonuçlandığını kaydedin: düzeltildi, gerekçesiyle kabul edildi ya da yanlış pozitif. On bulgusu olup takibi bulunmayan bir rapor, tarama yaptığınızı gösterir; sonuçlara göre harekete geçtiğinizi göstermez.

4. Yedekler ve geri yükleme testleri. Yedekleme takvimini, yedeklerin nerede saklandığını, ne kadar tutulduğunu, ayrıca son deneme geri yüklemesinin tarihini ve sonucunu kaydedin. Başarıyla biten bir yedekleme işi, geri yüklemenin çalıştığını kanıtlamaz. Pratik bir başlangıç olarak geri yüklemeyi üç ayda bir ve büyük değişikliklerden sonra test edin; sıklığı risklerinize ve kurtarma ihtiyaçlarınıza göre ayarlayın. Geri yüklenen kişisel verileri yalıtılmış bir test ortamında koruyun.

5. Erişim listesi. Kimin hangi role sahip olduğunu, her hesapta iki faktörlü kimlik doğrulamanın açık olup olmadığını, erişimlerin en son ne zaman gözden geçirildiğini ve ayrılan çalışanların ya da ajansların erişiminin ne zaman kaldırıldığını kaydedin. Her değişiklikte güncelleyin, ayda bir gözden geçirin.

6. Olay günlüğü. Bildirmemeye karar verdiğiniz kişisel veri ihlalleri dahil her güvenlik olayını kaydedin. Madde 33(5), tüm ihlallerin belgelenmesini şart koşar: olgular, etkiler ve alınan önlemler. Bildirimin kendisi 72 saatlik ihlal rehberimizde ele alınıyor.

İyi kanıt nasıl görünür (ve neler kanıt sayılmaz)

İyi kayıtların dört ortak özelliği vardır:

  • Her kayıt tarihlidir.
  • Her kayıtta, onu giren kişinin adı yer alır.
  • Tüm kayıtlar tek ve tutarlı bir yerde durur.
  • Kayıtlar rutinin parçası olarak yazılır; denetimden bir hafta önce yeniden kurgulanmaz.

Bir denetçi, günlüğün tek bir öğleden sonra yazıldığını çoğu zaman anlar.

Aynı olgunun iki versiyonunu karşılaştırın. Zayıf olan: "Eklentileri düzenli güncelliyoruz." Daha güçlü şablon: "[tarih], [eklenti], [eski sürüm] → [yeni sürüm], otomatik güncelleme, [yapılan test], kontrol eden: [ad]." Her yer tutucuyu gerçek bilgilerle değiştirin. İkincisi doğrulanabilir ve bir alışkanlığı gösterir.

Dışa aktarımlar ekran görüntülerinden iyidir. Eklenti sürümlerinin CSV dosyası ya da PDF tarama raporu verisini ve tarihini korur. Panelin kırpılmış bir ekran görüntüsü çok az şey kanıtlar ve içinde arama yapılamaz. Ekran görüntülerini yalnızca dışa aktarımı olmayan ayarlar için kullanın ve dosya adına tarihi ekleyin.

Kayıtları WordPress sunucusunun dışında saklayın. Site ele geçirilirse saldırgan kanıtlarınızı değiştirememeli; üstelik temizlik sürecinde de bu kayıtlara ihtiyacınız olacak. Erişim denetimli bir ortak sürücü pratik bir seçenek olabilir; düzenleme yetkisini kısıtlayın, sürüm geçmişini açın ve WordPress sitesinden ayrı kimlik bilgileriyle koruyun.

Ölçülü kalın. Küçük bir işletme için her kayıt türüne ayrı sekme açılmış bir elektronik tablo ve tarihli PDF'lerin durduğu bir klasör, gayet yeterli bir kanıt dosyasıdır. On sayfalık bir site için kimse bir yönetişim platformu beklemez.

NIS2 kapsamındaki müşterilerin tedarikçi anketlerini yanıtlamak

Ajanslar, serbest çalışanlar ve eklenti satıcıları, NIS2 doğrudan kendilerine uygulanmasa bile güvenlik anketleri alır. Sebep, NIS2 Direktifi'nin 21(2)(d) maddesidir. Direktif tedarik zinciri güvenliği önlemleri öngörür; bu da müşterilerin tedarikçilerden kanıt istemesine yol açabilir. Geçerli yükümlülükler ulusal uygulama mevzuatından gelir: ülkenizin ulusal NIS2 yasasını kontrol edin. Müşterinizin ya da sizin kapsamda olup olmadığınız ayrı bir sorudur ve NIS2 ve WordPress siteniz yazısında ele alınıyor.

Sorular müşteriye ve sözleşmeye göre değişir; bu yüzden elinizdeki gerçek anketi okuyun. Konular genellikle Madde 21(2) önlemlerini izler ve her biri zaten tuttuğunuz bir kayda karşılık gelir:

Soru alanıKanıtınız
Olay yönetimiOlay günlüğü
Yedekleme, süreklilikYedek ve geri yükleme testi kaydı
Zafiyet yönetimiGüncelleme günlüğü, tarama raporları
Erişim kontrolü, MFAErişim listesi
ŞifrelemeEnvanter (TLS, hosting)
Varlık yönetimiEnvanter

Yalnızca kanıtlayabildiğiniz şeyleri yanıtlayın. Form evet/hayır seçeneği sunuyorsa kısa bir not ekleyin ya da belgeyi sunmayı teklif edin, örneğin: "Evet, aylık. Son üç tarama raporu talep üzerine sunulabilir." Bir şey kısmen uygulanıyorsa bunu söyleyin. Tedarikçi sözleşmesindeki abartılı bir yanıt başlı başına bir risktir.

Siber sigorta soruları: aynı kanıtları kullanın, gerçek formu okuyun

Sigortacılar kendi sorularını sorar ve ifadeler şirketten şirkete değişir. Verdiğiniz yanıtlar, ileride tazminat talep ederseniz önem taşıyabilir. Doğru yanıtlayın, gönderdiğinizin tarihli bir kopyasını saklayın ve kurulumunuz değiştiğinde yanıtları yeniden kontrol edin. Yeni bir hosting sağlayıcısı ya da bırakılan bir 2FA zorunluluğu bu tür değişikliklere örnektir.

Yedekleme, çok faktörlü kimlik doğrulama ve yama yönetimi gibi yaygın başlıklar aynı altı kayda denk gelir. Belirli bir poliçenin ne gerektirdiği ve yanıtlarınızın teminatı nasıl etkilediği ise poliçe metnine ve brokerınıza sorulacak bir meseledir.

Dokümantasyonu ek iş çıkarmadan güncel tutmak

Aşağıdaki takvim pratik bir başlangıç noktasıdır, yasal bir asgari süre değildir. Kendi risklerinize, değişim hızınıza ve sözleşme gereklerinize göre uyarlayın:

Ne zamanNeyi güncelleyin
Her değişiklikteGüncelleme günlüğü, erişim listesi
AylıkTarama raporları, erişim incelemesi
Üç ayda birGeri yükleme testi, envanter kontrolü
YıllıkTam gözden geçirme, yönetim onayı

Yıllık gözden geçirmeyi yetkili biri imzalamalıdır. Ulusal NIS2 mevzuatı kapsamındaki kuruluşlarda Madde 20, yönetim organlarının siber güvenlik önlemlerini onaylamasını, bunları denetlemesini ve eğitim almasını şart koşar. Yıllık bir imza tek başına süregelen gözetimi göstermez; karar, gözden geçirme ve takip kayıtlarını saklayın.

Dışa aktarımları otomatikleştirin. WP-CLI ile sunucuda aylık bir cron işi ya da iş istasyonunuzdan çalıştırılan bir betik, tarihli dosyalar üretebilir:

wp core version > core-$(date +%F).txt
wp plugin list --format=csv > plugins-$(date +%F).csv
wp theme list --format=csv > themes-$(date +%F).csv
wp user list --role=administrator --format=csv > admins-$(date +%F).csv

Komutları web kök dizininin dışındaki bir klasörden çalıştırın ve WP-CLI'yi --path=/path/to/wordpress ile siteye yönlendirin; böylece dışa aktarımlara internetten asla erişilemez. Ardından dosyaları kanıt depolama alanınıza kopyalayın. Yönetici dışa aktarımı e-posta adreslerini içerir, bu nedenle onu kişisel veri olarak ele alın.

Tarama raporları da aynı klasöre girer. secaudit.eu'nun Security Audit & Compliance eklentisi, bulguları GDPR Madde 32, NIS2 Madde 21 ve OWASP Top 10:2025 ile eşleştirilmiş bir rapor ve CSV olarak dışa aktarır; bunları doğrudan kanıt klasörüne koyabilirsiniz. Böyle bir rapor, bir kontrolün yapıldığını ve neyi bulduğunu gösterir, daha fazlasını değil. Her kaydın arkasındaki önlemler için WordPress güvenlik kontrol listemizi kullanın.

Şablon: WordPress güvenlik denetim raporu taslağı

Bu yapıyı kopyalayın ve altı kaydınızdan doldurun:

  1. Kapsam ve tarih: hangi site(ler), hangi dönem, raporu kim yazdı.
  2. Site ve sorumlu kişiler: sahibi, teknik irtibat, veri işleyenler (hosting, ajans) ve veri işleme sözleşmelerinin durumu (Madde 28).
  3. Envanter özeti: çekirdek, PHP, eklenti ve tema sayısı, üçüncü taraf hizmetler, işlenen kişisel veriler.
  4. Uygulanan önlemler, Madde 32(1)(a)–(d) ile eşleştirilmiş olarak: şifreleme; gizlilik, bütünlük ve erişilebilirlik; geri yükleme yeteneği; düzenli test.
  5. Güncelleme ve zafiyet durumu: güncel olmayan bileşenler, bilinen zafiyetler, planlanan düzeltmeler.
  6. Tarama sonuçları ve giderme: her taramanın tarihi, bulgular, çözüm.
  7. Yedekleme ve geri yükleme testleri: takvim, depolama, saklama süresi, son test tarihi ve sonucu.
  8. Erişim incelemesi: role göre hesaplar, 2FA kapsamı, kaldırılan hesaplar, inceleme tarihi.
  9. Kaydedilen olaylar ve ihlaller (Madde 33(5)), bildirilmeyenler dahil.
  10. Açık riskler ve planlanan eylemler; her biri için bir sorumlu ve bir bitiş tarihi.
  11. Onay: ad, görev, tarih.

Bu ay iki şeyle başlayın: bir envanter dışa aktarımı ve bir hazırlık (staging) sitesine tek bir deneme geri yüklemesi. İkisi birlikte, yukarıdaki tablodaki anket alanlarının birkaçını karşılar. Klasöre tarihli tarama raporları eklemek için secaudit.eu'nun denetim eklentisi sitenizde kontrolleri çalıştırır ve sonuçları dışa aktarır → secaudit.eu.

Bu yazı genel bilgilendirme amaçlıdır, hukuki danışmanlık değildir.

SSS

Güvenlik kayıtlarını ne kadar süre saklamalıyım?

GDPR bu kayıtlar için tek bir saklama süresi belirlemez. Uyumu kanıtlamak için ihtiyaç duyduğunuz sürece saklayın ve sektörünüzün ya da sözleşmelerinizin belirli süreler öngörüp öngörmediğini kontrol edin. Saklama sürelerini kayıt türüne ve amaca göre belirleyin; kurulum hâlâ kullanımda diye kişisel verileri süresiz tutmayın. Kayıtların içindeki kişisel veriler, örneğin yönetici e-posta adresleri, gerekenden uzun süre saklanmamalıdır.

Temiz bir denetim raporu GDPR'a uyduğumuz anlamına gelir mi?

Hayır. Rapor, belirli teknik kontrollerin belirli bir tarihte geçildiğini gösterir. GDPR ayrıca hukuki dayanakları, rızayı, veri işleyen sözleşmelerini, ilgili kişi haklarını ve daha fazlasını kapsar. Güvenlik tarafında bile temiz bir tarama, ekibinizin parolaları ya da oltalama saldırılarını nasıl yönettiği hakkında hiçbir şey söylemez.

Dokümantasyonu bizim yerimize ajansımız tutabilir mi?

Evet; üstelik ajansların elinde çoğu zaman en iyi veri bulunur. Yine de hesap verebilirlik veri sorumlusunda kalır. Dokümantasyon görevlerini Madde 28 sözleşmesine ekleyin: neyin kaydedileceğini, ne sıklıkla kaydedileceğini ve size erişimin nasıl sağlanacağını belirtin. Kanıt ajansla birlikte gitmesin diye kendi kopyanızı da tutun.

Kendi sitenizi kontrol edin

Security Audit & Compliance, secaudit.eu’nun WordPress eklentisidir: zararlı yazılımları, gizli spam’i, değiştirilmiş çekirdek dosyalarını ve açıklı kodu tarar; bulguları GDPR Md. 32, NIS2 Md. 21 ve OWASP Top 10 ile eşleştirir.

Eklentinin neleri kontrol ettiğini görün
Melike Görel

Melike Görel, secaudit.eu’nun arkasındaki Tallinn merkezli yazılım şirketi AngelForce OÜ adına WordPress güvenliği ve AB uyumluluğu rehberlerini yazıyor.

Yapay zekâ desteğiyle hazırlanmış ve yayından önce doğruluğu kontrol edilmiştir. Bu makale genel bilgi niteliğindedir, hukuki danışmanlık değildir.