ffuf - Fuzz Faster U Fool

0

ffuf - Fuzz Faster U Fool

 


## Kurulum


- [Download] önceden oluşturulmuş bir ikili dosya, paketinden çıkarın ve çalıştırın!
 
 go lang indir
 
veya
 
- En son go derleyiciniz kuruluysa:
`go install github.com/ffuf/ffuf@latest` (aynı komut güncelleme için çalışır)
 
  veya

- `git clone https://github.com/ffuf/ffuf ; cd ffuf ; go get ; go build`

Ffuf, Go 1.16 veya daha yüksek bir sürüme bağlıdır.


## Örnek kullanım

Aşağıdaki kullanım örnekleri, kullanarak gerçekleştirebileceğiniz en basit görevleri göstermektedir.
 `ffuf`.

Gerçek hayattan kullanım örnekleri ve ipuçları içeren daha kapsamlı belgeler için harika kılavuza göz atmayı unutmayın:

"[Everything you need to know about FFUF]" by
Michael Skelton

Ayrıca ffuf taramalarınızı farklı dersler içeren canlı bir ana bilgisayara karşı uygulayabilir ve yerel olarak docker kapsayıcısını kullanarak vakaları kullanabilirsiniz https://github.com/adamtlangley/ffufme veya http://ffuf.me oluşturulan canlı barındırılan sürüme karşı Adam Langley [@adamtlangley]
 
 
 
###  Tipik dizin keşfi

URL'nin sonunda FUZZ anahtar sözcüğünü kullanarak (`-u`):

```
ffuf -w /path/to/wordlist -u https://target/FUZZ
```

### Sanal ana bilgisayar keşfi (DNS kayıtları olmadan)

Varsayılan sanal ana bilgisayar yanıt boyutunun 4242 bayt olduğunu varsayarsak, Host - başlığını bulanıklaştırırken bu boyuttaki (`-fs 4242`) tüm yanıtları filtreleyebiliriz:


```
ffuf -w /path/to/vhost/wordlist -u https://target -H "Host: FUZZ" -fs 4242
```

### GET parametresi bulanıklaştırma

GET parametre adı bulanıklaştırma, dizin keşfetmeye çok benzer ve URL'nin bir parçası olarak "FUZZ" anahtar sözcüğünü tanımlayarak çalışır. Bu aynı zamanda geçersiz GET parametresi adı için 4242 baytlık bir yanıt boyutu olduğunu varsayar.


```
ffuf -w /path/to/paramnames.txt -u https://target/script.php?FUZZ=test_value -fs 4242
```

Parametre adı biliniyorsa, değerler aynı şekilde bulanıklaştırılabilir. Bu örnek, HTTP yanıt kodu 401'i döndüren yanlış bir parametre değeri olduğunu varsayar.


```
ffuf -w /path/to/values.txt -u https://target/script.php?valid_name=FUZZ -fc 401
```

### POST veri bulanıklaştırma

Bu, yine `FUZZ` anahtar sözcüğünü kullanarak çok basit bir işlemdir. Bu örnek, POST isteğinin yalnızca bir kısmını bulanıklaştırıyor. 401 yanıtı tekrar filtreliyoruz.


```
ffuf -w /path/to/postdata.txt -X POST -d "username=admin\&password=FUZZ" -u https://target/login.php -fc 401
```

### Maksimum yürütme süresi

ffuf'un süresiz olarak çalışmasını istemiyorsanız, `-maxtime` kullanabilirsiniz. Bu, belirli bir süre sonra (saniye cinsinden) __tüm__ işlemi durdurur.


```
ffuf -w /path/to/wordlist -u https://target/FUZZ -maxtime 60
```

Özyineleme ile çalışırken, `-maxtime-job` kullanarak maxtime __per job__ değerini kontrol edebilirsiniz. Bu, belirli bir süre sonra (saniye cinsinden) mevcut işi durduracak ve bir sonrakiyle devam edecektir. Özyineleme işlevi bir alt dizin algıladığında yeni işler oluşturulur.


```
ffuf -w /path/to/wordlist -u https://target/FUZZ -maxtime-job 60 -recursion -recursion-depth 2
```

Genel yürütme süresinin yanı sıra iş başına maksimum yürütme süresini sınırlayan her iki bayrağı birleştirmek de mümkündür. Özyineleme kullanmazsanız, her iki bayrak da eşit davranır.


### Test senaryoları üretmek için harici mutator kullanma

Bu örnekte, POST üzerinden gönderilen JSON verilerini bulanıklaştıracağız. Mutatör olarak [Radamsa] kullanılır.


