HTTP/HTTPS (80/443)
Don't forget to check robots.txt!
Enumeration
Feroxbuster
Feroxbuster is similar to gobuster but uses more threads by default and has a recursive method which gobuster does not have. You can start with a small list, but if nothing useful is found you can use the larger "medium" list.
feroxbuster -e -x php html txt / -u http://$IP -w /usr/share/wordlists/dirb/common.txt
feroxbuster -e -x php html txt / -u http://$IP -w /usr/share/wordlists/dirbuster/directory-list-lowercase-2.3-medium.txt
Gobuster
However, there are times that feroxbuster breaks and starts displaying every page attempted. In those cases I go back to gobuster.
gobuster dir -u http://$IP -w /usr/share/wordlists/dirb/common.txt
FFUF
search for subdomains (notice the -fs to filter by size)
ffuf -w /usr/share/seclists/Discovery/DNS/namelist.txt -H "Host: FUZZ.acmeitsupport.thm" -u http://10.10.195.230 -fs {size}
fuzz for existing usernames
ffuf -w /usr/share/seclists/Usernames/Names/names.txt -X POST -d "username=FUZZ&email=x&password=x&cpassword=x" -H "Content-Type: application/x-www-form-urlencoded" -u http://10.10.77.43/customers/signup -mr "username already exists"
brute force valid accounts (use anything but status 200 as valid submission)
ffuf -w valid_users.txt:W1,/usr/share/seclists/Passwords/Common-Credentials/10-million-password-list-top-100.txt:W2 -X POST -d "username=W1&password=W2" -H "Content-Type: application/x-www-form-urlencoded" -u http://10.10.77.43/customers/login -fc 200
PHPINFO document root
If you have access to a phpinfo.php file you can find the document root fast with curl
curl http://$IP/phpinfo.php | grep 'DOCUMENT_ROOT' | html2text
Last updated