GARY IS COMING FOR YOU

You shouldn't have done that.

⚙ MALEVELON CREEK
CLICK TO SCAN
SPACE-BAR SERVICE DESK

Bartender

Here to help you explore

Questions and relevant page context are sent to TypeSafe. Questions Bartender cannot answer are saved to improve the site, without your account or IP. Other conversation stays in this tab.

ffuf Tool Reference


ffuf (Fuzz Faster U Fool) is a fast web fuzzer written in Go. It's highly flexible for directory discovery, parameter fuzzing, virtual host discovery, and more.


Basic Usage

  • ffuf -u <url>/FUZZ -w <wordlist> - Basic directory fuzzing
  • FUZZ keyword marks where wordlist entries are inserted

Input Options

  • -u - Target URL with FUZZ keyword
  • -w - Wordlist file (can use multiple: -w list1:KEYWORD1 -w list2:KEYWORD2)
  • -X - HTTP method (default GET)
  • -d - POST data
  • -H - Header (can use multiple)
  • -b - Cookie data

Matcher Options (Show Results)

  • -mc - Match HTTP status codes (default 200,204,301,302,307,401,403,405)
  • -ml - Match response line count
  • -mr - Match regex pattern
  • -ms - Match response size
  • -mw - Match word count
  • -mt - Match response time (milliseconds)

Filter Options (Hide Results)

  • -fc - Filter HTTP status codes
  • -fl - Filter by line count
  • -fr - Filter by regex
  • -fs - Filter by response size
  • -fw - Filter by word count
  • -ft - Filter by response time

Output Options

  • -o - Output file
  • -of - Output format (json, ejson, html, md, csv, all)
  • -od - Output directory for matched results
  • -v - Verbose output
  • -s - Silent mode (no banner)
  • -c - Colorize output

Performance Options

  • -t - Threads (default 40)
  • -p - Delay between requests (seconds, e.g., 0.1)
  • -rate - Requests per second
  • -timeout - Request timeout (default 10)

Other Options

  • -r - Follow redirects
  • -recursion - Enable recursion
  • -recursion-depth - Max recursion depth
  • -e - Extension list (.php,.html,.txt)
  • -ic - Ignore wordlist comments
  • -ac - Autocalibrate filtering
  • -x - Proxy URL
  • -replay-proxy - Send matches through proxy

Common Examples

Directory Discovery

ffuf -u http://example.com/FUZZ -w wordlist.txt

Basic directory brute forcing.

With Extensions

ffuf -u http://example.com/FUZZ -w wordlist.txt -e .php,.html,.txt

Add extensions to each word.

Filter by Size

ffuf -u http://example.com/FUZZ -w wordlist.txt -fs 4242

Hide responses of specific size.

POST Parameter Fuzzing

ffuf -u http://example.com/login -X POST -d "user=admin&pass=FUZZ" -w passwords.txt

Fuzz POST parameters.

Header Fuzzing

ffuf -u http://example.com -H "X-Custom-Header: FUZZ" -w wordlist.txt

Fuzz header values.

Virtual Host Discovery

ffuf -u http://example.com -H "Host: FUZZ.example.com" -w subdomains.txt -fs 4242

Find virtual hosts.

GET Parameter Fuzzing

ffuf -u "http://example.com/page?id=FUZZ" -w numbers.txt

Fuzz GET parameters.

Multiple Wordlists

ffuf -u http://example.com/FOLDER/FILE -w dirs.txt:FOLDER -w files.txt:FILE

Use multiple wordlists with keywords.

Autocalibrate

ffuf -u http://example.com/FUZZ -w wordlist.txt -ac

Automatically calibrate filters.

With Proxy

ffuf -u http://example.com/FUZZ -w wordlist.txt -x http://127.0.0.1:8080

Route through Burp Suite.

Rate Limited

ffuf -u http://example.com/FUZZ -w wordlist.txt -rate 50

Limit to 50 requests/second.

Recursive

ffuf -u http://example.com/FUZZ -w wordlist.txt -recursion -recursion-depth 2

Recurse into found directories.


Tips

  • Use -ac for auto-calibration on unknown targets
  • Filter by size (-fs) when pages return custom 404s
  • Use -replay-proxy to send only matches through Burp
  • Multiple FUZZ keywords enable complex fuzzing
  • Faster than gobuster for most use cases
  • Use -e for extension fuzzing
  • Match on response time (-mt) can find blind vulns
  • Always get authorization before scanning