loading
loading
Fuzzing
Recursive HTTP directory and file fuzzer.
overview
Point -u at a live URL and -w at a directory wordlist. -r descends into discovered directories. -cP and -cN filter status codes; -e appends extensions.
Reach for it when a prober already confirmed the host and you need a deep content tree from one seed without re-running per level.
ffuf covers parameter and vhost modes with richer filtering. medusa stays recursion-first for directory trees. Not the older medusa login brute-forcer.
source github.com/riza/medusa
use cases
Fuzz a live host with a content wordlist to surface admin panels, backups, and endpoints that are not linked from any page.
Enable recursive fuzzing so medusa descends into each directory it finds and fuzzes inside it, building a full tree from a single seed URL.
Feed a URL list so one wordlist runs against every target in the same job, then collect all discovered paths in one output.
Set positive or negative status codes to keep only the responses that matter, cutting redirect and not-found noise out of the results.
reference
| Name | Type | Flag | Description |
|---|---|---|---|
| url | STRING | -u | Single target URL to fuzz. |
| url-list | FILE | -uL | File of target URLs, one per line, to fuzz many hosts in one run. |
| wordlist | FILE | -w | Directory wordlist file, one entry per line. |
| recursive | BOOLEAN | -r | Enable recursive fuzzing into discovered directories. |
| extension | STRING | -e | Extension appended to each wordlist entry. |
| positive-status-codes | STRING | -cP | Status codes to keep as hits, separated by commas. |
| negative-status-codes | STRING | -cN | Status codes to drop, separated by commas. |
| concurrent | STRING | -conc | Maximum concurrent requests. |
Showing key inputs. medusa exposes 13 inputs in total.
| Name | Type | Flag | Description |
|---|---|---|---|
| cpu | STRING | -cpus | Number of CPU cores to use. |
| url | STRING | -u | Single target URL to fuzz. |
| schema | STRING | -s | Force the scheme; defaults to http when the URL has none. |
| timeout | STRING | -t | HTTP response timeout in seconds (default 10s). |
| url-list | FILE | -uL | URL list file path, one target per line. |
| wordlist | FILE | -w | Directory wordlist file, one entry per line. |
| extension | STRING | -e | Extension appended to each wordlist entry. |
| recursive | BOOLEAN | -r | Enable recursive fuzzing into discovered directories. |
| bypass-ssl | BOOLEAN | -x | Bypass SSL certificate verification. |
| concurrent | STRING | -conc | Maximum number of concurrent requests. |
| user-agent | STRING | -ua | User-Agent header value to send. |
| negative-status-codes | STRING | -cN | Negative status codes to drop, separated by commas. |
| positive-status-codes | STRING | -cP | Positive status codes to keep as hits, separated by commas. |
example
# recursive content discovery against a live hostmedusa -u https://example.com -w /wordlists/directory-list.txt -r -e php -cP 200,204,301,302,403medusa v0.2.1 by rizasabuncu-----------------------------------------[*] URL/List: https://example.com[*] Recursive fuzz: true-----------------------------------------[200] https://example.com/admin - 4821[301] https://example.com/backup - 0[403] https://example.com/.git/ - 162[200] https://example.com/admin/config.php - 2044[+] Total time: 3.417sguidance
Use medusa for recursive directory discovery on a host you already know is live. Recursion maps a deep tree from one seed. For a richer FUZZ engine with parameter and vhost modes, use ffuf; for a flexible payload framework, use wfuzz.
General FUZZ engine with parameter and vhost modes plus response filtering. medusa is leaner and recursion-first.
Flexible fuzzing framework with many payload sources. medusa trades that breadth for recursive directory discovery.
Directory and file brute forcing built for extreme scale across many hosts at once.
faq
related
A fast web fuzzer written in Go.
Passive archive miner for parameterized URLs on a domain.
Enumerate IIS 8.3 short filenames to recover hidden paths.
Directory and file brute forcing across many hosts.
ffuf looped over a URL list in one node.
Folder-output ffuf for a single target.
A target URL and a directory wordlist feed medusa, which fuzzes the host recursively and writes the discovered paths as a queryable output.
Facts on this page come from the live Trickest tool library.