Skip to content
Back to skills

Recon Dominator

ASecurity

Automated full-scope reconnaissance starting from a domain or domain list. Performs subdomain enumeration, port scanning, technology fingerprinting, OSINT correlation, Google dorking, and Wayback analysis. Use when user provides a domain or list of domains and asks for "recon", "reconnaissance", "attack surface mapping", "subdomain enumeration", "footprinting", or "information gathering". Designed for authorized penetration testing and bug bounty.

  • 24 stars
  • 0 votes
  • 0 copies
  • 4 views
  • Added May 26, 2026
securityjavascriptpythongojavaphpbashsqlreactvueangular

Works with

  • api

Security analysis

A100/100

Pro scans all 11 files and shows the line behind each finding

Scanned May 27, 2026

npx -y skills add Orizon-eu/claude-code-pentest --skill recon-dominator --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Recon Dominator?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Recon Dominator
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/orizon-eu-recon-dominator/badge)](https://www.skillsdirectory.com/skills/orizon-eu-recon-dominator)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: recon-dominator
description: Automated full-scope reconnaissance starting from a domain or domain list. Performs subdomain enumeration, port scanning, technology fingerprinting, OSINT correlation, Google dorking, and Wayback analysis. Use when user provides a domain or list of domains and asks for "recon", "reconnaissance", "attack surface mapping", "subdomain enumeration", "footprinting", or "information gathering". Designed for authorized penetration testing and bug bounty.
metadata:
  author: orizon.one
  version: 1.0.0
---

# Recon Dominator

Full-scope reconnaissance orchestrator. From a single domain to a complete attack surface map.

## Important

CRITICAL: Only use on domains you have explicit authorization to test. Verify scope before every engagement.

## Instructions

### Step 1: Scope Validation
Before ANY reconnaissance activity:
1. Ask the user to confirm they have written authorization to test the target domain(s)
2. Confirm the scope boundaries (wildcard subdomains? specific IPs only? out-of-scope assets?)
3. Document the scope in the output

### Step 2: Passive Subdomain Enumeration
Run passive enumeration first (no direct contact with target):

```bash
python scripts/passive_recon.py --domain {target_domain}
```

This collects subdomains from:
- Certificate Transparency logs (crt.sh)
- DNS datasets (SecurityTrails, DNSDumpster)
- Search engine results
- Wayback Machine archives

Expected output: JSON list of discovered subdomains with source attribution.

### Step 3: Active Subdomain Enumeration
After passive phase, run active enumeration:

```bash
python scripts/active_recon.py --domain {target_domain} --wordlist references/subdomains-wordlist.txt
```

This performs:
- DNS brute-force with common subdomain wordlist
- DNS zone transfer attempts
- Virtual host discovery
- Permutation/alteration scanning (dev-, staging-, api-, etc.)

### Step 4: Live Host Detection and Port Scanning

```bash
python scripts/port_scanner.py --input {subdomains_file} --top-ports 1000
```

For each live subdomain:
1. HTTP/HTTPS probe (status codes, redirects, titles)
2. Top 1000 port scan with service version detection
3. Banner grabbing on open ports
4. WAF/CDN detection (Cloudflare, Akamai, AWS CloudFront)

### Step 5: Technology Fingerprinting

```bash
python scripts/tech_fingerprint.py --input {live_hosts_file}
```

Detect:
- Web server (Apache, Nginx, IIS, etc.)
- Programming language/framework (PHP, Django, Rails, Spring, etc.)
- CMS (WordPress, Drupal, Joomla)
- JavaScript frameworks (React, Angular, Vue)
- Third-party services and integrations
- HTTP security headers (or lack thereof)

### Step 6: OSINT Correlation

```bash
python scripts/osint_correlator.py --domain {target_domain}
```

Gather:
- WHOIS history and registrant patterns
- ASN mapping and IP range ownership
- Reverse IP lookups (shared hosting)
- Email addresses associated with the domain
- Social media and GitHub references
- Leaked credentials databases (public sources only)

### Step 7: Google Dorking

```bash
python scripts/google_dorker.py --domain {target_domain} --dork-file references/dorks-database.txt
```

Automated searches for:
- Exposed files: `site:{domain} filetype:pdf|doc|xls|sql|bak|log|env`
- Login panels: `site:{domain} inurl:admin|login|dashboard`
- Directory listings: `site:{domain} intitle:"index of"`
- Error messages: `site:{domain} "sql syntax" | "warning" | "error"`
- Sensitive endpoints: `site:{domain} inurl:api|graphql|swagger|config`

### Step 8: Wayback Machine Analysis

```bash
python scripts/wayback_analyzer.py --domain {target_domain}
```

Extract:
- Historical endpoints no longer linked but still active
- Removed pages with sensitive information
- Old API versions still responding
- Parameter names from archived URLs
- JavaScript files with hardcoded secrets

### Step 9: Output Generation
Compile all findings into a structured report:

```bash
python scripts/generate_report.py --project {project_name}
```

Output format:
1. **Executive Summary**: domain count, subdomain count, live hosts, open ports, technologies
2. **Asset Inventory**: full list with metadata per asset
3. **Technology Matrix**: tech stack per subdomain
4. **Potential Entry Points**: ranked by interest level
5. **Relationship Graph**: JSON graph of domain relationships
6. **Raw Data**: all collected data in JSON for pipeline consumption

## Output Files Structure
```
output/{project_name}/
  summary.md           # Human-readable report
  assets.json          # Full asset inventory
  subdomains.json      # All discovered subdomains
  ports.json           # Port scan results
  technologies.json    # Tech fingerprinting
  osint.json           # OSINT findings
  wayback.json         # Historical data
  graph.json           # Relationship graph
  dorking_results.json # Google dork findings
```

## Error Handling

### Common Issues

#### Rate Limiting on External APIs
If you see "429 Too Many Requests":
1. The scripts have built-in rate limiting and backoff
2. If persistent, increase delay: `--delay 5`
3. For crt.sh: wait 60 seconds between requests

#### DNS Resolution Failures
If subdomains fail to resolve:
1. Try alternative DNS resolvers: `--resolvers 8.8.8.8,1.1.1.1,9.9.9.9`
2. Check if target uses split-horizon DNS
3. Some subdomains may be internal-only

#### Timeout on Port Scanning
For large scope (100+ subdomains):
1. Reduce port count: `--top-ports 100`
2. Increase timeout: `--timeout 10`
3. Run in batches: `--batch-size 20`

## Examples

### Example 1: Single Domain Recon
User says: "Run full recon on example.com"

Actions:
1. Confirm authorization
2. Run all steps sequentially on example.com
3. Generate consolidated report

Result: Complete attack surface map with all subdomains, services, and technologies.

### Example 2: Multi-Domain Bug Bounty Scope
User says: "I have a bug bounty scope: *.example.com, api.example.org, app.example.io"

Actions:
1. Confirm bug bounty program and scope rules
2. Run passive + active enum on each wildcard domain
3. For specific subdomains, skip enumeration, go directly to port scan
4. Cross-correlate findings between domains
5. Generate unified report

### Example 3: Quick Passive Only
User says: "Do passive recon only on example.com, no active scanning"

Actions:
1. Run only Steps 2, 6, 7, 8 (no direct target contact)
2. Skip active DNS brute, port scanning, tech fingerprinting
3. Generate report with passive findings only

Files in this skill

  • SKILL.md6.3 KB
  • references/subdomains-wordlist.txt1.9 KB
  • references/tools-setup.md1.1 KB
  • scripts/active_recon.py10.6 KB
  • scripts/generate_report.py9.9 KB
  • scripts/google_dorker.py7.9 KB
  • scripts/osint_correlator.py9.1 KB
  • scripts/passive_recon.py9.2 KB
  • scripts/port_scanner.py10.2 KB
  • scripts/tech_fingerprint.py8.8 KB
  • scripts/wayback_analyzer.py10.7 KB

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.