πŸ›‘οΈ Methodology Checklist

  • Run full recon methodology against assessment target
  • Document all discovered subdomains and vhosts
  • Identify CMS/technology stack
  • Discover all accessible endpoints and parameters
  • Note sensitive files or directories exposed
  • Identify any authentication bypass or information disclosure findings
  • Compile findings summary for reporting

🎯 Operational Context

Use when: Validating web recon methodology against a lab environment β€” practice running the full chain from passive to active enumeration. Think Dumber First: Follow the chain: WHOIS β†’ CT logs β†’ subfinder β†’ dnsx β†’ whatweb β†’ directory brute β†’ vhost fuzz β†’ crawl. Don’t skip steps to save time in labs β€” that habit carries into real engagements. Skip when: N/A β€” lab-specific walkthrough file.


⚑ Tactical Cheatsheet

CommandTactical Outcome
export IP=[TARGET_IP]; export PORT=[PORT]; export DOMAIN="[DOMAIN]"Set environment variables
whois [DOMAIN] | grep "IANA ID"Get registrar IANA ID (public domain)
curl -I http://$IP:$PORTBanner grab β€” identify server software
gobuster vhost -u http://$IP:$PORT -w [WORDLIST] --append-domain -t 50Layer 1 VHost discovery
echo "$IP [VHOST]" | sudo tee -a /etc/hostsMap discovered VHost
curl http://[VHOST]:$PORT/robots.txtCheck robots.txt on subdomain
gobuster dir -u http://[VHOST]:$PORT -w /usr/share/wordlists/dirb/common.txtDirectory brute-force on subdomain
curl http://[VHOST]:$PORT/[HIDDEN_DIR]/Access discovered directory
gobuster vhost -u http://[VHOST]:$PORT -w [WORDLIST] --append-domain -t 50Layer 2: scan subdomain for sub-subdomains
echo "$IP dev.[VHOST]" | sudo tee -a /etc/hostsMap deep subdomain
python3 ReconSpider.py http://dev.[VHOST]:$PORTCrawl deep subdomain
cat results.json | grep "comments" -A 5Find API keys in comments

πŸ”¬ Deep Dive & Workflow

Critical Pattern: Recursive VHost Enumeration

The key skill tested: finding sub-subdomains. When a subdomain appears empty, scan it for deeper VHosts.

Attack Chain

  1. Pre-engagement: Set IP, PORT, DOMAIN env vars
  2. WHOIS: Public domain queries (e.g., inlanefreight.com) β€” not the lab IP
  3. Banner grab: curl -I http://$IP:$PORT β†’ Server header
  4. VHost Layer 1: Gobuster β†’ finds web1337.inlanefreight.htb
  5. Map VHost β†’ add to /etc/hosts
  6. robots.txt check on new subdomain β†’ may reveal hidden directory
  7. Dir brute-force on new subdomain β†’ find /admin_h1dd3n/
  8. VHost Layer 2: Scan web1337.inlanefreight.htb for sub-subdomains β†’ finds dev.web1337.inlanefreight.htb
  9. Map deep VHost β†’ add to /etc/hosts
  10. ReconSpider crawl on dev.web1337.inlanefreight.htb β†’ results.json
  11. Extract data: emails key β†’ email address, comments key β†’ new API key

Exam Reminders

  • Public questions (IANA ID, Whois) β†’ query the real internet
  • Target questions (Server, Keys, Emails) β†’ query the lab IP
  • If crawler returns 0 results: check /etc/hosts, site may be empty (try dir brute-force), may be blocked (change User-Agent)
  • Don’t trust automation blindly β€” always manually verify with curl

πŸ› οΈ Troubleshooting & Edge Cases

ProblemCauseFix
Lab target not respondingVPN or target not startedRun ping [TARGET_IP] first; restart target in HTB panel if no response
Skills assessment flag not found after enumerationMissed a vhost or hidden endpointRe-run ffuf with bigger wordlist (raft-large-directories.txt); fuzz vhosts too
whatweb returns different results than expectedTarget config differs from lab guideDocument actual findings; lab guide may be outdated
Directory brute returns all 200sWeb server wildcard responseDetect baseline: curl http://[TARGET_IP]/randompath123 β€” if 200, filter by size (-fs [size])
CT log search returns no results for lab domainLab uses .htb or local TLDCT logs only work for real TLDs; use DNS brute and vhost fuzzing instead

πŸ“ Reporting Trigger

Finding Title: Web Recon Methodology Validation β€” Lab Assessment Impact: Skills assessment confirms operator proficiency with passive-to-active web recon chain including WHOIS, subdomain enumeration, vhost discovery, and fingerprinting. Root Cause: N/A β€” training exercise. Recommendation: Document full recon chain output. Flag any technique gaps for additional practice. Ensure all tool outputs are saved with tee for later reference.