Runs deep scans automatically — quick, normal, or aggressive mode. Detects open ports, service versions, OS fingerprint, and traceroute path.
📋
WHOIS + DNS
Fetches domain ownership, registrar, expiry date, and all DNS records. Checks SPF and DMARC — flags missing records as phishing risks.
🛡️
CVE Mapping
Queries the NVD API for every detected service version. Returns real CVE IDs, CVSS scores, severity ratings, and direct NVD links.
👁️
Shodan Intel
Passive enrichment — queries Shodan without touching the target. Returns ISP, geolocation, historical ports, and tagged vulnerabilities.
🌐
Subdomain Enum
Discovers all subdomains via subfinder and DNS brute-force. Resolves each to an IP — maps the full external attack surface.
📊
Risk Scoring
Weighted algorithm scores every host 0–100. Labels each Critical / High / Medium / Low based on open ports, CVEs, and Shodan tags.
🕓
Scan History
Every scan stored in SQLite. Re-scanning shows exactly what changed — new ports, closed ports, and risk score delta since last scan.
🕸️
Topology Graph
Maltego-style interactive vis.js node graph. Target at center — ports, services, and subdomains as color-coded draggable nodes.
📄
HTML + PDF Report
Single self-contained HTML file with sticky nav, scroll animations, and dark theme. One-click PDF export for clients or submissions.
// risk engine
Risk Scoring System
80+CRITICAL
Telnet, RDP, SMB open. Active exploitable CVEs. Immediate action required.
55+HIGH
High-risk ports open. High CVSS CVEs matched. Remediate soon.
30+MEDIUM
Some exposure present. Medium severity vulnerabilities detected.
0+LOW
Minimal exposure. Standard ports, no critical CVEs found.
// live demo
Terminal Output
kali@kali — NetRecon v1.0
┌──(kali㉿kali)-[~/Desktop/NetRecon]└─$ sudo python3 recon.py -t scanme.nmap.org -i normal ███╗ ██╗███████╗████████╗██████╗ ███████╗ ██████╗ ██████╗ ███╗ ██╗ NetRecon v1.0 — Advanced Network Reconnaissance Tool [!] For authorized use only. Always obtain proper permission. [*] Target: scanme.nmap.org [*] Intensity: normal | Format: html [*] Started at: 2024-11-15 14:32:11 [*] Running nmap scan... [+] Discovered 1 host(s), 6 open port(s) [*] Fetching WHOIS & DNS records... [+] WHOIS & DNS enrichment complete [*] Looking up CVEs via NVD API... [+] Found 5 CVE(s) — 2 CRITICAL, 1 HIGH, 2 MEDIUM [*] Enumerating subdomains... [+] Found 6 subdomain(s) [*] Calculating risk scores... [+] Overall risk: CRITICAL (Score: 95/100) [*] Saving to scan history... [+] Diff: 2 new port(s) since last scan (+30 risk delta) [*] Generating report... [+] HTML report: output/netrecon_report_20241115_143211.html [+] Scan complete!└─$
// output preview
Generated Report — Interactive Preview
Click each tab below to see what NetRecon shows in the actual report for scanme.nmap.org
📋 Summary
🕸 Topology
🖥 Hosts
🔓 Ports
🛡 CVEs
🌐 Subdomains
🔍 WHOIS/DNS
📡 Traceroute
1
Hosts
6
Open Ports
2
Critical CVEs
1
High CVEs
6
Subdomains
95
Risk Score
Target scanme.nmap.org was scanned on 2024-11-15 14:32:11.
The scan discovered 1 active host with
6 open ports. CVE analysis identified
5 vulnerabilities, of which
2 are rated CRITICAL.
Subdomain enumeration discovered 6 subdomains
expanding the attack surface. Overall risk posture is rated
CRITICAL (95/100).
Immediate remediation recommended for Telnet (port 23) and RDP (port 3389).
High privileged attacker can cause MySQL Server to hang or crash repeatedly
Subdomain
Resolved IP
Status
www.nmap.org
45.33.32.156
✓ Resolved
mail.nmap.org
45.33.32.158
✓ Resolved
svn.nmap.org
45.33.32.159
✓ Resolved
blog.nmap.org
45.33.32.160
✓ Resolved
api.nmap.org
Unresolved
✗ No DNS record
dev.nmap.org
Unresolved
✗ No DNS record
REGISTRANT
Insecure.Com LLC
REGISTRAR
GoDaddy.com LLC
CREATED
2008-01-23
EXPIRES
2025-01-23
COUNTRY
United States 🇺🇸
NAME SERVERS
ns1.linode.com ns2.linode.com
EMAIL SECURITY CHECKS
✓ SPF: Present
✗ DMARC: Missing — email spoofing risk
Network path from scanner to scanme.nmap.org — 4 hops detected
HOP 1
192.168.1.1
1.2ms
→
HOP 2
10.0.0.1
3.5ms
→
HOP 3
72.14.215.1
12.1ms
→
HOP 4 · TARGET
45.33.32.156
24.8ms
Total latency: 24.8ms · Hops to target: 4 · No packet loss detected · ASN: AS63949 (Linode)
// project structure
File Structure
RShasikiran / NetRecon
📁NetRecon/
├── 🟢recon.py← START HERE
├── ⚙️install.sh← one-time Kali setup
├── 📋requirements.txt← Python packages
├── 📖README.md← documentation
├── ⚖️LICENSE← MIT license
├── 📦modules/
│ ├── 🔎scanner.py← nmap engine + XML parser
│ ├── 🌐whois_dns.py← WHOIS + DNS enrichment
│ ├── 🛡️cve_lookup.py← NVD API CVE mapping
│ ├── 👁️shodan_lookup.py← Shodan passive intel
│ ├── 🌍subdomain_enum.py← subdomain discovery
│ ├── 📊risk_scorer.py← weighted risk scoring
│ ├── 🕓history.py← SQLite scan history
│ └── 📄report_gen.py← HTML/PDF report builder
└── 📂output/
├── 🌟demo_report.html← sample report preview
└── 🗄️netrecon_history.db← auto-created SQLite DB
👨💻
// Tool Developer
R. Shasi Kiran
Built NetRecon from scratch — a full-spectrum network reconnaissance and visual reporting framework. BTech Cybersecurity student with a focus on offensive security tools, network analysis, and Python automation.