The Vulnerability Scanner is a Python-based cybersecurity tool that performs basic security assessments on a website or locally hosted web application. It helps identify common security issues such as open ports, missing HTTP security headers, and server information disclosure.
This project was developed as a beginner cybersecurity mini project to understand how vulnerability assessment works and how security professionals identify potential weaknesses before attackers exploit them.
- Scan common TCP ports
- Detect open ports
- Check for missing HTTP security headers
- Identify server information disclosure
- Generate a vulnerability report
- Provide basic security recommendations
- Simple command-line interface
- Python 3
- Socket Module
- Requests Library
- VS Code
Vulnerability-Scanner/
│
├── scanner.py
├── report.txt
├── requirements.txt
├── README.md
└── screenshots/
├── task1.png
├── server.png
└── report.png
Clone the repository:
git clone https://github.com/your-username/basic-vulnerability-scanner.gitMove into the project folder:
cd basic-vulnerability-scannerInstall the required package:
pip install -r requirements.txtRun the scanner:
python scanner.pyEnter the target:
localhost
or
example.com
The scanner will:
- Scan common ports
- Check HTTP security headers
- Detect server information disclosure
===== OPEN PORT SCAN =====
Port 80 OPEN
===== SECURITY HEADER CHECK =====
Content-Security-Policy Missing
X-Frame-Options Present
Strict-Transport-Security Missing
Server: Python HTTP Server
Scans common ports including:
- 21 (FTP)
- 22 (SSH)
- 25 (SMTP)
- 53 (DNS)
- 80 (HTTP)
- 110 (POP3)
- 143 (IMAP)
- 443 (HTTPS)
- 3306 (MySQL)
- 3389 (RDP)
- 8080 (HTTP Alternate)
Checks for:
- Content-Security-Policy
- X-Frame-Options
- Strict-Transport-Security
- X-Content-Type-Options
- Referrer-Policy
Detects exposed Server headers.
After every scan, a report is automatically generated:
report.txt
The report includes:
- Target
- Open ports
- Missing security headers
- Server information
- Security recommendations
User Input
│
▼
Target Validation
│
▼
Port Scan
│
▼
Header Analysis
│
▼
Server Information Detection
│
▼
Generate Report
- Port range scanning
- Banner grabbing
- SSL/TLS certificate analysis
- HTML report generation
- PDF report export
- CVE lookup
- Multithreading for faster scans
- Risk severity classification
- GUI interface
This tool is intended for educational purposes only.
Only scan systems or web applications that you own or have explicit permission to test. Unauthorized scanning may violate laws or organizational policies.
Paul Doniyal J
Cybersecurity Student
Interested in SOC, Blue Team Operations, SIEM, Splunk, Network Security, and Vulnerability Assessment.