Directory Enumeration
Perform a directory enumeration scan on all HTTP endpoints in an Nmap scan and screenshot the results.
Setup
mkdir -p $PROJECT_DIR/dir_enum;cd $PROJECT_DIR/dir_enum
# Install Tools
sudo apt update && sudo apt install eyewitness naabu nuclei libpcap-dev golang-go libxml2-utils -y
go install -v github.com/projectdiscovery/httpx/cmd/httpx@latest
mv "$HOME/go/bin/httpx" "$HOME/go/bin/httpx-ng" # Competing package names
echo "export PATH=$PATH:$HOME/go/bin" >> "$HOME/.zshrc"
source "$HOME/.zshrc"Convert Nmap XML
xmllint --xpath '//host[status/@state="up"]/address[@addrtype="ipv4"]/@addr' $NMAP_TCP_XML_OUTPUT | \
sed 's/ addr="/\n/g' | sed 's/"//g' | grep -v '^$' | while read IP; do
xmllint --xpath "//host[address/@addr=\"$IP\"]/ports/port[state/@state='open']/@portid" $NMAP_TCP_XML_OUTPUT | \
sed 's/ portid="/\n/g' | sed 's/"//g' | grep -v '^$' | while read PORT; do
echo "$IP:$PORT"
done
done >> httpx.hostsCheck for HTTP Servers
Run Nuclei Scan
Create Fuzzing Wordlist
Run Directory Enumeration Scan (FFUF)
Watch this scan run for the first few minutes to make sure your getting valid results. I'd suggesting filtering by words when you are getting results for every attempt by updating the -fw flag (Ex. If every page returns a 200 response with 5 words, make the filter flag -fw 1,5)
Review Fuzzing Results
This test is prone of false positives, review the output to make sure there are no single hosts with an absurd number of 200 responses.
Screenshot Scan Results
Export Files
Last updated