Skip to content

Gobuster

Gobuster is a fast and flexible command-line tool written in Go, used to brute-force:

  • URIs (directories and files) on web servers
  • DNS subdomains
  • Virtual hosts
  • S3 buckets
  • Open directories in file systems

It is commonly used during web application enumeration to find hidden resources or endpoints.


Gobuster works by taking a wordlist and appending each word to the target URL or domain. It sends HTTP requests to check if each resource exists. It’s multithreaded, making it much faster than traditional tools like dirb.


Terminal window
gobuster dir -u <URL> -w <wordlist>
Terminal window
gobuster dir -u http://192.168.1.100 -w /usr/share/wordlists/dirb/common.txt

This will scan the target URL for common directories/files.


OptionDescription
dirUse directory/file brute-forcing mode
dnsBrute-force DNS subdomains
vhostBrute-force virtual hostnames
s3Brute-force S3 buckets
-uTarget URL or domain
-wPath to wordlist
-tNumber of concurrent threads (default: 10)
-xFile extensions to append (e.g., .php,.html)
-oOutput results to file
-qQuiet mode (only shows results)
-eShow full URLs in output
--timeoutTimeout per request

Terminal window
gobuster dir -u http://example.com -w /path/to/wordlist.txt
Terminal window
gobuster dir -u http://example.com -w /usr/share/wordlists/dirb/common.txt -x php,html
Terminal window
gobuster dns -d example.com -w /usr/share/wordlists/dns/namelist.txt
Terminal window
gobuster vhost -u http://example.com -w /usr/share/wordlists/vhosts.txt

  • Use with Burp Suite to intercept suspicious or 403 responses.
  • Combine Gobuster with wfuzz for parameter fuzzing.
  • Use different status codes to identify potential hidden pages (e.g., 301, 403, 200).

  • Does not support recursive directory discovery (yet).
  • Can be blocked by WAFs and rate-limiting mechanisms.
  • Wordlist quality directly impacts results.

  • To enumerate directories and files on a web server
  • To discover subdomains of a target domain
  • To check for hidden or sensitive resources during a web app pentest

Use Gobuster with well-known wordlists like those from SecLists, such as:

Terminal window
/usr/share/seclists/Discovery/Web-Content/common.txt

Combine it with -x for extension testing and -t for speed tuning.