`--input-cmd` kullanıldığında, ffuf eşleşmeleri konumları olarak görüntüler. Bu aynı konum değeri, aranan kişi için "$FFUF_NUM" ortam değişkeni olarak kullanılabilir. Bu konum değerini mutator için tohum olarak kullanacağız. example1.txt ve example2.txt dosyaları, geçerli JSON yükleri içerir. Tüm yanıtları eşleştiriyoruz, ancak "400 - Kötü istek" yanıt kodunu filtreliyoruz:


```
ffuf --input-cmd 'radamsa --seed $FFUF_NUM example1.txt example2.txt' -H "Content-Type: application/json" -X POST -u https://ffuf.io.fi/FUZZ -mc all -fc 400
```

Elbette her bir yük için mutatörü çağırmak çok verimli değildir, bu nedenle, yine de örnek olarak [Radamsa] kullanarak yükleri önceden oluşturabiliriz:


```
# 1000 örnek yük oluştur
radamsa -n 1000 -o %n.txt example1.txt example2.txt

# Bu, 1.txt ... 1000.txt dosyalarına neden olur 
# Şimdi ffuf dosyasındaki yük verilerini bir döngü içinde okuyabiliriz


ffuf --input-cmd 'cat $FFUF_NUM.txt' -H "Content-Type: application/json" -X POST -u https://ffuf.io.fi/ -mc all -fc 400
```
 
 
 

## Kullanım


ffuf için test senaryosunu tanımlamak için, URL (`-u`), başlıklar (`-H`) veya POST verilerinin (`-d`) herhangi bir yerinde `FUZZ` anahtar kelimesini kullanın.


