πΉ VulnScanner β Smart Automated Vulnerability Scanner
VulnScanner is a Bash + Python hybrid tool built for Kali Linux that automates web and service vulnerability discovery, CVE enrichment, and exploitability checks.
It combines well-known security tools (nmap, nikto, gobuster, searchsploit) with the NVD API (nvdlib) to generate a professional vulnerability report.
β¨ Features
π Network & Service Scanning Uses Nmap to fingerprint open ports, detect services, and run vulnerability scripts.
π Web Vulnerability Testing Uses Nikto to scan for common web server misconfigurations and security issues.
π Directory Discovery Runs Gobuster against HTTP services to enumerate hidden files/folders.
π‘οΈ CVE Extraction & Enrichment Pulls CVEs from Nmap scan results, then uses NVD API (nvdlib) to fetch:
CVSS base scores
Severity levels (LOW, MEDIUM, HIGH, CRITICAL)
CWE IDs (weakness classification)
Vulnerability descriptions
Suggested remediation
π£ Exploitability Check Cross-references CVEs with ExploitDB (searchsploit) and known Metasploit modules to check if public exploits exist.
π Detailed Reporting Generates a structured text report including:
Scanned target summary
Found services and vulnerabilities
CVE details sorted by severity
Exploitability status (with ExploitDB/Metasploit links if found)
Remediation guidance
β³ Rate-limited API calls Automatically sleeps between NVD API calls to avoid rate-limit errors.
π Requirements
Make sure these packages are installed:
sudo apt update && sudo apt install -y nmap nikto gobuster exploitdb python3-pip jq pip3 install nvdlib
π File Structure
Your project looks like this:
~/vulnscanner/ βββ cve_reporter.sh # Bash wrapper script βββ cve_fetcher.py # Python CVE enrichment script βββ scan_results_/ # Auto-created per scan βββ nmap.txt βββ nmap_vuln_exploit.txt βββ nikto.txt βββ gobuster.txt βββ cve_ids.txt βββ cve_report.txt
π Usage
Make scripts executable:
chmod +x cve_reporter.sh cve_fetcher.py
Run the scanner against a target:
./cve_reporter.sh testphp.vulnweb.com
Review results inside the scan_results_/ folder. The final CVE report will be in:
scan_results_/cve_report.txt
CVE: CVE-2022-12345 Severity: HIGH CVSS Score: 7.8 CWE: CWE-79 (Cross-Site Scripting) Description: Vulnerability in XYZ service allows remote attackers to inject code. Exploit Status: Public exploit available (ExploitDB: 12345, Metasploit: exploit/multi/http/xyz) Remediation: Update XYZ to version 2.3.4 or later. Apply vendor patches.
CVE: CVE-2021-6789 Severity: CRITICAL CVSS Score: 9.8 CWE: CWE-89 (SQL Injection) Description: SQL Injection in ABC web app login page. Exploit Status: No public exploit found. Potential 0-day. Remediation: Use parameterized queries, sanitize inputs, apply vendor patch.
This tool is for educational purposes and authorized penetration testing only. Do not scan networks or systems without explicit written permission.