Set 02 · Ders 06/12

Web zafiyet taraması: OWASP ZAP ile kontrollü başlangıç

ZAP'ta context, scope, pasif gözlem ve aktif taramayı güvenli sıraya koy; uyarıları HTTP kanıtıyla okuyup otomatik sonucu doğrulanmış bulgudan ayır.

Zafiyet Yönetimi · 02 · Tespit · Orta · 4 dk teori + 35 dk uygulama

Bu bölümde

  • ZAP'ın proxy, keşif, pasif tarama ve aktif tarama rollerini açıklamak
  • Yetkili bir lab uygulaması için dar context ve güvenli tarama sınırı kurmak
  • Bir ZAP uyarısını istek, yanıt, oturum ve tekrar üretilebilirlik kanıtıyla değerlendirmek
Bu sayfada
Zafiyet Yönetimi derslerini görKonum 6/12
  1. 01Zafiyet yönetimi nedir?
  2. 02Tarama yetkisi, kapsam ve Rules of Engagement
  3. 03Varlık envanteri ve kapsama güveni
  4. 04Nmap ile kontrollü keşif
  5. 05Zafiyet tarama araçları: doğru işi doğru araçla yapmak
  6. 06Web zafiyet taraması: OWASP ZAP ile kontrollü başlangıç
  7. 07Tarama güvenliği ve operasyon kontrolü
  8. 08Zafiyet kaydı nasıl okunur? CVE'den yerel karara
  9. 09Bulgu doğrulama ve false-positive ayrımı
  10. 10Zafiyetleri bağlama göre önceliklendirme
  11. 11Düzeltme ve tekrar test
  12. 12Zafiyet raporu ve capstone

01 · Teori

Konuyu anlamlandır

Bir web uygulamasını “tara” düğmesine basarak güvenli biçimde değerlendirmiş olmazsın. ZAP'ın değeri çok sayıda istek göndermesinden değil, uygulamanın gerçek HTTP akışını görünür kılmasından gelir. İyi bir başlangıç; kapsamı daraltır, normal kullanıcı davranışını gözlemler ve yalnız gerekli yerde aktif kontrol uygular.

Bu ders yalnız kasıtlı olarak zafiyet eğitimi için hazırlanmış veya sana yazılı olarak tahsis edilmiş bir lab uygulamasında uygulanmalıdır. Üretim sisteminde hızlı başlangıç taraması çalıştırmak; form gönderebilir, kayıt oluşturabilir, hesabı kilitleyebilir, oran limitini tetikleyebilir ya da hizmet yükünü artırabilir.

ZAP'ın dört rolü

ZAP'ın başlangıç belgesi, aracın merkezinde manipulator-in-the-middle proxy bulunduğunu açıklar. Tarayıcı veya otomasyon testi ZAP üzerinden uygulamaya gider; böylece araç istekleri ve yanıtları görür. Bu temel üzerinde dört ayrı rol oluşur:

  • Proxy: HTTP ve WebSocket mesajlarını kaydeder, incelemeyi mümkün kılar.
  • Keşif: Manuel gezinme, traditional spider veya AJAX spider ile bilinen rota ağacını genişletir.
  • Pasif tarama: Zaten geçen mesajları değiştirmeden başlık, çerez ve içerik işaretlerini denetler.
  • Aktif tarama: Parametrelere hazırlanmış girdiler göndererek olası zayıflıkları sınar.

Bu rollerin risk düzeyi aynı değildir. Manuel gezinme bile veri değiştiren bir butona basıldığında etkili olabilir. Spider yeni rotalara istek gönderir. Aktif tarama ise doğası gereği hedefe test girdileri yollar. Bu nedenle mod adı değil, yapılan HTTP işlemi risk değerlendirmesinin temelidir.

Güvenli sıra

Önce gör, sonra seçerek sın

Context ve kapsamı kur; normal kullanıcı akışını ZAP üzerinden geçir; pasif uyarıları incele; ancak yazılı yetki, lab koşulu ve durdurma kontrolü varsa seçilmiş rotalarda aktif taramaya geç.

Context: uygulamanın güven sınırı

