Cyber Intelligence tool for domain reconnaissance and vulnerability assessment
Project description
๐ฆ DomainRaptor
DomainRaptor is a comprehensive Cyber Intelligence & Attack Surface Management (ASM) tool designed for red team operations, security assessments, and continuous monitoring. It aggregates data from multiple sources to provide deep visibility into an organization's external attack surface.
๐ฏ What is DomainRaptor?
DomainRaptor is built for security professionals who need to:
- Discover all external assets (subdomains, IPs, certificates, services)
- Assess security configurations and vulnerabilities
- Monitor changes in the attack surface over time
- Report findings in multiple formats for different audiences
๐ Key Features
๐ Multi-Source Discovery
| Source | Type | Free Tier |
|---|---|---|
| crt.sh | Certificate Transparency | โ Unlimited |
| HackerTarget | Subdomain enumeration | โ 100/day |
| Shodan | Port/service/CVE data | โ 100/month |
| ZoomEye | Subdomain discovery | โ Free |
| Censys | IP lookup | โ Free |
๐ก๏ธ Security Assessment
- SSL/TLS certificate analysis and validation
- DNS security checks (DNSSEC, SPF, DMARC, DKIM)
- HTTP security header compliance
- CVE correlation with CVSS scoring
- Risk calculation based on exposure
๐ Reporting
- HTML - Interactive dashboard with charts
- JSON/YAML - Machine-readable for automation
- Markdown - Documentation-friendly
- PDF - Executive summaries
๐๏ธ Continuous Monitoring
- Track changes between scans
- Alert on new assets or vulnerabilities
- Historical comparison with diff reports
๐ฆ Installation
Using pip (recommended)
pip install domainraptor
From source
git clone https://github.com/ErnestoCubo/DomainRaptor.git
cd DomainRaptor
pip install -e .
Using uv (fastest)
uv pip install domainraptor
๐ง Quick Start
1. Configure API Keys (optional but recommended)
# View available integrations
domainraptor config list
# Set API keys
domainraptor config set SHODAN_API_KEY your-shodan-key
domainraptor config set ZOOMEYE_API_KEY your-zoomeye-key
domainraptor config set CENSYS_API_TOKEN censys_xxx_yyy
# Test configuration
domainraptor config test
2. Run Your First Scan
# Full reconnaissance scan
domainraptor recon fullscan example.com
# Quick subdomain discovery
domainraptor discover subdomains example.com
# Security assessment
domainraptor assess config example.com
3. Generate Reports
# HTML dashboard
domainraptor report generate example.com -f html -o report.html
# JSON for automation
domainraptor report generate example.com -f json -o data.json
๐ Command Reference
Discovery Commands
# Subdomain enumeration from multiple sources
domainraptor discover subdomains example.com
# Shodan host enrichment
domainraptor discover shodan-host 1.2.3.4
# ZoomEye subdomain search (free)
domainraptor discover zoomeye-subdomains example.com
# Censys IP lookup (free)
domainraptor discover censys-host 1.2.3.4
# Certificate search
domainraptor discover certs example.com
Reconnaissance Commands
# Full attack surface scan
domainraptor recon fullscan example.com
# With specific sources
domainraptor recon fullscan example.com --no-shodan --no-censys
# Limit results
domainraptor recon fullscan example.com --max-results 50
Assessment Commands
# Full security assessment
domainraptor assess config example.com
# SSL/TLS analysis
domainraptor assess ssl example.com
# DNS security check
domainraptor assess dns example.com
Report Commands
# Generate HTML report
domainraptor report generate example.com -f html
# List available scans
domainraptor report list example.com
# Compare two scans
domainraptor compare scans 1 2
Monitoring Commands
# Watch for changes (runs periodically)
domainraptor watch start example.com --interval 24h
# List active watchers
domainraptor watch list
๐๏ธ Project Structure
DomainRaptor/
โโโ src/domainraptor/
โ โโโ cli/ # Typer CLI commands
โ โ โโโ commands/ # discover, assess, report, recon, watch
โ โโโ core/ # Configuration and models
โ โโโ discovery/ # API clients (Shodan, ZoomEye, Censys, etc.)
โ โโโ assessment/ # Security checks (SSL, DNS, headers)
โ โโโ enrichment/ # VirusTotal, WHOIS, etc.
โ โโโ reporting/ # HTML, JSON, PDF generators
โ โโโ storage/ # SQLite database layer
โ โโโ utils/ # Logging, output formatting
โโโ tests/ # Pytest test suite
โโโ wiki/ # Documentation (GitHub Wiki)
โโโ docs/ # Additional documentation
๐ API Keys & Free Tiers
| Service | Free Tier | What You Get |
|---|---|---|
| Shodan | 100/month | Port scanning, CVE lookup, banners |
| ZoomEye | Subdomain free | Subdomain enumeration (host search paid) |
| Censys | IP lookup free | Direct IP lookup (search paid) |
| VirusTotal | 500/day | Malware analysis, URL reputation |
Note: Basic functionality works without API keys using crt.sh and HackerTarget.
๐บ๏ธ Roadmap
- Multi-source subdomain discovery
- Shodan integration with CVE enrichment
- ZoomEye international API support
- Censys Platform API v3 (PAT token)
- HTML/JSON/YAML reports
- SQLite scan history
- Risk scoring algorithm
- WHOIS lookup integration
- Active port scanning
- Nuclei template integration
- Slack/Discord notifications
- Docker container
๐ค Contributing
Contributions are welcome! Please:
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature) - Commit changes (
git commit -m 'Add amazing feature') - Push to branch (
git push origin feature/amazing-feature) - Open a Pull Request
๐ License
This project is open source under the MIT License.
โ ๏ธ Disclaimer
This tool is intended for legal security research and authorized penetration testing only. Users are responsible for ensuring they have proper authorization before scanning any targets. Unauthorized scanning may violate laws and service terms.
๐ Documentation: Wiki | ๐ Issues: GitHub Issues | ๐ฌ Discussions: GitHub Discussions
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file domainraptor-0.6.0.tar.gz.
File metadata
- Download URL: domainraptor-0.6.0.tar.gz
- Upload date:
- Size: 310.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f4f0a6acf0aa7a1d5085bc546f3668bf361febebb7697951c968fd89c9eb9bcd
|
|
| MD5 |
9bf0d13f21d2fae2e2ecafc9d1056903
|
|
| BLAKE2b-256 |
776387110ff95752e1b9a75cce04b1731ec037e9901a49a32fc915d57e58cd10
|
Provenance
The following attestation bundles were made for domainraptor-0.6.0.tar.gz:
Publisher:
publish.yml on ErnestoCubo/DomainRaptor
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
domainraptor-0.6.0.tar.gz -
Subject digest:
f4f0a6acf0aa7a1d5085bc546f3668bf361febebb7697951c968fd89c9eb9bcd - Sigstore transparency entry: 1662618591
- Sigstore integration time:
-
Permalink:
ErnestoCubo/DomainRaptor@6a29efa554f3de1d274269ca3f174238f998eb00 -
Branch / Tag:
refs/heads/main - Owner: https://github.com/ErnestoCubo
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@6a29efa554f3de1d274269ca3f174238f998eb00 -
Trigger Event:
workflow_dispatch
-
Statement type:
File details
Details for the file domainraptor-0.6.0-py3-none-any.whl.
File metadata
- Download URL: domainraptor-0.6.0-py3-none-any.whl
- Upload date:
- Size: 194.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
73b8dce6f04e6a5a9f49de8ad30b63613a019c66a99f660aca5189d2e3e2fd23
|
|
| MD5 |
7de70cf38c16eb1bf353830518ee7c73
|
|
| BLAKE2b-256 |
41a7875065f9dd34283ce10516fd1f7e5de6ea80e4848d7ee31e666ca1a5f6d1
|
Provenance
The following attestation bundles were made for domainraptor-0.6.0-py3-none-any.whl:
Publisher:
publish.yml on ErnestoCubo/DomainRaptor
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
domainraptor-0.6.0-py3-none-any.whl -
Subject digest:
73b8dce6f04e6a5a9f49de8ad30b63613a019c66a99f660aca5189d2e3e2fd23 - Sigstore transparency entry: 1662618902
- Sigstore integration time:
-
Permalink:
ErnestoCubo/DomainRaptor@6a29efa554f3de1d274269ca3f174238f998eb00 -
Branch / Tag:
refs/heads/main - Owner: https://github.com/ErnestoCubo
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@6a29efa554f3de1d274269ca3f174238f998eb00 -
Trigger Event:
workflow_dispatch
-
Statement type: