Web application · Open source (MIT License)

ffuf

ffuf (Fuzz Faster U Fool) is a fast, open-source web fuzzer written in Go. You give it a wordlist and a URL containing the keyword FUZZ, and it substitutes each wordlist entry into that position, sending requests and reporting the responses. Because FUZZ can go anywhere, in the path, a parameter, a header, a cookie or the POST body, it is used for directory and file discovery, virtual-host discovery, parameter fuzzing and simple brute forcing during web recon.

Last updated: 6 August 2026

What ffuf is actually used for

ffuf automates the trial-and-error of probing a web app. Point FUZZ at the URL path with a directory wordlist to discover hidden folders and files; put FUZZ in the Host header to enumerate virtual hosts; place it in a query parameter to find valid values or injectable inputs. Its match and filter options (by status code, size, word or line count) cut through noise so real hits stand out, and its speed makes large wordlists practical. It is a core recon tool for finding attack surface that is not linked anywhere on the site.

Platforms

Linux · Windows · macOS

Licence

Open source (MIT License)

Commands worth knowing

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

Directory and file discovery by fuzzing the URL path.

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

Append extensions to each word to find files, not just directories.

ffuf -w hosts.txt -u https://example.com -H "Host: FUZZ.example.com"

Virtual-host discovery by fuzzing the Host header.

ffuf -w params.txt -u "https://example.com/api?FUZZ=test"

Enumerate valid parameter names on an endpoint.

ffuf -w wordlist.txt -u https://example.com/FUZZ -mc 200,301,302

Match only these HTTP status codes to filter results.

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

Filter out responses of a given byte size (for example a soft-404 page).

ffuf -w users.txt:UFUZZ -w pass.txt:PFUZZ -u https://example.com/login -X POST -d "user=UFUZZ&pass=PFUZZ"

Use multiple wordlists with named keywords for POST fuzzing.

The legal line

Fuzzing sends large numbers of real requests, so run ffuf only against web applications you own or are explicitly authorised to test. Hammering a third-party site is active testing and can be treated as unauthorised access, or as a denial-of-service if it overloads the server, under the IT Act 2000. Stay within scope and reasonable request rates.

What ffuf is bad at

Results are only as good as the wordlist, so it will not find endpoints that are not in it. Soft-404 pages and dynamic responses cause false positives unless you tune match/filter options carefully. High thread counts can overload targets or trip rate limiting and WAFs, and it discovers surface only, it does not test the logic behind what it finds.

Alternatives, and when to pick them

ToolPick it when
gobusterYou want a simple, fast directory/DNS/vhost buster with straightforward modes.
feroxbusterYou want fast recursive directory brute forcing out of the box.
wfuzzYou want the older, flexible Python fuzzer with a similar keyword approach.
dirsearchYou want a directory brute-forcer tuned with sensible defaults and extensions.
Burp IntruderYou need fuzzing tightly integrated with proxy history and manual testing.

Where we teach it

Ethical Hacking Course (6 months) — web reconnaissance and content discovery module

We are not affiliated with, endorsed by, or a reseller for the vendors of any tool on this site.

ffuf — FAQs

What is ffuf used for?

ffuf is a web fuzzer for content discovery and input fuzzing. It is most commonly used to find hidden directories and files, enumerate virtual hosts, and test parameter names or values by substituting a wordlist into the FUZZ keyword.

ffuf vs gobuster, which is better?

ffuf is more flexible because FUZZ can be placed anywhere, in the path, headers, cookies or body, with rich match/filter options. gobuster is simpler and very fast for straightforward directory, DNS and vhost busting. Many testers use both.

How do I reduce false positives in ffuf?

Use match and filter flags: match specific status codes (-mc), and filter out the size, word or line count of the soft-404/default page (-fs, -fw, -fl). Calibrating against a known-bad response removes most noise.

ffuf se hidden directories kaise dhoondein?

FUZZ ko URL path mein rakhein aur ek achhi wordlist dein: ffuf -w wordlist.txt -u https://site.com/FUZZ. Phir status codes match karke (-mc) aur soft-404 size filter karke (-fs) real results nikaalein. Sirf authorised sites par.

Learn ffuf properly, in a legal lab

Free counselling call. We will tell you honestly whether a full course is worth it for what you actually want to do.

Call +91 75175 72000