ZAP context'i, değerlendirdiğin uygulamayı ve ona ilişkin oturum davranışını tanımlayan çalışma alanıdır. Yalnız ana URL'yi ekleyip devam etmek yeterli değildir. Şunları açıkça belirle:

  • Dahil edilen host, port ve yol desenleri
  • Üçüncü taraf analitik, ödeme veya kimlik sağlayıcı hostları
  • Logout, parola değiştirme, kullanıcı silme ve sipariş oluşturma gibi durum değiştiren rotalar
  • Kullanılacak lab hesabı ve kullanıcı rolü
  • Oturumun gerçekten açık olduğunu gösteren başarı ve çıkış işaretleri

Örneğin /app/.* kapsam içindeyken /app/logout, /app/admin/delete/.* ve dış kimlik sağlayıcısı kapsam dışında tutulabilir. Bu desenler, yalnız teknik bir ayar değil, yazılı yetkinin araca çevrilmiş hâlidir.

Kimlik doğrulanmış tarama gerekiyorsa kişisel veya üretim hesabı kullanma. Lab için ayrılmış, en az yetkili ve silinebilir bir test hesabı seç. Oturum çerezi ve token'lar ZAP oturum dosyasında veya dışa aktarılan raporda görünebilir; kayıtların erişimini ve saklama süresini sınırla.

Pasif tarama: gözlenen mesajdan ilk işaret

ZAP Passive Scanner varsayılan olarak araçtan geçen mesajları değiştirmeden inceler. Eksik güvenlik başlığı, çerez niteliği veya bilgi ifşası gibi işaretler üretebilir. Bu, pasif taramanın hatasız olduğu anlamına gelmez. Bir başlığın eksikliği her uygulamada aynı etkiyi oluşturmaz; bazı kontroller ters proxy veya tarayıcı davranışıyla başka katmanda sağlanıyor olabilir.

Normal kullanıcı akışını ZAP üzerinden tamamla: giriş yap, sana tahsis edilen kayıtları görüntüle ve salt okunur rotaları gez. Sonra pasif tarama kuyruğunun tamamlanmasını bekle. Seçtiğin uyarıda şu alanlara bak:

  • Hangi URL ve parametreyle ilişkilendirildi?
  • Hangi HTTP isteği gönderildi ve yanıt neydi?
  • ZAP “evidence” olarak hangi karakter dizisini işaretledi?
  • Uyarı hangi kullanıcı rolünde görüldü?
  • Aynı durum temiz bir oturumda yeniden oluşuyor mu?

Uyarı başlığı analizin başlangıcıdır. Request ve response görülmeden yalnız renk veya confidence alanına dayanarak rapor yazılmaz.

Aktif tarama: kontrollü ve seçilmiş olmalı

Aktif tarama hazırlanmış girdiler gönderir. Bazı istekler uygulama kaydı oluşturabilir, log hacmini büyütebilir veya beklenmeyen kod yollarını çalıştırabilir. ZAP'ın aktif tarama seçenekleri, host başına thread, eşzamanlı host sayısı, kural süresi ve toplam tarama süresi gibi yükü doğrudan etkileyen ayarlar sunar.

İlk çalışmada bütün siteyi seçmek yerine bir lab rotası seç. Düşük eşzamanlılık kullan, azami süre koy, sonuç sayısını sınırla ve uygulama loglarını eş zamanlı izle. Anti-CSRF token kullanan bir uygulamada token'ın doğru yenilendiğini ayrıca doğrula. Kimlik doğrulama başarısızsa anonim taramanın “tamamlandı” görünmesine aldanma.

Aktif taramanın bitmesi, bulunan her uyarının gerçek olduğu anlamına gelmez. Uyarının yeniden üretilebilir olup olmadığını, test girdisinin uygulamada hangi davranışı oluşturduğunu ve gerçek bir güvenlik sınırının aşılıp aşılmadığını incele. Doğrulama için zarar verici payload veya veri çıkarma gerekmez; güvenli, en küçük kanıt yeterlidir.

Uyarıdan analist kararına

Bir ZAP kaydını üç sınıftan biriyle ele alabilirsin:

  • Doğrulanabilir aday: HTTP kanıtı açık, aynı lab koşulunda tekrar üretilebilir ve beklenen güvenlik kontrolü eksik.
  • Belirsiz: İşaret var fakat oturum, proxy katmanı veya uygulama davranışı hakkında ek bilgi gerekli.
  • False-positive adayı: Uyarının dayandığı varsayım bu uygulamada geçerli görünmüyor; yine de gerekçe ve kanıt kaydedilmeli.

Raporunda ZAP alert ID'si kadar uygulama rotasını, kullanıcı rolünü, isteği, yanıtın ilgili bölümünü ve güvenli yeniden üretim koşulunu yaz. Ham oturum çerezini, token'ı veya kişisel veriyi rapora kopyalama; gerektiğinde maskele.

