Fuzzing Cheat Sheet

Fuzzing = throwing inputs at a target to find hidden endpoints, parameters, or crashes. Interface vs. content discovery are the two main jobs.

Content / Directory Discovery

ffuf

# directories
ffuf -u http://target/FUZZ -w /usr/share/wordlists/dirb/common.txt -mc 200,204,301,302,403
# files with extensions
ffuf -u http://target/FUZZ -w /usr/share/wordlists/seclists/Discovery/Web-Content/raft-small-files.txt -e .php,.html,.bak,.txt,.zip
# vhosts (Host header virtual host fuzz)
ffuf -u http://target -H "Host: FUZZ.target.local" -w /usr/share/wordlists/seclists/Discovery/DNS/subdomains-top1million-5000.txt -mc 200 -fw <filter-wc>
# parameters (use from a saved request)
ffuf -u "http://target/?FUZZ=1" -w /wordlists/params.txt -fs <size-of-orig-response>

gobuster

gobuster dir -u http://target -w /usr/share/wordlists/dirbuster/directory-list-2.3-medium.txt -t 50 -x php,txt,bak
gobuster dns -d target.com -w /usr/share/wordlists/seclists/Discovery/DNS/namelist.txt
gobuster vhost -u http://target -w /wordlists/vhosts.txt

dirsearch / feroxbuster

dirsearch -u http://target -e php,html,txt
feroxbuster -u http://target -w /wordlists/raft-medium-directories.txt --dont-extract-links

Parameter & Value Fuzzing

Header Fuzzing

Web Application Fuzzing (mutation)

Local Bruteforce (FFUF-style)

Good Wordlists

Rules