← Blog
Guvenlik8 dk okumaMegis

Web Sitesi Guvenlik Denetimi: Kapsamli Guvenlik Taramasi

Web sitenizin guvenlik durumunu kapsamli sekilde denetleyerek zafiyetleri tespit edin ve giderin.

Web Sitesi Güvenlik Denetimi: Kapsamlı Kontrol Listesi

Web sitenizin güvenliği, hem kullanıcı verilerini korumak hem de arama motoru sıralamalarını sürdürmek açısından kritik öneme sahiptir. Google, güvenlik açıkları tespit ettiği siteleri sıralamalardan düşürebilir veya tamamen kaldırabilir. Bu rehberde, kapsamlı bir web sitesi güvenlik denetimi için izlemeniz gereken tüm adımları, kontrol noktalarını ve en iyi uygulamaları detaylı şekilde ele alıyoruz.

1. SSL/TLS Sertifikası Kontrolü

HTTPS, modern web'in temel güvenlik katmanıdır. Google 2014'ten bu yana SSL'i bir sıralama faktörü olarak değerlendirmektedir. Güvenlik denetiminize SSL kontrolüyle başlayın.

  • Sertifika geçerliliği: SSL sertifikanızın son kullanma tarihini kontrol edin. Süresi dolmuş sertifikalar tarayıcı uyarılarına neden olur ve kullanıcı güvenini zedeler.
  • Sertifika türü: Domain Validation (DV), Organization Validation (OV) veya Extended Validation (EV) sertifikalardan hangisini kullandığınızı bilin. E-ticaret siteleri için minimum OV önerilir.
  • TLS sürümü: TLS 1.2 veya 1.3 kullandığınızdan emin olun. TLS 1.0 ve 1.1 sürümleri güvenlik açıkları nedeniyle tüm büyük tarayıcılar tarafından artık desteklenmemektedir.
  • Mixed content: Tüm kaynakların (görseller, scriptler, CSS dosyaları) HTTPS üzerinden yüklendiğini doğrulayın. Tek bir HTTP kaynağı bile tarayıcıda uyarıya neden olabilir.
  • HSTS yapılandırması: HTTP Strict Transport Security başlığını etkinleştirerek tarayıcıları her zaman HTTPS kullanmaya zorlayın.

2. HTTP Güvenlik Başlıkları

HTTP güvenlik başlıkları, tarayıcılara sitenizle nasıl etkileşime geçeceklerini söyler. Doğru yapılandırılmış başlıklar, birçok yaygın saldırı vektörünü engeller.

BaşlıkİşlevÖnerilen Değer
Content-Security-PolicyXSS ve veri enjeksiyonu korumasıdefault-src 'self'; script-src 'self'
X-Content-Type-OptionsMIME tipi koklama engellemenosniff
X-Frame-OptionsClickjacking korumasıDENY veya SAMEORIGIN
Referrer-PolicyReferrer bilgisi kontrolüstrict-origin-when-cross-origin
Permissions-PolicyTarayıcı özellik erişimicamera=(), microphone=(), geolocation=()
X-XSS-ProtectionXSS filtresi (eski tarayıcılar)1; mode=block
Strict-Transport-SecurityHTTPS zorunluluğumax-age=31536000; includeSubDomains

Başlıklarınızı securityheaders.com gibi ücretsiz araçlarla test edebilirsiniz. A+ notu almayı hedefleyin.

3. Yaygın Güvenlik Açıkları Taraması

OWASP Top 10 listesi, web uygulamalarındaki en yaygın güvenlik açıklarını tanımlar. Güvenlik denetiminizde bu açıkları sistematik olarak kontrol edin.

Kritik Kontrol Noktaları

  • SQL Injection: Kullanıcı girdilerinin veritabanı sorgularına doğrudan eklenmediğini doğrulayın. Prepared statement ve parametreli sorgular kullanın.
  • Cross-Site Scripting (XSS): Tüm kullanıcı girdilerini hem sunucu hem istemci tarafında sanitize edin. HTML entity encoding uygulayın.
  • Cross-Site Request Forgery (CSRF): Form gönderimlerinde CSRF token kontrolü yapıldığından emin olun. SameSite cookie özniteliğini kullanın.
  • Broken Authentication: Oturum yönetimi mekanizmalarını gözden geçirin. Güçlü parola politikaları, hesap kilitleme ve çok faktörlü kimlik doğrulama (MFA) uygulayın.
  • Security Misconfiguration: Varsayılan kimlik bilgilerini değiştirin, hata mesajlarında hassas bilgi göstermeyin, dizin listelemeyi devre dışı bırakın.
  • Insecure Deserialization: Güvenilmeyen kaynaklardan gelen verilerin doğrudan deserializasyonunu engelleyin.
  • Broken Access Control: Her endpoint için yetkilendirme kontrolü yapıldığını doğrulayın. Yatay ve dikey yetki yükseltme testleri uygulayın.

4. Sunucu ve Altyapı Güvenliği

Web uygulaması güvenliği kadar sunucu ve altyapı güvenliği de önemlidir. Aşağıdaki kontrolleri düzenli olarak yapın:

  1. Yazılım güncellemeleri: İşletim sistemi, web sunucusu (Nginx, Apache), programlama dili ve framework sürümlerinin güncel olduğundan emin olun. Bilinen güvenlik açıkları için yamaları hemen uygulayın.
  2. Güvenlik duvarı yapılandırması: Web Application Firewall (WAF) kullanarak bilinen saldırı kalıplarını engelleyin. Cloudflare, AWS WAF veya ModSecurity gibi çözümleri değerlendirin.
  3. Port taraması: Gereksiz açık portları kapatın. Sadece HTTP (80), HTTPS (443) ve SSH (tercihen standart olmayan port) açık olmalıdır.
  4. SSH güvenliği: Parola ile girişi devre dışı bırakın, SSH anahtar çifti kullanın. Root erişimini kısıtlayın.
  5. Yedekleme stratejisi: Günlük otomatik yedekleme yapın, yedekleri farklı bir lokasyonda saklayın ve düzenli olarak geri yükleme testleri yapın.