İyi ZAP kullanımı en çok alarmı üretmek değildir. Uygulamanın sınırını anlayıp en az istekle açıklanabilir ve tekrar edilebilir bir güvenlik kanıtı oluşturmaktır.

02 · Uygulama

Pasiften aktife güvenli ZAP akışı

Yaklaşık 35 dk

Yalnız sana tahsis edilmiş, veri kaybı riski olmayan bir lab web uygulamasını ZAP üzerinden gez ve önce pasif gözlem kaydı üret; aktif taramayı ancak lab yetkisi açıkça kapsıyorsa sınırlı rotalarda çalıştır.

  1. 01Lab uygulamasını bir ZAP context'ine ekle; kapsam dışı hostları, çıkış ve veri silme rotalarını hariç tut.
  2. 02ZAP üzerinden açılan tarayıcıyla normal kullanıcı akışını tamamla ve pasif tarama kuyruğunun bitmesini bekle.
  3. 03Bir pasif uyarının request, response, evidence ve URL alanlarını kaydet.
  4. 04Aktif tarama yetkin varsa yalnız seçili lab rotasında düşük eşzamanlılık ve süre sınırıyla çalıştır; yoksa bu adımı plan olarak belgele.
  5. 05Bir uyarıyı yeniden üretilebilir, belirsiz veya false-positive adayı olarak sınıflandır.

03 · Kanıt

ZAP tarama çalışma kaydı

Context kapsamı, kullanılan mod, seçilmiş bir uyarının HTTP kanıtı ve analist kararını içeren kısa kayıt.

İyi bir çıktı şunları göstermeli

  • Pasif ve aktif tarama birbirinden açıkça ayrılıyor.
  • Kapsam dışı ve durum değiştiren rotalar belgeleniyor.
  • Uyarı başlığı yerine ilgili istek-yanıt kanıtı inceleniyor.
  • Analist kararı otomatik risk derecesinden ayrı yazılıyor.

Kendini kontrol et

Metne dönmeden, cevapları kendi cümlelerinle düşün.

  1. 01ZAP pasif taraması neden başlangıç için daha güvenlidir?
  2. 02Bir URL'yi context içine eklemek neden tek başına yeterli değildir?
  3. 03ZAP uyarısını doğrulanmış bulguya çevirmek için hangi kanıt gerekir?
Cevaplarını karşılaştır
  1. 01Proxy üzerinden geçen HTTP veya WebSocket mesajlarını değiştirmeden arka planda inceler; hedefe yeni saldırı istekleri üretmez. Yine de yalnız yetkili trafiğin ve hassas verinin işlendiği unutulmamalıdır.
  2. 02Alt alan adları, API rotaları, logout veya veri silme uçları, üçüncü taraf hostlar ve kimlik doğrulama durumu ayrıca tanımlanmalıdır; aksi hâlde tarama kapsam dışına taşabilir veya iş akışını bozabilir.
  3. 03İlgili istek ve yanıt, uyarının evidence alanı, oturum veya kullanıcı rolü, yeniden üretilebilirlik, etkilenen rota ve gerçek güvenlik etkisi birlikte değerlendirilmelidir.

Kısaca

  • ZAP'ta güvenli sıra context, normal gezinme, pasif gözlem, seçilmiş doğrulama ve kontrollü aktif taramadır.
  • Aktif tarama hedefte işlem ve yük oluşturabilir; yalnız yazılı yetki ve güvenli lab koşullarında çalıştırılır.
  • Web uyarısının değeri risk renginden değil, HTTP kanıtı ve gerçek uygulama bağlamından gelir.

Kaynakça

Son gözden geçirme: 18 Temmuz 2026

  • ZAP Getting Started

    ZAP Project

    ZAP proxy çalışma modeli, tarayıcıyla keşif ve hızlı başlangıç akışının resmi açıklaması.

  • Passive Scanner Add-on

    ZAP Project

    Pasif taramanın mesajları değiştirmeden çalışması ve uyarı üretme davranışı.

  • Options Active Scan Screen

    ZAP Project

    Eşzamanlılık, azami süre, sonuç limiti ve hedef yükünü etkileyen aktif tarama seçenekleri.

Web zafiyet taraması: OWASP ZAP ile kontrollü başlangıç · Bilgi · siberlab