Mastering the Art of Digital Reconnaissance: A Comprehensive Guide to Bug Bounty Hunting + Video

Listen to this Post

Featured Image

Introduction:

In the world of ethical hacking and bug bounty hunting, reconnaissance is not merely a preliminary step—it is the backbone of every successful vulnerability discovery operation. As security researcher Theekshana Kusal recently demonstrated with his open-sourced bug-hunting-recon repository, a well-structured reconnaissance methodology can transform a chaotic hunt into a streamlined, efficient process that consistently uncovers high-impact vulnerabilities. This comprehensive guide explores the essential tools, techniques, and workflows that form the foundation of modern bug bounty reconnaissance, drawing from industry-standard practices and real-world methodologies.

Learning Objectives:

  • Master passive and active subdomain enumeration techniques using industry-standard tools
  • Understand how to filter live assets and identify attack surfaces efficiently
  • Learn to automate reconnaissance workflows for maximum coverage and minimal manual effort

You Should Know:

1. Passive Subdomain Enumeration: The Foundation of Reconnaissance

Passive subdomain enumeration is the art of discovering subdomains without directly interacting with the target infrastructure. This approach minimizes the risk of detection while maximizing the discovery of hidden assets. The methodology begins with leveraging multiple data sources to build a comprehensive subdomain list.

Step-by-Step Guide:

Step 1: Install Essential Tools

 Install Subfinder
go install -v github.com/projectdiscovery/subfinder/v2/cmd/subfinder@latest

Install Amass
go install -v github.com/OWASP/Amass/v3/...@master

Install Assetfinder
go install github.com/tomnomnom/assetfinder@latest

Step 2: Create Working Directory Structure

mkdir -p recon/{target,subdomains,live,urls,parameters,findings}
cd recon/target

Step 3: Run Passive Enumeration with Multiple Tools

 Using Subfinder for fast passive enumeration
subfinder -d target.com -silent -all -recursive -o subfinder_subs.txt

Using Amass in passive mode for comprehensive results
amass enum -passive -d target.com -o amass_passive_subs.txt

Query Certificate Transparency logs
curl -s "https://crt.sh/?q=%25.target.com&output=json" | jq -r '.[].name_value' | sed 's/\.//g' | anew crtsh_subs.txt

Combine all results and remove duplicates
cat _subs.txt | sort -u | anew all_subs.txt

The `anew` tool from ProjectDiscovery is particularly useful here as it appends only new lines to the output file, preventing duplicates.

2. Active Subdomain Enumeration: Pushing Beyond Passive Discovery

While passive enumeration provides a solid foundation, active techniques uncover subdomains that aren’t publicly indexed. These methods involve DNS brute-forcing, permutation attacks, and resolution validation.

Step-by-Step Guide:

Step 1: Prepare DNS Resolution Infrastructure

 Install MassDNS for high-speed DNS resolution
git clone https://github.com/blechschmidt/massdns.git
cd massdns && make && sudo make install

Download quality wordlists
wget https://github.com/danielmiessler/SecLists/raw/master/Discovery/DNS/dns-Jhaddix.txt
wget https://github.com/assetnote/commonspeak2-wordlists/raw/master/subdomains/subdomains.txt

Use a reliable resolver list
wget https://raw.githubusercontent.com/janmasarik/resolvers/master/resolvers.txt

Step 2: Perform DNS Brute-Forcing

 Using MassDNS for bulk resolution
massdns -r resolvers.txt -t A -o S -w massdns_results.txt wordlist.txt

Using Shuffledns for intelligent permutation
shuffledns -d target.com -list all_subs.txt -r resolvers.txt -o active_subs.txt

Resolve and validate with DNSX
dnsx -l active_subs.txt -resp -o resolved_subs.txt

The combination of passive and active enumeration typically yields 20-50% more subdomains than using a single approach.

3. HTTP Probing and Live Asset Discovery

Once subdomains are enumerated, the next critical step is determining which assets are actually live and accessible. This phase filters out dead hosts and identifies the attack surface.

Step-by-Step Guide:

Step 1: Install HTTP Probing Tools

 Install httpx for fast HTTP probing
go install -v github.com/projectdiscovery/httpx/cmd/httpx@latest

Install nuclei for vulnerability scanning
go install -v github.com/projectdiscovery/nuclei/v3/cmd/nuclei@latest

Step 2: Probe Live Subdomains

 Probe subdomains for live HTTP/HTTPS services
httpx -l all_subdomains.txt -threads 100 -status-code -title -tech-detect -o live_hosts.txt

Filter for specific status codes
httpx -l all_subdomains.txt -mc 200,301,302,403 -o live_web_hosts.txt

