Ffuf Mux

Ffuf Mux, available herearrow-up-right, is a bash script that launches several tmux sessions and, for each target URL, runs a separate ffuf discovery task using ffuf_content_discovery.sh.

Each scan runs inside its own tmux session so that large fuzzing campaigns can be executed and controlled easily (pause, restart, or kill).

Requirements

You need the following programs installed on a Linux terminal:

  • ffuf

  • tmux

Optional but recommended:

Configuration

  • Move to the folder <folder_name> you want to use

  • Clone the repository

  • Change permissions for bash scripts

    chmod +x ffuf_mux.sh ffuf_content_discovery.sh

Run

Launch the TMUX sessions on TXT files

  • Create a folder targets with TXT files containing the URLs to be scanned. For example:

    target.txt:

    Each URL will generate one or more ffuf scans depending on the wordlists used.

  • Launch the script

    For each URL contained in the files inside the targets folder, a new tmux session will be created.

  • If you want to use a different folder as input:

For each URL, the script will create a different result file in the results sub-folder of the current working directory.

Example of final folder content:

Launch the TMUX sessions on URLS specified as parameter

Multiple URLs are supported:

For each URL, the script will create a different result file in the results sub-folder of the current working directory.

Optional Parameters

Parameter
Description
Example

--targets <dir>

Directory containing .txt files with target URLs (default: targets)

--targets custom_targets

--url <url>

Scan a specific URL directly (can be repeated)

--url https://example.com

--files <wordlist>

Wordlist for file discovery

--files wordlists/files.txt

--dirs <wordlist>

Wordlist for directory discovery

--dirs wordlists/dirs.txt

--wordlist <wordlist>

Generic fuzzing mode (disables file/dir split)

--wordlist wordlists/common.txt

--header "Header: value"

Custom HTTP header (repeatable)

--header "Authorization: Bearer TOKEN"

--threads <n>

Number of ffuf threads (default: 5)

--threads 20

--rate <rps>

Maximum requests per second (default: 30)

--rate 100

Default Wordlists

If no wordlists are specified, the script automatically uses:

Pause/restart the TMUX sessions

or:

In both cases, the script sends a carriage return to all tmux sessions with prefix ffufmux_, pausing or restarting the running ffuf scan.

Kill the TMUX sessions

The script kills all tmux sessions with prefix ffufmux_.

Last updated