Sunucu GüvenliğiDestek

Web Sitesi Güvenlik Testi Nasıl Yapılır? Kendi Sitenizi Kontrol Adımları

Kısa cevap

Web sitesi güvenlik testi; SSL yapılandırması, HTTP güvenlik başlıkları, yazılım güncelliği, açıkta kalan dosya/dizinler ve form girdi doğrulaması gibi temel kontrollerin sırayla incelenmesiyle yapılır. Site sahibi bu kontrollerin çoğunu tarayıcı ve ücretsiz araçlarla kendi yapabilir; derin zafiyet analizi ve sömürü denemeleri içinse profesyonel sızma testi gerekir.

Web sitenizin güvenliğini test etmek için pahalı bir ekip beklemenize gerek yok; temel kontrollerin çoğunu tarayıcınız ve birkaç ücretsiz araçla siz de yapabilirsiniz. Bu kontroller, sahada gördüğümüz saldırıların büyük bölümüne yol açan basit ihmalleri (süresi dolmuş sertifika, güncellenmemiş yazılım, açıkta unutulmuş yedek dosyası) ortaya çıkarır. Bu yazıda kendi sitenizde adım adım neye bakacağınızı, sonra da hangi noktada profesyonel bir teste ihtiyaç duyacağınızı anlatıyoruz.

Önemli bir sınır çizelim: kendi sitenizi test etmek serbesttir, ancak burada anlatılan tekniklerin hiçbirini izniniz olmayan bir sitede denemeyin. Başkasına ait bir sitede izinsiz yapılan en masum görünen deneme bile yasal olarak yetkisiz erişim sayılır. Aşağıdaki adımların hepsi, sahibi olduğunuz ya da yazılı izin aldığınız siteler içindir.

1. SSL/TLS Yapılandırmasını Kontrol Edin

İlk adım, sitenizin HTTPS üzerinden düzgün şifreli sunulup sunulmadığını ve sertifikanın geçerliliğini doğrulamaktır; süresi dolmuş, yanlış yapılandırılmış ya da zayıf şifreleme kullanan bir sertifika hem güvenlik hem güven sorunudur. Tarayıcının adres çubuğundaki kilit simgesine tıklayarak sertifikanın geçerli olduğunu ve doğru alan adına ait olduğunu hemen görebilirsiniz.

Daha derin bir kontrol için ücretsiz SSL test servisleri sitenize A-F arası bir not verir ve şu noktaları işaretler: zayıf şifreleme takımları, eski protokol sürümleri (TLS 1.0/1.1 kapatılmalı), eksik ara sertifikalar ve HTTP'den HTTPS'e yönlendirme yapılıp yapılmadığı. HTTP ile gelen ziyaretçi otomatik olarak HTTPS'e taşınmıyorsa, bu bir açıktır. Ayrıca HSTS başlığının aktif olması, tarayıcının siteye her zaman şifreli bağlanmasını zorlar.

Bir noktaya özellikle dikkat edin: "karışık içerik" (mixed content) sorunu. Sitenizin ana sayfası HTTPS ile sunulsa bile, sayfa içinde HTTP üzerinden yüklenen bir görsel, script ya da stil dosyası varsa şifrelemenin sağladığı güvence delinir ve tarayıcı ziyaretçiye uyarı gösterebilir. Geliştirici araçlarının konsolunda beliren karışık içerik uyarıları, bu tür kaçakları hemen ortaya koyar. Sertifikanın yenilenme tarihini de takviminize eklemenizi öneririz; süresi dolan bir sertifika, sitenizi ziyaretçiler için bir anda erişilemez ya da güvenilmez hâle getirir.

2. HTTP Güvenlik Başlıklarını İnceleyin

Sunucunuzun tarayıcıya gönderdiği güvenlik başlıklarının eksik olup olmadığını kontrol ediyoruz; bu başlıklar birçok yaygın saldırıya (tıklama hırsızlığı, içerik enjeksiyonu, MIME karışıklığı) karşı ilk savunma hattıdır. Başlıkları görmek için tarayıcının geliştirici araçlarındaki "Network" sekmesinden sayfa isteğine tıklayıp yanıt başlıklarına bakabilir ya da bir komutla çekebilirsiniz:

