Konuyu Okuyanlar:

Gobuster ve ffuf ile Dizin ve Subdomain Keşfi: Uygulamalı Rehber

Gobuster ve ffuf ile Dizin ve Subdomain Keşfi: Uygulamalı Rehber
Merhaba TurkTeam,

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
  1. İçerik ve subdomain keşfi nedir, neden önemlidir
  2. Gobuster ve ffuf kurulumu, wordlist kaynakları
  3. Gobuster mod ve parametre referansı
  4. ffuf parametre referansı ve FUZZ anahtar kelimesi
  5. Uygulamalı: dizin, dosya uzantısı, subdomain ve vhost keşfi
  6. İleri seviye: filtreleme, eşleme, oran sınırlama
  7. 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:
Kod:
sudo apt update sudo apt install gobuster ffuf seclists
SecLists, sektörün standart kelime listesi koleksiyonudur ve genelde şu yolda bulunur:
Kod:
ls /usr/share/seclists/Discovery/Web-Content/ ls /usr/share/seclists/Discovery/DNS/
Dizin keşfi için sık kullanılan liste directory-list-2.3-medium.txt, subdomain için subdomains-top1million-5000.txt gibi listelerdir.

3. Gobuster Parametre Referansı
Gobuster alt komutlarla (mod) çalışır: dir, dns, vhost, fuzz.

dir - Dizin/dosya keşfi modu:
Kod:
gobuster dir -u http://HEDEF -w WORDLIST

-x - Denenecek uzantılar:
Kod:
gobuster dir -u http://HEDEF -w WORDLIST -x php,txt,bak,html

-t - Eşzamanlı iş parçacığı sayısı (varsayılan 10):
Kod:
gobuster dir -u http://HEDEF -w WORDLIST -t 50

-b - Yok sayılacak durum kodları (blacklist); -s ise yalnızca gösterilecek kodlar:
Kod:
gobuster dir -u http://HEDEF -w WORDLIST -b 404,403

dns - Subdomain keşfi modu:
Kod:
gobuster dns -d HEDEF.com -w SUBDOMAIN_LISTESI

vhost - Sanal host (aynı IP, farklı Host başlığı) keşfi:
Kod:
gobuster vhost -u http://HEDEF.com -w SUBDOMAIN_LISTESI --append-domain

4. 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:
Kod:
ffuf -u http://HEDEF/FUZZ -w WORDLIST

-e - Uzantı ekleme:
Kod:
ffuf -u http://HEDEF/FUZZ -w WORDLIST -e .php,.html,.txt

-mc / -fc - Eşlenecek (match) / filtrelenecek (filter) durum kodları:
Kod:
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:
Kod:
ffuf -u http://HEDEF/FUZZ -w WORDLIST -fs 4242

-H - Başlık ekleme (subdomain/vhost keşfinde Host başlığı):
Kod:
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:
Kod:
gobuster dir -u http://192.168.56.101 -w /usr/share/seclists/Discovery/Web-Content/directory-list-2.3-medium.txt -t 50
Çıktıda şunun gibi satırlar görürsünüz:
Kod:
/images (Status: 301) [Size: 317] [--> http://192.168.56.101/images/] /index.php (Status: 200) [Size: 891] /admin (Status: 301) [Size: 316]
Burada 301 bir dizine yönlendirmeyi, 200 doğrudan erişilebilir bir kaynağı gösterir. /admin satırı incelenmesi gereken bir yönetim dizinine işaret eder.
[Resim: attachment.php?aid=130]

Adım 2 - Uzantı ile dosya keşfi:
Kod:
gobuster dir -u http://192.168.56.101 -w /usr/share/seclists/Discovery/Web-Content/common.txt -x php,bak,old,txt
Bu tarama config.php.bak gibi yedek dosyaları ortaya çıkarabilir; bunlar sık sık kaynak kodu veya kimlik bilgisi sızdırır.

Adım 3 - ffuf ile hızlı dizin fuzzing:
Kod:
ffuf -u http://192.168.56.101/FUZZ -w /usr/share/seclists/Discovery/Web-Content/common.txt -mc 200,301,403
ffuf sonuçları renkli ve tablo biçiminde sunar; her satırda kelime, durum kodu, boyut, kelime ve satır sayısı yer alır.


Adım 4 - Subdomain keşfi (DNS):
Kod:
gobuster dns -d example.com -w /usr/share/seclists/Discovery/DNS/subdomains-top1million-5000.txt
"Found: mail.example.com" gibi satırlar çözümlenen alt alan adlarını gösterir. Bunu yalnızca sahibi olduğunuz veya izinli alan adlarında yapın.


Adım 5 - Vhost keşfi (ffuf, Host başlığı):
Kod:
ffuf -u http://example.com -w /usr/share/seclists/Discovery/DNS/subdomains-top1million-5000.txt -H "Host: FUZZ.example.com" -fs 1234
Varsayılan sayfa boyutunu -fs ile filtreleyip, farklı boyut döndüren gerçek vhost'ları yakalarsınız.

6. İ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
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).


Ek DosyalarEkran Görüntüleri
   
Cevapla



Hızlı Menü: