Nisa ORMAN
Nisan 21, 2025
Dirb’in ana işlevi, web sunucularında doğrudan bağlantı verilmeyen ya da göz önünde bulunmayan dizinleri keşfetmektir. Bu dizinler kimi zaman geliştiriciler tarafından test amaçlı oluşturulmuş, kimi zaman ise unutulmuş önemli yapılar olabilir. Örnek verilirse:
Bu tür dizinler, doğru güvenlik önlemleri alınmadıysa dışarıya tamamen açık olabilir. Dirb, bu tür dizinlerin varlığını tespit ederek sızma testlerinde kritik ön bilgiler sağlar.
Dirb, kullanıcıdan bir hedef URL ister. Daha sonra belirli bir wordlist (kelime listesi) yardımıyla bu hedefteki olası dizinleri test eder. Her kelime listesi öğesi, bir URL dizini olarak sorgulanır. Örneğin, “login” kelimesi için http://hedefsite.com/login sorgusu yapılır. Sunucudan gelen yanıt başarılıysa (örneğin HTTP 200 OK) bu dizin sistemde mevcuttur.
Bu işlemler sırasında Dirb:
Dirb, Linux sistemlerde doğrudan terminal üzerinden çalıştırılabilir. Temel kullanım örneği şu şekildedir:
dirb http://orneksite.com
Eğer özel bir kelime listesi kullanmak istenirse komut şu şekilde genişletilebilir:
dirb http://orneksite.com /usr/share/wordlists/dirb/common.txt
HTTPS destekleyen bir site taranacaksa:
dirb https://guvenlisite.com
İsteğe bağlı olarak -X parametresi ile dosya uzantıları da eklenebilir:
dirb http://orneksite.com -X .php,.html
Bu sayede sadece dizinler değil, belirli uzantılara sahip dosyalar da keşfedilebilir.
Bu tür dizinler, doğru güvenlik önlemleri alınmadıysa dışarıya tamamen açık olabilir. Dirb, bu tür dizinlerin varlığını tespit ederek sızma testlerinde kritik ön bilgiler sağlar.
Dirb’in Avantajları
Dirb’in Sınırlamaları
Dirb Yerine Kullanılabilecek Alternatifler
Dirb, bu araçlar arasında özellikle sadeliği ve temel işlevleriyle öne çıkar.
Dirb’in çalışma mantığı, aslında klasik bir brute-force (kaba kuvvet) tekniğinin web dizinlerine uygulanmış hâlidir. Ancak burada yapılan şey, şifre denemesi değil, web yol yapısının tahmin edilmesidir.
Dirb, kelime listesini kullanarak her bir kelimeyi hedef siteye dizin ya da dosya gibi gönderir ve sunucudan gelen HTTP yanıt kodlarına göre değerlendirme yapar:
Bazı güvenlik açıkları, özellikle yanlış yapılandırılmış yönlendirme ve 403 hataları üzerinden tespit edilebilir. Yani Dirb yalnızca “var mı-yok mu?” sorusuna yanıt vermez, aynı zamanda potansiyel zafiyetlerin sinyallerini de gösterir.
Her web uygulaması aynı yapıya sahip değildir. Mesela WordPress tabanlı sistemlerde wp-admin ya da wp-login gibi standart klasör isimleri sıklıkla karşımıza çıkar. Bu tür sistemlere özel kelime listeleri kullanmak başarı oranını artırır. Kendi kelime listenizi oluşturmak için Linux’ta şu komutu kullanabilirsiniz:
find /var/www/html -type d | sed ‘s/.*\///’ > mylist.txt
Bu komut, yerel bir web sitesinin dizinlerini çıkarır ve liste haline getirir.
Hedef sitenin güvenlik duvarına yakalanmamak için istekler arasında zaman gecikmesi (delay) eklemek önemlidir. Dirb doğrudan bu ayarı sunmaz, ancak proxy veya burp suite repeater kullanarak manuel kontrol sağlanabilir.
Bazı durumlarda sadece .php, .html gibi belirli dosya türlerini taramak isteyebilirsin. Dirb’de -X parametresi ile bunu özelleştirebilirsin:
dirb http://site.com -X .php,.bak,.html
Bazı siteler, mevcut olmayan tüm dizinler için yine de 200 OK dönebilir. Böyle senaryolarda Dirb, var olmayan kaynakları mevcutmuş gibi algılayabilir ve yanıltıcı sonuçlar gösterebilir. Bunun için ön kontrol yapılmalı ve sitenin hata sayfası (custom 404) test edilmelidir. Gerekirse FFUF gibi araçlarla kıyaslama yapılabilir.
Dirb, web uygulama güvenliğinde dizin taraması yapmak isteyen herkes için güçlü ve etkili bir araçtır. Açık kaynak yapısı, esnek kullanımı ve sade arayüzü sayesinde siber güvenlik uzmanlarının favori araçları arasında yer alır. Ancak her zaman olduğu gibi, bu tür araçların yalnızca izinli ortamlarda ve etik kurallar çerçevesinde kullanılması gerektiği unutulmamalıdır.
Hazırlayan-Yazan: Ezgi Su KAYA