Web Application
Gobuster is a tool used to brute-force URIs (directories and files) in web sites, DNS subdomains, virtual host names on target web servers, and UUIDs.
apt-get install gobuster
gobuster [command] [flags]
Gobuster is a fast, multi-threaded directory and file brute-forcing tool written in Go. It discovers hidden directories, files, DNS subdomains, and virtual hosts on web servers by sending requests based on wordlists.
Created by OJ Reeves, Gobuster supports three distinct modes: directory brute force (dir), DNS subdomain enumeration (dns), and virtual host discovery (vhost). Each mode targets a different aspect of web application reconnaissance.
Its simplicity and speed make it a favorite among penetration testers. Unlike more complex fuzzers, Gobuster requires minimal configuration while still providing reliable results for content discovery tasks.
gobuster dir -u <URL> -w <wordlist>Directory brute forcegobuster dns -d <domain> -w <wordlist>DNS subdomain enumerationgobuster vhost -u <URL> -w <wordlist>Virtual host enumerationgobuster dir -u <URL> -w <wordlist> -x php,html,txtSearch for specific file extensionsgobuster dir -u <URL> -w <wordlist> -s 200,204,301,302,307Match only chosen HTTP status codesgobuster dir -u <URL> -w <wordlist> -b 404,403Blacklist status codes to reduce output noisegobuster dir -u <URL> -w <wordlist> -c "session=abc123"Send a cookie to scan authenticated areasgobuster dir -u <URL> -w <wordlist> -k -t 50Skip TLS validation and run with 50 threadsgobuster dir -u <URL> -w <wordlist> -o results.txtWrite discovered paths to an output filegobuster s3 -w bucket-names.txtEnumerate public AWS S3 buckets by namegobuster dir -u http://example.com -w /usr/share/wordlists/dirb/common.txtDirectory brute-forcegobuster dns -d example.com -w /usr/share/wordlists/subdomains.txtDNS subdomain brute-forcegobuster vhost -u http://example.com -w vhosts.txtVirtual host brute-forcegobuster dir -u http://example.com -w wordlist.txt -x php,html,txtWith file extensionsgobuster dir -u http://example.com -w wordlist.txt -t 5050 threadsFind hidden directories and files on web servers using wordlist-based brute forcing.
Discover subdomains of a target domain using DNS resolution checks.
Find virtual hosts hosted on a single IP by manipulating the Host header.
Search for specific file types like .php, .html, or .txt on web servers.
Map web application attack surfaces during authorized security assessments.
Discover hidden endpoints and admin panels in bug bounty programs.
Run 'gobuster dir -u http://example.com -w /usr/share/wordlists/dirb/common.txt' for directory brute forcing. For DNS enumeration: 'gobuster dns -d example.com -w /usr/share/wordlists/seclists/Discovery/DNS/subdomains-top1million-5000.txt'. Gobuster is pre-installed on Kali Linux.
Gobuster supports three modes: 'dir' for directory and file brute forcing, 'dns' for subdomain enumeration via DNS, and 'vhost' for virtual host discovery. Each mode uses different wordlist types and serves a distinct purpose in web application reconnaissance.
Default wordlists are in '/usr/share/wordlists/'. For directory brute forcing use 'dirb/common.txt' or 'dirbuster/directory-list-2.3-medium.txt'. For DNS enumeration use 'seclists/Discovery/DNS/subdomains-top1million-5000.txt'. These are included with most Kali installations.
Gobuster is fastest for quick directory discovery and simple DNS enumeration. FFUF offers more advanced fuzzing with parameter injection and filtering. DIRB is simplest but slower. Use Gobuster for speed, FFUF for precision, and DIRB for basic scans.
On Kali Linux, Gobuster is pre-installed. On Ubuntu/Debian: 'sudo apt install gobuster'. From source: 'go install github.com/OJ/gobuster/v3@latest' (requires Go 1.18+). Docker: 'docker run ghcr.io/oj/gobuster:latest'.
Run 'gobuster vhost -u http://example.com -w /usr/share/wordlists/dirb/common.txt'. This sends Host headers with each wordlist entry and identifies virtual hosts by analyzing response differences. Useful for finding hidden admin panels on shared hosting.
Web Application
Faster web fuzzer with advanced filtering for complex fuzzing scenarios.
Web Application
Simple web content scanner with built-in wordlists.
Web Application
Web server scanner for vulnerabilities on discovered paths.
Web Application
SQL injection testing on endpoints found by Gobuster.
Web Application
Template-based vulnerability scanner for testing discovered content.
The output lists discovered paths alongside HTTP status codes. A 200 means the resource was found, 301 or 302 indicates a redirection, 403 means the resource exists but access is denied, and 404 indicates it does not exist.
This tool is designed for authorized security testing, educational purposes, and legitimate network administration only. Unauthorized access to computer systems is illegal.