curl -sI https://siteniz.com | grep -iE "strict-transport|content-security|x-frame|x-content-type|referrer-policy"

Aranan temel başlıklar şunlardır:

  • Strict-Transport-Security (HSTS): Tarayıcıyı yalnızca HTTPS kullanmaya zorlar.
  • Content-Security-Policy (CSP): Sayfada hangi kaynakların çalışabileceğini sınırlar; XSS etkisini büyük ölçüde azaltır.
  • X-Frame-Options / frame-ancestors: Sitenizin başka bir sayfaya çerçeve içinde gömülmesini (clickjacking) engeller.
  • X-Content-Type-Options: nosniff: Tarayıcının dosya türünü tahmin etmesini engeller.
  • Referrer-Policy: Dış sitelere gönderilen yönlendiren bilgisini kısıtlar.

Bu başlıkların eksik olması tek başına sitenizin hacklenmesi anlamına gelmez, ancak bir açık ortaya çıktığında etkisini büyütür. Eklenmeleri genellikle sunucu ya da uygulama yapılandırmasında birkaç satırla mümkündür. Ücretsiz güvenlik başlığı tarayıcıları, sitenize bir not vererek hangi başlığın eksik olduğunu ve nasıl ekleneceğini gösterir; bu, teknik ekibinizle paylaşabileceğiniz somut bir yapılacaklar listesi oluşturmanın en hızlı yoludur. Yalnız dikkat edin: özellikle Content-Security-Policy başlığını sıkı bir değerle eklerken sitenizdeki bazı işlevlerin (dış scriptler, gömülü içerik) bozulabileceğini test etmeden yayına almayın.

3. Yazılım ve Bileşenlerin Güncelliğini Doğrulayın

Sitenizi çalıştıran altyapının (CMS, eklentiler, temalar, kütüphaneler) güncel sürümde olduğunu kontrol ediyoruz; internetteki otomatik saldırıların çoğu, bilinen ve yaması çıkmış açıklara sahip eski sürümleri hedef alır. WordPress, Joomla gibi sistemlerde yönetim panelindeki güncelleme bildirimleri ilk uğrak noktanızdır.

Özellikle dikkat edilmesi gerekenler: uzun süredir güncellenmemiş ya da geliştirici tarafından terk edilmiş eklentiler, kullanılmadığı hâlde kurulu bırakılmış temalar ve sunucudaki PHP/veritabanı sürümünün desteklenip desteklenmediği. Kullanmadığınız her eklenti ve tema, silinmesi gereken bir saldırı yüzeyidir. Devre dışı bırakmak yetmez; kurulu kaldığı sürece dosyaları sunucuda durur ve bilinen bir açık üzerinden tetiklenebilir. Bu yüzden kullanılmayan bileşenleri devre dışı bırakmak değil, tamamen silmek gerekir. WordPress kullanıyorsanız WordPress sitem hacklendi belirtileri yazımız, güncelliğin ihmal edildiği sitelerde en sık gördüğümüz sonuçları özetliyor.

4. Açıkta Kalan Dizin ve Dosyaları Arayın

Sunucunuzda yanlışlıkla herkese açık bırakılmış hassas dosya ve dizinlerin olup olmadığını kontrol ediyoruz; yedek dosyaları, yapılandırma kalıntıları ve listelenebilir dizinler, saldırgana altyapınız hakkında hediye niteliğinde bilgi verir. Tarayıcınıza doğrudan bazı yaygın yolları yazarak hızlı bir kontrol yapabilirsiniz:

https://siteniz.com/.git/
https://siteniz.com/backup.zip
https://siteniz.com/wp-config.php.bak
https://siteniz.com/.env
https://siteniz.com/uploads/

Bu adreslerden herhangi biri dosya indirmeye başlıyor ya da bir dizin içeriğini listeliyorsa sorun var demektir. Sık karşılaşılan hatalar: dağıtım sırasında sunucuda unutulan .git klasörü (kaynak kodunuzun tamamını ifşa edebilir), veritabanı parolalarını içeren .env dosyası ve dizin listelemenin açık bırakılması. Dizin listeleme sunucu yapılandırmasından kapatılmalı, hassas dosyalar web kök dizininin dışına taşınmalıdır.

