Sızma Testi Nedir, Ne Değildir: Temel Rehber

## Sızma Testi Nedir, Ne Değildir Sızma testi, bir sistemin güvenlik kontrollerini, gerçek bir saldırganın izleyebileceği yöntemleri kullanarak **yet...

Sızma Testi Nedir, Ne Değildir: Temel Rehber

Sızma Testi Nedir, Ne Değildir

Sızma testi, bir sistemin güvenlik kontrollerini, gerçek bir saldırganın izleyebileceği yöntemleri kullanarak yetkilendirilmiş biçimde sınamaktır. Amacı açık bulmak değil; bulunan zayıflıkların iş etkisini, sömürülebilirliğini ve giderme önceliğini ortaya koymaktır.

Bu rehber, sızma testini kendi sistemlerinde veya yazılı izin aldığı hedeflerde yürütecek orta seviye geliştiriciler için hazırlanmıştır. Başlamadan önce şu ayrımı netleştir:

  • Yetkisiz test suçtur. Test edilecek her hedef için yazılı izin (kapsam sözleşmesi) gerekir.
  • Sızma testi bir ürün değil, süreçtir. Tek seferlik araç çalıştırmak test değildir.
  • Otomatik tarayıcı çıktısı rapor değildir. Bulgular doğrulanmadan rapora girmez.

Önkoşullar

  • Test edilecek sistemin sahibinden alınmış yazılı yetki ve kapsam belgesi
  • Test ortamının üretimden ayrılmış olması (mümkünse)
  • Test penceresi (zaman aralığı) ve acil durdurma iletişim kanalı
  • Test makinesi için izole bir ortam (sanal makine veya konteyner)
  • Sürüm kapsamı: Bu rehber belirli bir araç sürümüne bağlı değildir; komutlar araçların yaygın kullanılan genel sözdizimini izler. Kullandığın sürümün kendi belgelerini doğrula.

Sürecin Aşamaları

Sızma testi genellikle şu sırayla ilerler. Aşamalar doğrusal değildir; yeni bilgi elde edildikçe önceki aşamaya dönülür.

  1. Kapsam belirleme ve bilgi toplama (keşif)
  2. Yüzey taraması ve servis numaralandırma
  3. Zafiyet analizi
  4. Sömürü (exploitation)
  5. Yetki yükseltme ve yanal hareket
  6. Kanıt toplama ve raporlama
  7. Giderme sonrası yeniden test

1. Kapsam ve Keşif

Kapsam belgesi şu soruları yanıtlamalı: hangi IP aralıkları, alan adları, uygulamalar ve API'ler dahil? Hangileri hariç? Test hangi saatlerde yapılacak? Hangi teknikler yasak (örneğin hizmet dışı bırakma)?

Keşifte pasif ve aktif toplama ayrımını bil:

  • Pasif: Herkese açık kayıtlar, sertifika şeffaflık günlükleri, arama motorları. Hedefe doğrudan trafik gitmez.
  • Aktif: Hedefe doğrudan sorgu gönderilir; iz bırakır ve loglara düşer.

DNS çözümlemesi gibi temel bir adım:

dig +short example.com A
dig +short example.com MX

Beklenen davranış: alan adının A kaydı IP adresini, MX kaydı posta sunucularını döndürür. +short yalnızca sonucu yazdırır. Bu komut pasif değildir; sorgu hedefin yetkili DNS sunucusuna gidebilir, bu yüzden kapsamda olduğundan emin ol.

2. Tarama ve Numaralandırma

Amaç, açık portları ve bu portlarda çalışan servisleri tespit etmektir. Hızlı tarama ile başlayıp bulunan portlara derinlemesine bakmak yaygın bir yaklaşımdır.

nmap -sV -p- --min-rate 1000 -oA scan_full 10.0.0.10
  • -sV: servis ve sürüm tespiti
  • -p-: 1–65535 arası tüm TCP portları
  • --min-rate: saniyedeki paket alt sınırı
  • -oA: sonucu üç formatta (normal, XML, grep) kaydeder

Beklenen davranış: açık portlar ve her birinde çalışan servis/sürüm bilgisi listelenir. -p- taraması uzun sürebilir ve hedefte yoğun log üretir; kapsam ve zaman penceresiyle uyumlu olduğundan emin ol.

Yaygın hata: Üretim sistemlerinde agresif zamanlama (-T4/-T5) ve yüksek hız kullanmak. Bu, servis kesintisine veya güvenlik duvarının seni engellemesine yol açabilir. Test penceresi dışına taşma riskini unutma.

3. Zafiyet Analizi