```
Fuzz Faster U Fool - v1.3.0-dev

HTTP SEÇENEKLERİ:
  -H Üstbilgi `"Ad: Değer"`, iki nokta üst üste ile ayrılmış. Çoklu -H bayrakları kabul edilir.
  -X HTTP yöntemi kullanılacak
  -b Çerez verileri `"NAME1=VALUE1; NAME2=VALUE2"` kıvrılma işlevi olarak kopyalamak için.
  -d POST verileri
  -ignore-body Yanıt içeriğini getirme. (varsayılan: yanlış)
  -r Yönlendirmeleri takip et (varsayılan: yanlış)
  -özyineleme Özyinelemeli olarak tarayın. Yalnızca FUZZ anahtar sözcüğü desteklenir ve URL (-u) bunun içinde bitmelidir. (varsayılan: yanlış)
  -recursion-depth Maksimum yineleme derinliği. (varsayılan: 0)
  -recursion-strategy Özyineleme stratejisi: yönlendirme tabanlı "varsayılan" ve tüm eşleşmelerde yinelenen "açgözlü" (varsayılan: varsayılan)
  -replay-proxy Bu proxy'yi kullanarak eşleşen istekleri yeniden yürütün.
  -sni Hedef TLS SNI, FUZZ anahtar sözcüğünü desteklemiyor
  -timeout HTTP isteğinin saniye cinsinden zaman aşımı. (varsayılan: 10)
  -u Hedef URL
  -x Proxy URL'si (SOCKS5 veya HTTP). Örneğin: http://127.0.0.1:8080 veya çoraplar5://127.0.0.1:8080

GENEL SEÇENEKLER:

  -V                  Sürüm bilgilerini göster. (default: false)
  -ac                 Filtreleme seçeneklerini otomatik olarak kalibre edin (default: false)
  -acc               Özel otomatik kalibrasyon dizesi. Birden çok kez kullanılabilir. ima
  -c                  Çıktıyı renklendir. (default: false)
  -config             Bir dosyadan yapılandırmayı yükleyin  
-maxtime Tüm süreç için saniye cinsinden maksimum çalışma süresi. (varsayılan: 0)
  -maxtime-job İş başına saniye cinsinden maksimum çalışma süresi. (varsayılan: 0)
  -interactive Etkileşimli konsol işlevini devre dışı bırakın (varsayılan: yanlış)
  -p İstekler arasındaki "gecikme" saniyesi veya bir dizi rastgele gecikme. Örneğin "0.1" veya "0.1-2.0"
  -rate Saniyedeki istek oranı (varsayılan: 0)
  -s Ek bilgi yazdırmayın (sessiz mod) (varsayılan: yanlış)
  -sa Tüm hata durumlarında dur. -sf ve -se anlamına gelir. (varsayılan: yanlış)
  -se Sahte hatalarda dur (varsayılan: yanlış)
  -sf Yanıtların > %95'i 403 Yasak döndürdüğünde dur (varsayılan: yanlış)
  -t Eşzamanlı iş parçacığı sayısı. (varsayılan: 40)
  -v Ayrıntılı çıktı, tam URL yazdırma ve sonuçlarla (varsa) konumu yeniden yönlendirme. (varsayılan: yanlış)

EŞLEŞTİRİCİ SEÇENEKLERİ:
  -mc HTTP durum kodlarını eşleştir veya her şey için "tümü". (varsayılan: 200,204,301,302,307,401,403,405,500)
  -ml Yanıttaki satırların miktarını eşleştir
  -mr Eşleştirme normal ifadesi
  -ms HTTP yanıt boyutunu eşleştir
  -mt İlk yanıt baytına kaç milisaniye, daha büyük veya daha küçük olsun. EG: >100 veya <100
  -mw Yanıttaki kelime miktarını eşleştir

FİLTRE SEÇENEKLERİ:
  -fc Yanıttan HTTP durum kodlarını filtreleyin. Kodların ve aralıkların virgülle ayrılmış listesi
  -fl Yanıt olarak satır miktarına göre filtreleyin. Satır sayıları ve aralıklarının virgülle ayrılmış listesi
  -fr Filtre normal ifadesi
  -fs HTTP yanıt boyutunu filtreleyin. Boyut ve aralıkların virgülle ayrılmış listesi
  -ft İlk yanıt baytına milisaniye sayısına göre filtrele (büyük veya küçük). EG: >100 veya <100
  -fw Yanıt olarak sözcük miktarına göre filtreleyin. Kelime sayıları ve aralıklarının virgülle ayrılmış listesi

GİRİŞ SEÇENEKLERİ:
  -D DirSearch wordlist uyumluluk modu. -e bayrağı ile birlikte kullanılır. (varsayılan: yanlış)
  -e Virgülle ayrılmış uzantı listesi. FUZZ anahtar sözcüğünü genişletir.
  -ic Kelime listesi yorumlarını yoksay (varsayılan: yanlış)
  -input-cmd Girdiyi üreten komut. --input-num bu giriş yöntemini kullanırken gereklidir. -w'yi geçersiz kılar.
  -input-num Test edilecek giriş sayısı. --input-cmd ile birlikte kullanılır. (varsayılan: 100)
  -input-shell Shell komutu çalıştırmak için kullanılacak
  -mode Çoklu wordlist çalışma modu. Kullanılabilir modlar: küme bombası, dirgen, keskin nişancı (varsayılan: küme bombası)
  -request Ham http isteğini içeren dosya
  Ham istekle birlikte kullanılacak -request-proto Protokolü (varsayılan: https)
  -w Wordlist dosya yolu ve (isteğe bağlı) iki nokta üst üste ile ayrılmış anahtar sözcük. Örneğin. '/path/to/wordlist:ANAHTAR KELİME'

ÇIKIŞ SEÇENEKLERİ:
  -debug-log Tüm dahili günlükleri belirtilen dosyaya yazın.
  -o Dosyaya çıktı yaz
  -od Eşleşen sonuçların depolanacağı dizin yolu.
  -of Çıktı dosya biçimi. Kullanılabilir biçimler: json, ejson, html, md, csv, ecsv (veya tüm biçimler için 'tümü') (varsayılan: json)
  -veya Sonuç yoksa çıktı dosyasını oluşturmayın (varsayılan: yanlış)

ÖRNEK KULLANIM:
  wordlist.txt dosyasındaki fuzz dosya yolları, tüm yanıtlarla eşleşir, ancak içerik boyutu 42 olanları filtreler.
  Renkli, ayrıntılı çıktı.
    ffuf -w wordlist.txt -u https://example.org/FUZZ -mc all -fs 42 -c -v

  Fuzz Host-header, HTTP 200 yanıtlarıyla eşleşir.
    ffuf -w hosts.txt -u https://example.org/ -H "Ana Bilgisayar: FUZZ" -mc 200

  Fuzz POST JSON verileri. "Hata" metnini içermeyen tüm yanıtları eşleştirin.
    ffuf -w input.txt -u https://example.org/ -X POST -H "İçerik Türü: uygulama/json" \
      -d '{"name": "FUZZ", "anotherkey": "anothervalue"}' -fr "hata"

  Birden fazla yeri bulanıklaştırın. Yalnızca "VAL" anahtar kelimesinin değerini yansıtan yanıtları eşleştirin. Renkli.
    ffuf -w params.txt:PARAM -w değerleri.txt:VAL -u https://example.org/?PARAM=VAL -mr "VAL" -c

  Daha fazla bilgi ve örnek: https://github.com/ffuf/ffuf

```
 
 
ffuf ile Fuzzing & Directory Brute-Force
 

 
 
 

source:Hackersploit
 
 


En iyi kullanım linux

```
ffuf -c -w /usr/share/seclists/Discovery/Web-Content/big.txt  -u https://www.domain.com/FUZZ -fc 301,302,307,403,405,500 -ac

```

 
 

Yorum Gönder

0 Yorumlar

Yorum yaptığın için teşekkürler

Yorum Gönder (0)

#buttons=(Accept !) #days=(20)

Our website uses cookies to enhance your experience. Learn More
Accept !
To Top