Ayrıca sitenizin robots.txt dosyasına ve varsa hata sayfalarına da göz atın. Bazı yöneticiler gizli olduğunu sandıkları yönetim panellerini robots.txt içinde "engellenecek" diye listeler; bu, saldırgana tam olarak nereye bakması gerektiğini söylemek anlamına gelir. Benzer biçimde, ayrıntılı hata sayfaları (dosya yolları, sürüm bilgileri, veritabanı hataları içeren) saldırgana altyapınızın haritasını verir. Üretim ortamında hata mesajları kullanıcıya genel ve bilgi vermeyen bir sayfa olarak dönmelidir; teknik detaylar yalnızca sunucu loglarına yazılmalıdır.

5. Form ve Girdi Doğrulama Mantığını Test Edin

Sitenizdeki formların ve URL parametrelerinin, beklenmedik girdilere karşı nasıl davrandığını gözlemliyoruz; amaç zarar vermek değil, girdi doğrulamasının çalışıp çalışmadığını anlamaktır. Bir arama kutusuna ya da yorum alanına <b>test</b> gibi basit bir HTML etiketi girip gönderdiğinizde, çıktı kalın "test" olarak görünüyorsa uygulama girdiyi filtrelemiyor demektir; bu, kalıcı XSS riskine işaret eder.

Benzer biçimde, adres çubuğundaki ?id=12 gibi bir parametreyi ?id=12' yapıp gönderdiğinizde sayfa bir veritabanı hatası döküyorsa, orada bir SQL enjeksiyonu riski bulunabilir. Bu yalnızca bir belirti kontrolüdür; gerçek bir sömürü denemesi değildir ve kendi sitenizde bile veriyi bozacak yükler denemeyin. XSS'in nasıl çalıştığını daha derinlemesine öğrenmek için XSS nedir ve nasıl korunulur yazımıza bakabilirsiniz. Bu tür belirtiler gördüğünüzde, işi tahminle değil kontrollü bir testle sürdürmek gerekir.

6. Yönetim Panelleri ve Erişim Noktalarını Gözden Geçirin

Sitenizin yönetim panellerine ve giriş sayfalarına kimlerin, nereden erişebildiğini gözden geçiriyoruz; internete tamamen açık bir yönetici girişi, kaba kuvvet saldırılarının en sevdiği hedeftir. Yönetim giriş adresinizin (örneğin /wp-admin, /administrator) herkese açık olup olmadığını ve zayıf parolalarla korunup korunmadığını kontrol edin.

Alınabilecek temel önlemler: yönetim paneline erişimi belirli IP'lerle sınırlamak ya da ek bir kimlik doğrulama katmanı koymak, tüm hesaplarda iki adımlı doğrulamayı zorunlu kılmak, varsayılan kullanıcı adlarını (admin, administrator) değiştirmek ve başarısız giriş denemelerini sınırlamak. Sunucu tarafında kaba kuvvet saldırılarını otomatik engellemek için fail2ban kurulumu gibi araçlar ciddi fark yaratır.

Bu adımda kullanıcı hesaplarını da gözden geçirin. Zamanla siteye çeşitli kişilere yönetici yetkisi verilmiş, ancak bu kişiler artık projeyle ilgilenmiyor olabilir. Aktif olarak kullanılmayan her yönetici hesabı, ele geçirilmeyi bekleyen bir kapıdır. En az yetki ilkesini burada da uygulayın: her kullanıcıya yalnızca işini yapması için gereken yetkiyi verin, ayrılan kişilerin hesaplarını hemen kapatın ve düzenli aralıklarla hesap listesini denetleyin.

Profesyonel Test Ne Zaman Gerekir?

Yukarıdaki adımlar temel hijyeni sağlar ve en yaygın ihmalleri yakalar; ancak bir sitenin gerçek dayanıklılığını ölçmek için yeterli değildir. Kendi kontrolleriniz "kapı kilitli mi" sorusunu yanıtlar; profesyonel bir sızma testi ise "bu kilit gerçekten dayanıyor mu, başka bir yoldan içeri girilebilir mi" sorusunu kanıta dayalı yanıtlar.

