Copy this file for each new engagement. Check off as you go.
Program: ___________________________
Platform: ___________________________ (HackerOne / Bugcrowd / Intigriti / etc.)
Date Started: ___________________________
Primary Domain: ___________________________
Scope Notes: ___________________________
Out of Scope: ___________________________
Complete once per new target type. Skip if already familiar.
- Reviewed DNS record types relevant to target
- Understood CDN/proxy setup (Cloudflare? Akamai? Direct?)
- Identified if target uses load balancing or reverse proxies
- Reviewed HTTP headers on main domain with
curl -I - Checked CORS headers on main domain
- Identified parent company and subsidiaries
- Searched for M&A history
- Listed all known domains owned by the organization
- Checked for trademark/brand assets (USPTO, etc.)
-
subfinder -d target.com -
amass enum -passive -d target.com -
assetfinder --subs-only target.com - Certificate transparency:
crt.sh -
theHarvester -d target.com -b all - ProjectDiscovery Chaos (if available)
- SecurityTrails manual lookup
- VirusTotal subdomain lookup
- Combined and deduplicated all results →
subdomains-passive.txt
- GitHub search:
"target.com"+"target"org -
trufflehog github --org=targetorg -
gitleakson any found repos - Google dork:
site:github.com "target.com" password OR secret OR key - Google dork:
site:target.com ext:env OR ext:yml OR ext:config - Checked Pastebin / psbdmp
-
cloud_enum -k target -k targetcompany -
s3scannerwith generated bucket name list - Checked for Firebase exposure
-
gau target.com→urls-gau.txt -
waybackurls target.com→urls-wayback.txt -
waymore -i target.com→urls-waymore.txt - Combined →
urls-historical.txt - Filtered for interesting extensions:
.js .json .env .yml .config .php .asp .aspx
⚠️ Confirm scope before running any active tools.
-
dnsxto resolve all passive subdomains →subdomains-resolved.txt -
httpxto probe live HTTP/S hosts →hosts-live.txt -
naabuport scan on resolved hosts →open-ports.txt -
gowitnessscreenshots on all live hosts →screenshots/ - Reviewed screenshots for interesting targets
-
puredns bruteforcewith SecLists subdomain wordlist -
gotatorpermutation generation +puredns resolve - Virtual host brute force on interesting IPs
- Combined all →
subdomains-all.txt
-
ffufdirectory brute force (raft-medium-directories) -
ffuffile brute force (raft-medium-files) - Backup file wordlist (
backup,.bak,.old,~) -
arjunparameter discovery on interesting endpoints
-
whatwebon all live hosts -
wafw00fon in-scope domains - Checked SSL/TLS with
testssl.shorsslscanon interesting targets -
nuclei -t technologies/on live hosts
-
subzy run --targets subdomains-all.txt -
nuclei -l subdomains-all.txt -t nuclei-templates/takeovers/ - Manually reviewed dangling CNAMEs
-
katana -u https://target.com -jcto collect JS URLs - Combined with JS from
gau+waybackurls - Deduplicated JS URLs →
js-files.txt -
LinkFinderorJSluiceon all JS files -
secretfinder/trufflehogon all JS files - Reviewed output for hardcoded secrets
- Reviewed output for internal endpoints →
js-endpoints.txt
- Checked common API doc paths manually
-
kiterunnerAPI route brute force -
ffufwith API wordlists on API subdomains -
graphw00fon all targets for GraphQL detection - If GraphQL found: introspection query
- Checked for versioned API endpoints (
/v1,/v2,/api/v3)
- Deeper bucket enumeration with target naming patterns
-
nuclei -t cloud/on live hosts - Checked Shodan for target ASN
- Reviewed Censys for target certificate data
-
corsyCORS scan on all live hosts - Reviewed OAuth flows present in JS
- Identified SSO endpoints
- Mapped third-party integrations
- All subdomains deduplicated and organized
- All URLs deduplicated and organized
-
gf xss→potential-xss.txt -
gf sqli→potential-sqli.txt -
gf ssrf→potential-ssrf.txt -
gf redirect→potential-redirects.txt -
gf idor→potential-idors.txt -
unfurlanalysis on URL parameters - Set up change monitoring (if ongoing engagement)
- Reviewed all screenshots for high-value targets
- Identified admin/internal panels
- Prioritized targets by likely impact
- Correlated findings across sources
- Noted anomalies and unusual observations
- Created handoff notes
engagement-target.com/
├── subdomains-passive.txt ← Passive subdomain results
├── subdomains-resolved.txt ← DNS-resolved subdomains
├── subdomains-all.txt ← All subdomains combined
├── hosts-live.txt ← Verified live HTTP hosts
├── open-ports.txt ← Port scan results
├── urls-historical.txt ← Historical URL collection
├── js-files.txt ← JS file URLs
├── js-endpoints.txt ← Extracted JS endpoints
├── api-routes.txt ← API routes found
├── potential-xss.txt ← GF pattern: XSS candidates
├── potential-sqli.txt ← GF pattern: SQLi candidates
├── potential-ssrf.txt ← GF pattern: SSRF candidates
├── potential-redirects.txt ← GF pattern: Open redirect candidates
├── potential-idors.txt ← GF pattern: IDOR candidates
├── screenshots/ ← Gowitness screenshots
└── notes.md ← Manual observations & priority targets