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.hosts

Check for HTTP Servers

Run Nuclei Scan

circle-info

You can import these Nuclei results into Bitorarrow-up-right if the output is too much to review on screen.

Create Fuzzing Wordlist

Run Directory Enumeration Scan (FFUF)

circle-exclamation

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.

circle-info

If you find any single hosts that clearly had a load of false positive results, you can remove all hits from that host in our output using sed -i '/<FALSE_POSTIVE_IP>/d' enum_200-results.txt

Screenshot Scan Results

Export Files

Last updated