Detect web technologies
httpx -l all_subdomains.txt -tech-detect -json -o tech_stack.json

Step 3: Check for Common Ports and Services

 Probe common web ports
naabu -list all_subdomains.txt -p 80,443,8080,8000,8443,9000 -o ports.txt

Combine with httpx for comprehensive scanning
naabu -list all_subdomains.txt -p 80,443,8080,8000,8443,9000 -verify | httpx -o verified_live.txt

4. Historical URL Discovery and Endpoint Enumeration

Historical URL discovery tools like `waybackurls` and `gau` (GetAllUrls) are absolute goldmines for bug bounty hunters. These tools extract URLs from the Wayback Machine, Common Crawl, and AlienVault OTX, revealing hidden endpoints, parameters, and old vulnerabilities.

Step-by-Step Guide:

Step 1: Install Historical URL Tools

 Install waybackurls
go install github.com/tomnomnom/waybackurls@latest

Install gau
go install github.com/lc/gau/v2/cmd/gau@latest

Install unfurl for domain extraction
go install github.com/tomnomnom/unfurl@latest

Step 2: Extract Historical URLs

 Basic waybackurls usage
waybackurls target.com > urls.txt

Process multiple domains
cat domains.txt | waybackurls > all_urls.txt

Using gau with subdomain support
gau --subs target.com | tee all_urls.txt

Step 3: Filter and Analyze URLs

 Extract JavaScript files for analysis
waybackurls target.com | grep ".js$" | sort -u > js_files.txt

Find API endpoints
waybackurls target.com | grep -Ei "api|v1|v2|graphql" | sort -u > api_endpoints.txt

Look for sensitive files
waybackurls target.com | grep -Ei ".bak|.old|.backup|.zip|.tar|.gz" > sensitive_files.txt

Extract parameters for fuzzing
waybackurls target.com | grep "?" | sort -u > parameter_urls.txt

5. Advanced Reconnaissance with Nuclei and Automation

Nuclei is not just a scanner—it’s a framework to automate all repetitive tasks in recon, pentesting, and bug bounty. Integrating Nuclei into your recon process can give you the edge over competitors and help you identify bounties faster.

Step-by-Step Guide:

Step 1: Set Up Nuclei

 Install Nuclei
go install -v github.com/projectdiscovery/nuclei/v3/cmd/nuclei@latest

Update Nuclei templates
nuclei -update-templates

Verify installation
nuclei -version

Step 2: Run Targeted Scans

 Scan live hosts for vulnerabilities
nuclei -l live_hosts.txt -t cves/ -o cve_findings.txt

Check for misconfigurations
nuclei -l live_hosts.txt -t misconfiguration/ -o misconfig_findings.txt

Scan for exposed secrets
nuclei -l live_hosts.txt -t exposures/ -o secrets_findings.txt

Combine with historical URLs
waybackurls target.com | nuclei -t vulnerabilities/

Step 3: Create Custom Templates

 Create a custom template directory
mkdir -p custom-templates

Example template structure for IDOR testing
cat > custom-templates/idor-test.yaml << EOF
id: idor-test

info:
name: IDOR Test Template
author: researcher
severity: medium

requests:
- method: GET
path:
- "{{BaseURL}}/user/{{rand_int}}"
matchers:
- type: status
status:
- 200
condition: or
EOF

6. Cloud Misconfiguration and API Security Recon

Modern bug bounty programs increasingly involve cloud infrastructure and APIs. Identifying misconfigured cloud storage and vulnerable API endpoints can lead to critical findings.

Step-by-Step Guide:

Step 1: Cloud Reconnaissance

 Install cloud_enum for cloud resource discovery
git clone https://github.com/initstring/cloud_enum.git
cd cloud_enum
pip3 install -r requirements.txt

Enumerate AWS S3 buckets
python3 cloud_enum.py -k target.com -l aws_s3_buckets.txt

Check for open buckets
aws s3 ls s3://target-bucket/ --1o-sign-request

Step 2: API Security Testing

 Install API testing tools
pip install apilist

Enumerate API endpoints
apilist -d target.com -o api_endpoints.txt

Test for common API vulnerabilities
 Using Burp Suite or custom scripts for:
 - IDOR testing
 - Authentication bypass
 - Injection attacks
 - Rate limiting issues

Step 3: JavaScript Analysis for Secrets

 Download and analyze JavaScript files
waybackurls target.com | grep ".js$" | while read url; do
curl -s "$url" | grep -E "api[_-]?key|token|secret|password" >> potential_secrets.txt
done

7. Organizing Findings and Report Generation

