Web sızma testlerinin ilk ve en kritik aşamalarından biri içerik keşfidir: Sunucuda gizli dizinler, yedek dosyalar, yönetim panelleri ve alt alan adları (subdomain) çoğu zaman bağlantı verilmeden durur. Bu rehberde iki hızlı ve güvenilir aracı, Gobuster ve ffuf (Fuzz Faster U Fool), resmi kullanımlarına sadık kalarak uygulamalı anlatıyoruz.
Konuda Anlatılacaklar
- İçerik ve subdomain keşfi nedir, neden önemlidir
- Gobuster ve ffuf kurulumu, wordlist kaynakları
- Gobuster mod ve parametre referansı
- ffuf parametre referansı ve FUZZ anahtar kelimesi
- Uygulamalı: dizin, dosya uzantısı, subdomain ve vhost keşfi
- İleri seviye: filtreleme, eşleme, oran sınırlama
- Sonuç, kaynakça ve yasal uyarı
1. İçerik Keşfi Nedir?
İçerik keşfi (content discovery), bir web sunucusunda bağlantı verilmemiş kaynakları bir kelime listesi (wordlist) ile deneyerek bulmaktır. Araç, listedeki her kelime için bir HTTP isteği gönderir ve dönen durum koduna (200, 301, 403 vb.) göre o kaynağın var olup olmadığını çıkarır. Subdomain keşfinde ise aynı yöntem DNS veya HTTP Host başlığı üzerinden alt alan adlarına uygulanır. Bu, "brute force" değil, yaygın isimleri sistematik denemektir.
2. Kurulum ve Wordlist'ler
Kali/Parrot üzerinde her iki araç da depolardan kurulabilir:
sudo apt update
sudo apt install gobuster ffuf seclistsls /usr/share/seclists/Discovery/Web-Content/
ls /usr/share/seclists/Discovery/DNS/3. Gobuster Parametre Referansı
Gobuster alt komutlarla (mod) çalışır: dir, dns, vhost, fuzz.
dir - Dizin/dosya keşfi modu:
gobuster dir -u http://HEDEF -w WORDLIST-x - Denenecek uzantılar:
gobuster dir -u http://HEDEF -w WORDLIST -x php,txt,bak,html-t - Eşzamanlı iş parçacığı sayısı (varsayılan 10):
gobuster dir -u http://HEDEF -w WORDLIST -t 50-b - Yok sayılacak durum kodları (blacklist); -s ise yalnızca gösterilecek kodlar:
gobuster dir -u http://HEDEF -w WORDLIST -b 404,403dns - Subdomain keşfi modu:
gobuster dns -d HEDEF.com -w SUBDOMAIN_LISTESIvhost - Sanal host (aynı IP, farklı Host başlığı) keşfi:
gobuster vhost -u http://HEDEF.com -w SUBDOMAIN_LISTESI --append-domain4. ffuf Parametre Referansı
ffuf, URL veya başlık içine yazdığınız FUZZ anahtar kelimesini wordlist'teki her satırla değiştirir.
-u / -w - Hedef URL ve wordlist:
ffuf -u http://HEDEF/FUZZ -w WORDLIST-e - Uzantı ekleme:
ffuf -u http://HEDEF/FUZZ -w WORDLIST -e .php,.html,.txt-mc / -fc - Eşlenecek (match) / filtrelenecek (filter) durum kodları:
ffuf -u http://HEDEF/FUZZ -w WORDLIST -mc 200,301,302,403-fs / -fw / -fl - Yanıt boyutuna, kelime veya satır sayısına göre filtreleme:
ffuf -u http://HEDEF/FUZZ -w WORDLIST -fs 4242-H - Başlık ekleme (subdomain/vhost keşfinde Host başlığı):
ffuf -u http://HEDEF.com -w SUBDOMAIN_LISTESI -H "Host: FUZZ.HEDEF.com"5. Uygulamalı Adımlar
Örnekleri kendi lab ortamınızda (örneğin DVWA ya da kendi test sunucunuz) deneyin.
Adım 1 - Temel dizin keşfi:
gobuster dir -u http://192.168.56.101 -w /usr/share/seclists/Discovery/Web-Content/directory-list-2.3-medium.txt -t 50/images (Status: 301) [Size: 317] [--> http://192.168.56.101/images/]
/index.php (Status: 200) [Size: 891]
/admin (Status: 301) [Size: 316]Adım 2 - Uzantı ile dosya keşfi:
gobuster dir -u http://192.168.56.101 -w /usr/share/seclists/Discovery/Web-Content/common.txt -x php,bak,old,txtAdım 3 - ffuf ile hızlı dizin fuzzing:
ffuf -u http://192.168.56.101/FUZZ -w /usr/share/seclists/Discovery/Web-Content/common.txt -mc 200,301,403Adım 4 - Subdomain keşfi (DNS):
gobuster dns -d example.com -w /usr/share/seclists/Discovery/DNS/subdomains-top1million-5000.txtAdım 5 - Vhost keşfi (ffuf, Host başlığı):
ffuf -u http://example.com -w /usr/share/seclists/Discovery/DNS/subdomains-top1million-5000.txt -H "Host: FUZZ.example.com" -fs 12346. İleri Seviye İpuçları
- Oran sınırlama / gecikme: Hedefi yormamak ve WAF tetiklememek için ffuf'ta -rate ve -p (duraklama) kullanın: Kod:
ffuf -u http://HEDEF/FUZZ -w WORDLIST -rate 50 -p 0.1 - Özyinelemeli tarama: ffuf -recursion ile bulunan dizinlerin altını otomatik tarar.
- Çıktı kaydetme: Raporlama için ffuf -o sonuc.json -of json kullanın.
- Akıllı filtreleme: Önce bir "çöp" isteğinin boyutunu gözleyin, sonra o boyutu -fs ile eleyin; yanlış pozitifler ciddi oranda azalır.
Sonuç
Gobuster sade ve hızlı, ffuf ise filtreleme ve esneklikte çok güçlüdür. İkisini birlikte kullanmak keşif yüzeyinizi genişletir: Gobuster ile hızlı bir ilk tarama, ffuf ile derin ve filtreli bir ikinci geçiş iyi bir alışkanlıktır. Her zaman doğru wordlist seçimi ve akıllı filtreleme, sonucun kalitesini belirler.
Kaynakça
- Gobuster Resmi Deposu ve Belgeleri - https://github.com/OJ/gobuster
- ffuf Resmi Deposu ve Wiki - https://github.com/ffuf/ffuf
- SecLists - https://github.com/danielmiessler/SecLists
- Kali Tools: gobuster - https://www.kali.org/tools/gobuster/
- Kali Tools: ffuf - https://www.kali.org/tools/ffuf/
Yasal Uyarı
Alıntı:İçerik ve subdomain keşfi dahil tüm teknikleri yalnızca kendi sistemlerinizde veya yazılı izinli hedeflerde uygulayın. İzinsiz tarama ve erişim denemeleri Türk Ceza Kanunu 243-245. maddeleri kapsamında suç teşkil eder.
Yasal uyarı: Bu içerik eğitim amaçlıdır. Yalnızca kendi sistemlerinizde veya yazılı izin aldığınız hedeflerde uygulayın (TCK 243-245).