Numaralandırmada bulduğun servis sürümlerini bilinen zafiyetlerle eşleştir. Bu aşamada iki kural geçerlidir:

  • Sürüm parmak izi kesin değildir. Servis sürümünü gizleyebilir veya taklit edebilir. Bulguyu doğrulamadan rapora yazma.
  • Zafiyet tarayıcı çıktısı başlangıç noktasıdır. Yanlış pozitif oranı yüksektir.

Web uygulamaları için giriş noktalarını (parametreler, başlıklar, çerezler) elle incelemek, otomatik tarayıcıdan gelen bulguları doğrulamanın en güvenilir yoludur.

4. Sömürü

Sömürü, bir zafiyetin gerçekten kullanılabilir olduğunu kanıtlar. İki ilke:

  • En az etki: Yalnızca gereken kadar erişim sağla; veri silme, değiştirme veya hizmet kesme.
  • Kanıt, sömürünün kendisi değil kaydıdır. Komut çıktısı, zaman damgası, ekran görüntüsü.

Örnek: bir SQL enjeksiyonunu doğrulamak için veritabanı sürümünü okumak yeterlidir; tüm tabloyu dökmek gerekmez.

-- Yalnızca sürüm bilgisini oku; veri çekme
SELECT version();

Beklenen davranış: enjekte edilebilir bir parametre üzerinden bu sorgu çalıştırıldığında veritabanı sürümü döner. Bu, zafiyetin varlığını kanıtlar. Daha fazlasını çekmek kapsamı aşabilir ve gereksiz veri sızıntısı yaratır.

Güvenlik etkisi: Sömürü sırasında elde ettiğin kimlik bilgileri, oturum belirteçleri ve kişisel veriler hassastır. Bunları şifreli kanallarda sakla, test bitince güvenli biçimde imha et.

5. Yetki Yükseltme ve Yanal Hareket

İlk erişim genellikle düşük yetkili bir hesapla olur. Bu aşamada amaç, elde edilen erişimin ne kadar ileri götürülebileceğini göstermektir.

  • Yetki yükseltme: Yerel yanlış yapılandırmalar, aşırı yetkili servisler, eksik yamalar.
  • Yanal hareket: Aynı ağdaki diğer sistemlere geçiş; tekrar kullanılabilir kimlik bilgileri, güven ilişkileri.

Bu aşamada en sık yapılan hata, kapsam dışı bir sisteme dokunmaktır. Her yeni hedefe geçmeden önce kapsam belgesini kontrol et.

6. Kanıt Toplama ve Raporlama

Rapor, sızma testinin teslim edilebilir tek çıktısıdır. Her bulgu şu alanları içermelidir:

  • Başlık ve önem derecesi: İş etkisine göre, yalnızca teknik skora göre değil.
  • Etkilenen varlık: Tam adres, port, parametre.
  • Yeniden üretim adımları: Başka birinin aynı sonucu alabileceği kadar net.
  • Kanıt: Çıktı, istek/yanıt, ekran görüntüsü.
  • Etki: Saldırgan bunu kullanırsa ne olur?
  • Öneri: Uygulanabilir ve önceliklendirilmiş.

Yaygın hata: Ham tarayıcı çıktısını rapora yapıştırmak. Doğrulanmamış yüzlerce satır, gerçek bulguları gizler ve ekibi yorar.

7. Giderme Sonrası Yeniden Test

Düzeltme uygulandıktan sonra bulgunun gerçekten kapandığını doğrula. Aynı adımları tekrarla ve sonucu rapora ekle. "Düzeltildi" beyanı, yeniden test edilmeden kapanmış sayılmaz.

Sık Yapılan Hatalar

  • Yetki ve kapsamı atlamak. En ciddi hata; hukuki ve etik sonuçları vardır.
  • Üretimde agresif tarama. Kesinti ve veri kaybı riski.
  • Otomatik bulguları doğrulamadan raporlamak. Yanlış pozitifler güveni zedeler.
  • Kanıtı yetersiz bırakmak. Yeniden üretilemeyen bulgu tartışmaya açıktır.
  • Yalnızca teknik skora bakmak. Orta seviye bir zafiyet, kritik bir iş sürecini etkiliyorsa önceliklidir.
  • Test verisini temizlememek. Oluşturduğun hesaplar, dosyalar ve kayıtlar sonradan risk oluşturur.

Kapanış

Sızma testi, araçları çalıştırmakla değil; kapsamı netleştirmek, bulguları doğrulamak ve sonucu iş etkisiyle birlikte raporlamakla değer üretir. Her aşamada yetki sınırını ve en az etki ilkesini koru; kanıtı doğrulanabilir tut. Bu disiplin, testi hem güvenli hem de savunma ekibi için kullanışlı kılar.

İLGİLİ İÇERİKLER

Bunları da Okumak İsteyebilirsiniz