# Quick web recon
whatweb -a 3 http://$rhost && gobuster dir -u http://$rhost -w /usr/share/seclists/Discovery/Web-Content/common.txt -q
# A record
nslookup $domain
nslookup -query=A $domain
dig $domain @$ns
dig a $domain @$ns
# AAAA record (IPv6)
dig aaaa $domain @$ns
# Any record
nslookup -query=ANY $domain
dig any $domain @$ns
# MX record (mail)
nslookup -query=MX $domain
dig mx $domain @$ns
# TXT record
nslookup -query=TXT $domain
dig txt $domain @$ns
# NS record (nameserver)
dig ns $domain @$ns
# SOA record
dig soa $domain @$ns
# PTR record (reverse)
nslookup -query=PTR $rhost
dig -x $rhost @$ns
dig axfr $domain @$ns
nslookup -type=any -query=AXFR $domain $ns
host -t axfr $domain $ns
dnsrecon -d $domain
dnsrecon -d $domain -t axfr
dnsrecon -d $domain -t std
dnsrecon -d $domain -D /path/to/wordlist -t brt
dnsenum $domain
dnsenum --dnsserver $ns -f /path/to/wordlist $domain
fierce --domain $domain
fierce --domain $domain --dns-servers $ns
# Certificate Transparency
curl -s " https://crt.sh/?q=%25.$domain &output=json" | jq -r ' .[].name_value' | sort -u
# Subfinder
subfinder -d $domain
subfinder -d $domain -o subdomains.txt
# Amass
amass enum -d $domain
amass enum -passive -d $domain
amass enum -brute -d $domain -w /path/to/wordlist
# theHarvester
theHarvester -d $domain -b all
theHarvester -d $domain -b google,bing,crtsh
# Gobuster DNS
gobuster dns -d $domain -w /path/to/wordlist
gobuster dns -d $domain -w /usr/share/seclists/Discovery/DNS/subdomains-top1million-5000.txt
# FFuF
ffuf -w /path/to/wordlist -u http://FUZZ.$domain -ac
ffuf -w /path/to/wordlist -u http://FUZZ.$domain -mc 200,301,302
# Massdns
massdns -r resolvers.txt -t A -o S subdomains.txt -w results.txt
# FFuF
ffuf -w /path/to/wordlist -u http://$rhost -H " Host: FUZZ.$domain " -ac
ffuf -w /path/to/wordlist -u http://$rhost -H " Host: FUZZ.$domain " -fs 185
ffuf -w /path/to/wordlist -u http://$rhost -H " Host: FUZZ.$domain " -fw 10
# Gobuster
gobuster vhost -u http://$rhost -w /path/to/wordlist
gobuster vhost -u http://$rhost -w /path/to/wordlist --append-domain
# cURL
curl -s http://$rhost -H " Host: dev.$domain "
gobuster dir -u http://$rhost -w /path/to/wordlist
gobuster dir -u http://$rhost -w /path/to/wordlist -x php,txt,html
gobuster dir -u http://$rhost -w /path/to/wordlist -t 50 -e -k
gobuster dir -u http://$rhost -w /path/to/wordlist -b 403,404
ffuf -w /path/to/wordlist -u http://$rhost /FUZZ -ac
ffuf -w /path/to/wordlist -u http://$rhost /FUZZ -e .php,.txt,.html
ffuf -w /path/to/wordlist -u http://$rhost /FUZZ -mc 200,301,302,403
ffuf -w /path/to/wordlist -u http://$rhost /FUZZ -fc 404
ffuf -w /path/to/wordlist -u http://$rhost /FUZZ -recursion -recursion-depth 2
feroxbuster -u http://$rhost -w /path/to/wordlist
feroxbuster -u http://$rhost -w /path/to/wordlist -x php,txt
feroxbuster -u http://$rhost -w /path/to/wordlist --depth 3
dirsearch -u http://$rhost
dirsearch -u http://$rhost -e php,txt,html
dirsearch -u http://$rhost -w /path/to/wordlist
/usr/share/wordlists/dirb/common.txt
/usr/share/wordlists/dirb/big.txt
/usr/share/wordlists/dirbuster/directory-list-2.3-medium.txt
/usr/share/seclists/Discovery/Web-Content/common.txt
/usr/share/seclists/Discovery/Web-Content/raft-medium-directories.txt
/usr/share/seclists/Discovery/Web-Content/raft-medium-files.txt
Technology Fingerprinting
whatweb http://$rhost
whatweb -v http://$rhost
whatweb -a 3 http://$rhost # Aggressive mode
HTTP Headers
curl -I http://$rhost
curl -s -I http://$rhost | grep -i " server\|x-powered-by\|x-aspnet"
wafw00f http://$rhost
wafw00f -a http://$rhost # Check all WAFs
nikto -h http://$rhost
nikto -h http://$rhost -Tuning x
# Hakrawler
echo http://$rhost | hakrawler
echo http://$rhost | hakrawler -d 2
# GoSpider
gospider -s http://$rhost
gospider -s http://$rhost -d 2 -o output
# Katana
katana -u http://$rhost
katana -u http://$rhost -d 3 -o output.txt
# Wayback Machine
waybackurls $domain > wayback_urls.txt
# Extract Links
curl -s http://$rhost | grep -oP ' href="\K[^"]+' | sort -u
curl -s http://$rhost | grep -oP ' src="\K[^"]+' | sort -u
For detailed exploitation techniques, see dedicated cheatsheets:
PHP Filter Chain Generator
For LFI to RCE via PHP filter chains, see: File Inclusion - PHP Filter Chain
PHP Upload Filter Bypasses
.pht
.phtml
.phP
.Php
.php3
.php4
.php5
.php7
.phar
.php%00.jpeg
< FILE> .php%20
< FILE> .php%0a
< FILE> .php.jpg
< FILE> .php%00.gif
wpscan --url https://$rhost --enumerate u,t,p
wpscan --url https://$rhost --plugins-detection aggressive
wpscan --url https://$rhost --disable-tls-checks
wpscan --url http://$rhost -U < USERNAME> -P passwords.txt -t 50
# WordPress
curl -s http://$rhost /wp-config.php
curl -s http://$rhost /wp-login.php
# Drupal
curl -s http://$rhost /CHANGELOG.txt
curl -s http://$rhost /core/CHANGELOG.txt
# Joomla
curl -s http://$rhost /administrator/
curl -s http://$rhost /README.txt
Task
Command
DNS Zone Transfer
dig axfr $domain @$ns
Subdomain Brute
gobuster dns -d $domain -w wordlist
VHost Discovery
ffuf -u http://$rhost -H "Host: FUZZ.$domain" -w wordlist
Dir Enumeration
ffuf -u http://$rhost/FUZZ -w wordlist
Tech Detection
whatweb http://$rhost
Crawling
katana -u http://$rhost
Related Web Vulnerability Guides