Network Vulnerability Scanner
Overview
This project is an automated vulnerability scanner built in Python that streamlines the reconnaissance phase of penetration testing. It wraps around industry-standard tools while adding intelligent automation and reporting.
Features
- Host Discovery — Automated network sweeps using ARP and ICMP to identify live hosts on a target subnet
- Port Scanning — TCP SYN and full-connect scans with configurable port ranges and timing options
- Service Enumeration — Banner grabbing and version detection for discovered services
- CVE Correlation — Automatic lookup of known vulnerabilities against detected service versions using the NVD API
- Report Generation — Outputs findings in JSON, CSV, and a formatted HTML report
Tech Stack
- Python 3.10+ with
asynciofor concurrent scanning - python-nmap wrapper for Nmap integration
- Requests for NVD API queries
- Jinja2 for HTML report templates
- argparse for CLI interface
Usage
# Basic scan of a subnet
python scanner.py --target 192.168.1.0/24
# Full scan with CVE lookup and HTML report
python scanner.py --target 10.0.0.0/24 --ports 1-65535 --cve --output report.html
# Quick top-100 ports scan
python scanner.py --target 192.168.1.100 --quick
What I Learned
- Practical understanding of TCP/IP at the packet level
- Working with the Nmap scripting engine programmatically
- API integration for vulnerability correlation
- Building modular, extensible CLI tools in Python
⚠️ PLACEHOLDER PROJECT — Replace with your actual project details.