Documentation is crucial for successful bug bounty hunting. A well-organized repository of findings, methodologies, and technical reports enables efficient tracking and reproducible results.

Step-by-Step Guide:

Step 1: Create a Structured Repository

 Create project structure
mkdir -p bug-bounty-recon/{targets,findings,reports,tools,scripts}

Organize by target
mkdir -p bug-bounty-recon/targets/{target1,target2,target3}

Create findings template
cat > bug-bounty-recon/findings/template.md << EOF
 Vulnerability Report

Target
- URL: 
- Date:

Description

Steps to Reproduce

Proof of Concept

Impact

Remediation

References
EOF

Step 2: Automate Report Generation

 Create a simple reporting script
cat > bug-bounty-recon/scripts/generate_report.sh << 'EOF'
!/bin/bash
TARGET=$1
DATE=$(date +%Y%m%d)
echo " Bug Bounty Report - $TARGET" > "reports/${TARGET}<em>${DATE}.md"
echo " Subdomains Found" >> "reports/${TARGET}</em>${DATE}.md"
cat "targets/$TARGET/subdomains.txt" >> "reports/${TARGET}<em>${DATE}.md"
echo " Live Hosts" >> "reports/${TARGET}</em>${DATE}.md"
cat "targets/$TARGET/live_hosts.txt" >> "reports/${TARGET}<em>${DATE}.md"
echo " Vulnerabilities" >> "reports/${TARGET}</em>${DATE}.md"
cat "targets/$TARGET/findings.txt" >> "reports/${TARGET}_${DATE}.md"
EOF
chmod +x bug-bounty-recon/scripts/generate_report.sh

What Undercode Say:

  • Documentation is the foundation of reproducibility — A well-documented reconnaissance process ensures that findings can be verified, reproduced, and built upon by the security community.
  • Automation doesn’t replace creativity — While tools like Nuclei, Subfinder, and httpx automate repetitive tasks, the real challenge lies in identifying high-impact vulnerabilities through your own skills and creativity.
  • Continuous learning is essential — The security landscape evolves rapidly, and maintaining an organized methodology allows researchers to adapt and improve their approaches over time.
  • Open-source contributions strengthen the community — Sharing methodologies, tools, and findings helps elevate the entire bug bounty ecosystem and fosters collaborative security research.
  • Ethical considerations must remain paramount — All reconnaissance activities must strictly follow the rules of engagement (RoE) and scope defined by respective bug bounty programs.

Prediction:

  • +1 The increasing adoption of AI-powered reconnaissance tools will dramatically accelerate the discovery of vulnerabilities, enabling researchers to cover more attack surfaces in less time.
  • +1 Open-source reconnaissance repositories will become the industry standard, creating a collaborative ecosystem where security researchers share methodologies and findings.
  • +1 Automated reconnaissance pipelines will evolve to include real-time threat intelligence, allowing bug bounty hunters to prioritize high-value targets based on emerging attack patterns.
  • -1 The democratization of advanced reconnaissance tools may lead to increased unauthorized scanning and potential legal implications for inexperienced researchers.
  • -1 Organizations will need to invest significantly more in defensive monitoring to detect and respond to the sophisticated reconnaissance techniques employed by modern bug bounty hunters.
  • +1 The integration of API and cloud security testing into standard reconnaissance workflows will uncover previously overlooked vulnerabilities in modern application architectures.
  • +1 Machine learning-based anomaly detection in reconnaissance data will help researchers identify subtle patterns indicative of complex vulnerabilities that traditional tools might miss.

This article is based on industry-standard bug bounty methodologies and the open-source contributions of security researchers like Theekshana Kusal. Always ensure you have proper authorization before conducting any security testing on target systems.

▶️ Related Video (82% Match):

🎯Let’s Practice For Free:

🎓 Live Courses & Certifications:

Join Undercode Academy for Verified Certifications

🚀 Request a Custom Project:

Secure, high-velocity infrastructure and disruptive technological engineering. Contact our engineering team for high-tier development and proprietary systems:
[email protected]
💎 Smart Architecture | 🛡️ Secure by Design | ⭐ Trusted by Thousands

IT/Security Reporter URL:

Reported By: Theekshana Kusal – Hackers Feeds
Extra Hub: Undercode MoN
Basic Verification: Pass ✅

🔐JOIN OUR CYBER WORLD [ CVE News • HackMonitor • UndercodeNews ]

💬 Whatsapp | 💬 Telegram

📢 Follow UndercodeTesting & Stay Tuned:

𝕏 formerly Twitter 🐦 | @ Threads | 🔗 Linkedin | 🦋BlueSky