ningshenball/Vulnerability-Scanner
GitHub: ningshenball/Vulnerability-Scanner
一款简单易用的Python网络漏洞扫描器。
Stars: 0 | Forks: 0
# 漏洞扫描器
一个基于 Python 开发的简单强大的网络漏洞扫描器,用于教育和实习目的。
## 描述
该工具通过扫描端口、抓取服务标志、检查缺失的 HTTP 安全头以及识别潜在风险开放的端口,执行基本的网络侦察。它设计得轻量级、快速且易于使用。
## 功能
- 多线程端口扫描(快速)
- 服务标志抓取
- HTTP 安全头分析(针对端口 80 和 443)
- 常见危险端口的检测(Telnet、SMB、RDP 等)
- 清晰且带颜色的终端输出,带有进度条
- 以格式化表格显示结果
- 可选择以 JSON 和 TXT 格式保存报告
- 支持 IP 地址和域名
## 安装
### 环境要求
- Python 3.10 或更高版本
- pip
### 设置
```
git clone
cd vuln_scanner
python -m venv venv
venv\Scripts\activate # On Windows
# source venv/bin/activate # 在 Mac/Linux 上
pip install -r requirements.txt
```
## 使用方法
基本扫描
Bashpython main.py 192.168.1.1 -p 1-500
## 保存报告的扫描
Bashpython main.py scanme.nmap.org -p 1-1000 --save
## 完整示例
Bashpython main.py 192.168.1.1 -p 1-1000 --save
## 输出示例
```
textVulnerability Scanner
Target: 192.168.1.1 Ports: 1-1000
Scanning ports... 100% [████████████████████] 00:00:07
Port 53 OPEN → Normal service
Port 80 OPEN → Normal service
Missing Headers: Content-Security-Policy, Strict-Transport-Security, X-Content-Type-Options, Referrer-Policy
Port 443 OPEN → Normal service
Scan Results
+------+--------+------------------+
| Port | Risk | Notes |
+------+--------+------------------+
| 53 | LOW | Normal service |
| 80 | LOW | Normal service |
| 443 | LOW | Normal service |
+------+--------+------------------+
Total open ports found: 3
Report saved as: report_2026-06-03_02-46-31.json + .txt
Project Structure
textvuln_scanner/
├── main.py # Entry point and CLI
├── scanner.py # Port scanning and banner grabbing
├── checks.py # Dangerous ports and HTTP header checks
├── report.py # Report generation (JSON + TXT)
├── requirements.txt
└── README.md
```
## 未来改进
- 添加更多漏洞检查(SSL/TLS 配置、常见误配置)
- 添加对自定义词表/服务检测的支持
- 网页仪表板版本
- 导出为 PDF/HTML 格式
## 作为网络安全学习和实习项目的一部分构建
标签:逆向工具