Şu durumlarda profesyonel teste geçmenizi öneririz: kullanıcı verisi, ödeme bilgisi ya da hassas belge işliyorsanız; bir yasal/uyum gerekliliğiniz (örneğin bir müşteri ya da düzenleyici talebi) varsa; siteniz karmaşık iş mantığı ya da özel yazılan bir uygulama içeriyorsa; ya da yakın zamanda bir saldırı belirtisi yaşadıysanız. Bu tür durumlarda otomatik kontroller iş mantığı hatalarını, zincirlenmiş zafiyetleri ve yetki yükseltme yollarını göremez. Sürecin nasıl işlediğini merak ediyorsanız sızma testi nasıl yapılır yazımız adımları detaylandırıyor. Bir saldırıya uğradığınızdan şüpheleniyorsanız, önce sitemin hacklendiğini nasıl anlarım yazımızdaki belirtileri kontrol edin.

Sık Sorulan Sorular

Web sitesi güvenlik testini kendim yapabilir miyim?

Evet, temel kontrollerin çoğunu kendiniz yapabilirsiniz. SSL yapılandırması, güvenlik başlıkları, yazılım güncelliği ve açıkta kalan dosyalar gibi konular tarayıcı ve ücretsiz araçlarla incelenebilir. Ancak derin zafiyet analizi, iş mantığı testleri ve kontrollü sömürü denemeleri uzmanlık ve deneyim gerektirir; bunlar için profesyonel destek almak gerekir.

Ücretsiz güvenlik test araçları güvenilir mi?

Ücretsiz araçlar (SSL test servisleri, güvenlik başlığı tarayıcıları, açık port kontrol siteleri) doğru kullanıldığında değerli bir başlangıç sağlar. Ancak yalnızca yüzeydeki, bilinen sorunları görürler ve yanlış pozitif üretebilirler. Bir aracın "temiz" demesi sitenizin güvende olduğu anlamına gelmez; yalnızca o aracın baktığı noktalarda sorun bulunmadığı anlamına gelir.

Sitem WordPress ile yapıldı, ekstra neye dikkat etmeliyim?

WordPress'te en kritik noktalar eklenti ve tema güncelliği, kullanılmayan bileşenlerin silinmesi, güçlü yönetici parolaları ve iki adımlı doğrulamadır. Saldırıların çoğu WordPress çekirdeğinden değil, güncellenmemiş üçüncü parti eklentilerden gelir. Ayrıca wp-config.php dosyasının izinlerini ve giriş sayfası korumasını gözden geçirmek önemlidir.

Güvenlik başlıkları eksikse sitem hacklenir mi?

Eksik güvenlik başlıkları tek başına sitenizin hacklenmesine yol açmaz, ancak başka bir açık ortaya çıktığında saldırının etkisini büyütür. Örneğin bir XSS açığı varsa, doğru yapılandırılmış bir Content-Security-Policy başlığı bu açığın sömürülmesini büyük ölçüde zorlaştırır. Başlıklar bir savunma katmanıdır; eklenmeleri düşük maliyetli, faydası yüksektir.

Testi ne sıklıkla tekrarlamalıyım?

Temel kendi kontrollerinizi ayda bir yapmanızı, özellikle yazılım güncellemelerini haftalık takip etmenizi öneririz. Profesyonel testi ise yılda en az bir kez ve büyük değişikliklerden (yeni özellik, altyapı taşıma, tema/eklenti değişimi) sonra tekrarlamak sağlıklıdır. Güvenlik tek seferlik bir iş değil, sürekli bir bakım disiplinidir.

Kendi kontrollerinizde şüpheli bir belirti gördüyseniz ya da sitenizin gerçek risk seviyesini bağımsız bir gözle ölçmek istiyorsanız yanınızdayız. Ücretsiz sunucu güvenlik kontrolü ile mevcut durumunuzu hızlıca değerlendirebilir, kapsamlı bir inceleme için sızma testi hizmetimiz hakkında bilgi alabilirsiniz. Acil bir durumda 7/24 WhatsApp üzerinden bize ulaşın; hızlı bir teşhis için ilk adımı hemen atalım.

Bu konuda hizmetlerimiz

İlgili rehberler

Kendiniz uğraşmak zorunda değilsiniz

Bu rehberdeki işi sizin için yapalım: teşhis ücretsiz, fiyat sabit, temizlenemezse iade.

7/24 kayıt alınır · aynı gün müdahale · temizlenemezse ücret iade