Nikto ve OWASP ZAP: Web Zafiyet Tarayıcılarına Giriş
OWASP ZAP ve Nikto, web sitelerindeki güvenlik açıklarını otomatik tarayan iki ücretsiz araçtır. Yeni başlayanlar için ikisinin de ne olduğunu, farklarını ve yetkili ortamda nasıl kullanıldığını sade örneklerle anlatıyoruz.
OWASP ZAP (Zed Attack Proxy), bir web uygulamasını otomatik tarayarak yaygın güvenlik açıklarını bulmaya yarayan, açık kaynaklı ve ücretsiz bir web zafiyet tarayıcısıdır. Nikto ise web sunucularını hızlıca tarayıp yanlış yapılandırmaları ve bilinen riskli dosyaları listeleyen, komut satırından çalışan hafif bir araçtır. Bu yazı, ikisini de sıfırdan tanımak isteyen yeni başlayanlar için bir giriş rehberidir.
Web zafiyet tarayıcıları, bir sitenin sayfalarını ve sunucusunu adım adım gezerek "burada bir açık olabilir" diyen otomatik gözlerdir. Uzman yerine geçmezler ama gözden kaçan basit hataları yakalayarak öğrenmenizi ve elle yapacağınız incelemeyi hızlandırırlar.
OWASP ZAP nedir ve ne işe yarar?
OWASP ZAP, web uygulamalarındaki güvenlik açıklarını bulmak için tasarlanmış, Java ile yazılmış açık kaynaklı bir tarayıcıdır. Tarayıcınız ile hedef site arasında bir "proxy" gibi durur; bu sayede giden-gelen istekleri görür, siteyi otomatik gezer (spider) ve XSS, güvensiz başlıklar, açık formlar gibi sorunları raporlar. Grafik arayüzü olduğu için yeni başlayanların en çok tercih ettiği araçlardan biridir ve otomasyon için komut satırından da çalışabilir.
Nikto nedir ve neyi tarar?
Nikto, web sunucusuna odaklanan, Perl ile yazılmış açık kaynaklı bir komut satırı tarayıcısıdır. Binlerce bilinen riskli dosya ve dizini, eski/yamalanmamış sunucu sürümlerini, tehlikeli HTTP metodlarını ve eksik güvenlik başlıklarını hızlıca kontrol eder. Kurulumu ve kullanımı çok basittir; bu yüzden bir hedef hakkında ilk hızlı fikri edinmek için sık kullanılır. Buna karşılık gürültülüdür, yani sunucu loglarında kolayca fark edilir.
Nikto ile OWASP ZAP arasındaki farklar neler?
İkisi de web zafiyet tarayıcısıdır ama farklı katmanlara bakar: Nikto daha çok sunucu yapılandırmasına, ZAP ise uygulama mantığına odaklanır. Yeni başlayanlar için pratik yaklaşım, ikisini tamamlayıcı görmektir. Aşağıdaki tablo temel farkları özetler.
| Özellik | Nikto | OWASP ZAP |
|---|---|---|
| Arayüz | Komut satırı (CLI) | Grafik arayüz + CLI/API |
| Odak | Web sunucusu yapılandırması, riskli dosyalar | Web uygulaması açıkları, oturum/istek analizi |
| Proxy özelliği | Yok | Var (trafiği araya girip inceler) |
| Öğrenme eğrisi | Çok kolay | Kolay–orta |
| Tarama hızı | Hızlı, gürültülü | Ayarlanabilir (spider hızlı, aktif tarama yavaş) |
| Lisans | Açık kaynak, ücretsiz | Açık kaynak, ücretsiz |
| Tipik kullanım | Hızlı ilk keşif | Detaylı uygulama incelemesi |
Nikto nasıl kurulur ve çalıştırılır?
Kali Linux ve çoğu Debian tabanlı dağıtımda Nikto hazır gelir ya da tek komutla kurulur. Kurulumdan sonra en temel tarama, hedefi -h (host) parametresiyle vermektir. Aşağıdaki komutları yalnızca kendi test ortamınızda veya yazılı izin verdiğiniz bir sistemde çalıştırın.
# Kurulum (Debian/Kali) sudo apt update && sudo apt install nikto # Kurulumu doğrula nikto -Version # Temel tarama (kendi lab sunucunuz) nikto -h http://192.168.56.101 # Farklı port ve HTTPS ile tarama nikto -h https://test-lab.example -p 8443 -ssl # Sonucu bir dosyaya kaydet (HTML raporu) nikto -h http://192.168.56.101 -o rapor.html -Format htm
Çıktıda her satır bir bulgudur: eksik X-Frame-Options başlığı, açıkta kalmış bir yönetim paneli ya da eski bir sunucu sürümü gibi. Bunlar "kesin açık" değil, "incelenmeli" işaretidir; her satırı elle doğrulamak gerekir.
OWASP ZAP nasıl kullanılır?
ZAP'ı resmi sitesinden indirip kurduktan sonra en kolay başlangıç, "Automated Scan" (Otomatik Tarama) ekranıdır. Hedef adresi girip taramayı başlatırsınız; ZAP önce siteyi gezer (spider), sonra isteğe bağlı olarak aktif tarama yapar ve bulguları risk seviyesine göre listeler. Öğrenmek için en değerli mod ise manuel keşiftir: ZAP'ı tarayıcınızın proxy'si yapıp siteyi normal gezersiniz, ZAP arkada tüm istekleri kaydeder.
# ZAP'ı arayüzsüz (headless) başlatmak — otomasyon için zap.sh -daemon -host 127.0.0.1 -port 8080 # Komut satırından hızlı temel tarama (Docker ile) docker run -t ghcr.io/zaproxy/zaproxy zap-baseline.py \ -t https://test-lab.example
Önemli uyarı: ZAP'ın "aktif tarama" özelliği hedefe gerçek saldırı istekleri gönderir ve siteye zarar verebilir. Bu yüzden aktif taramayı asla izniniz olmayan bir sitede çalıştırmayın; spider (pasif gezme) ile aktif tarama arasındaki farkı öğrenmek ilk adımınız olsun.
Web zafiyet tarayıcıları neyi bulamaz?
Otomatik tarayıcılar güçlü ama sınırlıdır. İş mantığı hataları (örneğin başka kullanıcının siparişini görmenizi sağlayan bir yetki açığı) çoğu zaman elle test gerektirir; tarayıcı bunları göremez. Ayrıca "yanlış pozitif" üretebilir, yani gerçekte açık olmayan şeyi açık gibi gösterebilir. Bu yüzden tarayıcı sonucu bir başlangıç noktasıdır; bulguları anlamak ve doğrulamak için XSS, SQL enjeksiyonu, IDOR gibi zafiyetlerin nasıl çalıştığını öğrenmeniz gerekir. Bu konuların derin anlatımı için AltaySec Wiki iyi bir referanstır.
Bu araçları kullanmak yasal mı?
Nikto ve OWASP ZAP tamamen yasal, meşru güvenlik araçlarıdır — ama bir sistemi taramak için o sistemin sahibinden yazılı izin almanız şarttır. İzinsiz tarama, Türkiye'de bilişim sistemlerine yetkisiz erişim kapsamında suç sayılabilir; "sadece tarama yaptım, girmedim" savunma değildir. Güvenle pratik yapmanın yolu kendi kurduğunuz laboratuvar (örneğin bir sanal makinede DVWA, Juice Shop) ya da izin verilmiş eğitim ortamlarıdır. Tarayıcıyı kendi kurduğunuz zafiyetli sistemlere yöneltin, üçüncü şahıslara değil.
Kendi güvenli ortamınızda ücretsiz pratik yapmak isterseniz pratik.altaysec.com.tr üzerinde CTF alıştırmaları, tarayıcı içinde çalışan laboratuvarlar için labs.altaysec.com.tr iyi bir başlangıçtır. Öğrendiğiniz araçları burada, kimseye zarar vermeden deneyebilirsiniz.
Savunma tarafında bu araçlar nasıl işe yarar?
Aynı araçlar sadece test için değil, kendi sitenizi korumak için de kullanılır. Bir sistem yöneticisi, kendi sunucusunu Nikto ile tarayıp eksik güvenlik başlıklarını ve açıkta kalmış dosyaları görebilir; ZAP'ı geliştirme sürecine (CI/CD) ekleyerek her yeni sürümde otomatik güvenlik kontrolü çalıştırabilir. Yani "saldırı aracı" dediğimiz şeyler, doğru elde en etkili savunma araçlarıdır. En iyi öğrenme yolu, kendi kurduğunuz bir siteyi önce açıklı bırakıp sonra tarayıcıyla bulup düzeltmektir.
Sık sorulan sorular
OWASP ZAP mı Nikto mu, hangisiyle başlamalıyım?
İkisi farklı işler yapar. Yeni başlıyorsan Nikto daha kolaydır, çünkü tek komutla çalışır ve sonucu anlaşılırdır. Web uygulama açıklarını derinlemesine öğrenmek istediğinde OWASP ZAP'ın arayüzü ve proxy özelliği devreye girer. En iyisi ikisini birbirini tamamlayan araçlar olarak birlikte kullanmaktır. İkisini de yalnız izinli hedeflerde çalıştır.
Nikto ve OWASP ZAP ücretsiz mi?
Evet, ikisi de açık kaynaklı ve ücretsizdir. Nikto komut satırında çalışan hafif bir araçtır. OWASP ZAP ise ücretsiz olmasına rağmen ticari tarayıcılara yakın özellikler sunan olgun bir projedir. Lisans ücreti ödemeden indirip kullanırsın. İkisi de Kali Linux'ta hazır gelir. Güncel sürümleri projelerin resmî sayfalarından indir.
Bir siteyi izinsiz taramak suç mu?
Evet. Sana ait olmayan ya da yazılı izin almadığın bir sistemi taramak yetkisiz erişim kapsamında değerlendirilebilir ve yasal sorumluluk doğurur. Girmedim, yalnız taradım demek geçerli bir mazeret değildir. Yasal pratik için kendi sanal laboratuvarını ya da izin veren eğitim platformlarını kullan.
Tarayıcının bulduğu her bulgu gerçek açık mı?
Hayır. Otomatik tarayıcılar yanlış pozitif üretir, yani açık olmayan bir şeyi açık gibi gösterebilir. İş mantığı hatalarını da çoğunlukla göremezler. Bu yüzden her bulguyu elle doğrula ve arkasındaki zafiyetin nasıl çalıştığını anla. Tarayıcı sonucu son cevap değil, incelemenin başlangıcıdır. Doğrulayamadığın bulguyu rapora açık olarak yazma.
- owasp zap nedir
- araçlar
- siber güvenlik
- yeni başlayanlar