5. CMS ve Eklenti Güvenliği

WordPress, Joomla veya Drupal gibi bir CMS kullanıyorsanız, bu alanlar özel dikkat gerektirir:

  • CMS çekirdek güncellemeleri: Ana CMS sürümünü her zaman güncel tutun. Güvenlik yamaları yayınlandığında 24-48 saat içinde uygulayın.
  • Eklenti denetimi: Kullanılmayan eklentileri kaldırın. Aktif eklentilerin son güncelleme tarihini kontrol edin; 6 aydan uzun süredir güncellenmeyen eklentiler risk oluşturabilir.
  • Tema güvenliği: Güvenilir kaynaklardan tema kullanın. Nulled (kırık) temalar kesinlikle kullanmayın — genellikle arka kapı (backdoor) içerirler.
  • Admin paneli koruması: Varsayılan admin URL'sini değiştirin, IP bazlı erişim kısıtlaması uygulayın ve giriş denemesi sınırlaması aktifleştirin.
  • Dosya izinleri: Dizinler için 755, dosyalar için 644 izinlerini ayarlayın. wp-config.php gibi hassas dosyaları 400 veya 440 olarak ayarlayın.

6. Penetrasyon Testi Temelleri

Penetrasyon testi (pentest), gerçek saldırganların bakış açısından sisteminizi test etme sürecidir. Profesyonel bir pentest pahalı olsa da, temel seviyede kendi testlerinizi yapabilirsiniz.

Temel Pentest Adımları

  1. Bilgi toplama (Reconnaissance): Whois sorguları, DNS kayıtları, subdomain taraması ve teknoloji tespiti yapın. Shodan, theHarvester ve Sublist3r gibi araçlar kullanılabilir.
  2. Güvenlik açığı taraması: Nmap ile port taraması, Nikto ile web sunucusu taraması ve OWASP ZAP ile otomatik güvenlik açığı taraması yapın.
  3. Manuel test: Giriş formlarında SQL injection, yorum alanlarında XSS ve API endpoint'lerinde yetkisiz erişim denemeleri yapın.
  4. Raporlama: Bulunan tüm güvenlik açıklarını kritiklik derecesine göre sınıflandırın (Kritik, Yüksek, Orta, Düşük) ve düzeltme önerilerini belgeleyin.

7. İzleme ve Olay Müdahale Planı

Güvenlik denetimi tek seferlik bir işlem değildir. Sürekli izleme ve hızlı müdahale planı oluşturmak, olası saldırıların etkisini minimize eder.

  • Log yönetimi: Web sunucusu, uygulama ve veritabanı loglarını merkezi bir sistemde toplayın. Anormal aktiviteleri tespit etmek için uyarılar oluşturun.
  • Uptime izleme: Sitenizin erişilebilirliğini 7/24 izleyin. Kesintilerde anında bildirim alacak şekilde yapılandırın.
  • Dosya bütünlük kontrolü: Kritik dosyalardaki değişiklikleri izleyen bir sistem kurun. Yetkisiz değişiklikler tespit edildiğinde uyarı verin.
  • Olay müdahale planı: Güvenlik ihlali durumunda kimler bilgilendirilecek, hangi adımlar izlenecek ve iletişim nasıl yönetilecek — bunları önceden belirleyin ve yazılı hale getirin.
  • Düzenli denetim takvimi: Kapsamlı güvenlik denetimini en az yılda iki kez, küçük kontrolleri ise aylık olarak yapın.

8. Güvenlik Denetimi Kontrol Listesi Özeti

Aşağıdaki kontrol listesini düzenli olarak gözden geçirerek sitenizin güvenlik durumunu takip edebilirsiniz:

KategoriKontrolSıklık
SSL/TLSSertifika geçerliliği ve yapılandırmasıAylık
Güvenlik başlıklarıTüm başlıkların doğru yapılandırılmasıAylık
Yazılım güncellemeleriCMS, eklenti ve framework güncellemeleriHaftalık
Güvenlik açığı taramasıOtomatik açık taramasıAylık
YedeklemeYedeklerin alınması ve test edilmesiGünlük / Çeyreklik test
Erişim kontrolüKullanıcı yetkileri ve şifre politikalarıÇeyreklik
Penetrasyon testiKapsamlı güvenlik testiYılda 2 kez
Log incelemeAnormal aktivite kontrolüHaftalık

Sonuç

Web sitesi güvenlik denetimi, işletmenizin dijital varlığını korumak için vazgeçilmez bir süreçtir. SSL yapılandırmasından güvenlik başlıklarına, yaygın açık taramalarından penetrasyon testine kadar kapsamlı bir yaklaşım benimsemek, olası saldırıları önlemenin en etkili yoludur. Bu kontrol listesini düzenli olarak uygulayarak, hem kullanıcı güvenini hem de arama motoru sıralamalarınızı koruyabilirsiniz. Güvenlik sürekli bir süreçtir — tek seferlik bir denetimle değil, sürekli izleme ve iyileştirmeyle sağlanır.

#guvenlik denetimi#security audit#zafiyet taramasi#web guvenlik