Adheeb11/vulnerability-scanner
GitHub: Adheeb11/vulnerability-scanner
一款零依赖的轻量级 Python 漏洞扫描器,通过 TCP 端口扫描和基于规则的安全配置检查生成带风险评级的报告。
Stars: 0 | Forks: 0
# 漏洞扫描器
一款轻量级的 Python 工具,用于扫描目标主机的开放端口,标记常见的安全配置错误,并生成带有风险评级的报告。
## 功能
- **端口扫描** — 对常见服务端口进行 TCP connect 扫描
- **漏洞检查** — 基于规则的检测,识别不安全的服务和暴露的数据库
- **风险评分** — 数字化评分,并附带 SAFE / LOW / MEDIUM / HIGH 分类
- **报告生成** — 将结果保存至 `reports/report.txt`
## 环境要求
- Python 3.6+
- 无需第三方包(仅使用标准库)
## 项目结构
```
Vulnerability Scanner/
├── main.py # Entry point — prompts for target and orchestrates the scan
├── scanner.py # TCP port scanner
├── vulnerabilities.py # Vulnerability rules and risk scoring
├── report.py # Report writer
├── reports/
│ └── report.txt # Generated scan report (created on run)
└── README.md
```
## 用法
1. 在项目目录中打开终端。
2. 运行扫描器:
python main.py
3. 根据提示输入目标 IP 地址。
4. 查看控制台输出以及保存至 `reports/report.txt` 的报告。
### 示例
```
========== Vulnerability Scanner ==========
Enter Target IP Address: 192.168.1.1
Scanning Target...
========== RESULTS ==========
Open Ports:
80
443
Issues Found:
No Vulnerabilities Found
Risk Score : 0
Risk Level : SAFE
Report Generated Successfully!
Saved to: reports/report.txt
```
## 扫描端口
| 端口 | 服务 |
|------|---------|
| 21 | FTP |
| 22 | SSH |
| 23 | Telnet |
| 25 | SMTP |
| 80 | HTTP |
| 443 | HTTPS |
| 3306 | MySQL |
## 漏洞检查
| 条件 | 严重程度 | 风险分值 |
|-----------|----------|-------------|
| 端口 23 (Telnet) 开放 | HIGH — 未加密的远程访问 | +3 |
| 端口 21 (FTP) 开放 | MEDIUM — 凭据以明文传输 | +2 |
| 端口 80 开放但不包含 443 | MEDIUM — 有 HTTP 而无 HTTPS | +2 |
| 端口 3306 (MySQL) 开放 | HIGH — 数据库端口暴露 | +3 |
## 风险等级
| 分值 | 级别 |
|-------|--------|
| 0 | SAFE |
| 1–3 | LOW |
| 4–6 | MEDIUM |
| 7+ | HIGH |
## 工作原理
1. **扫描** — `scanner.py` 尝试通过 1 秒的超时设置对每个端口建立 TCP 连接。
2. **分析** — `vulnerabilities.py` 根据预定义的规则评估开放端口,并累加计算出风险分值。
3. **报告** — 结果将输出至控制台,并由 `report.py` 写入 `reports/report.txt`。
## 局限性
- 仅扫描上文列出的端口;不检查其他服务。
- 使用简单的 TCP connect 扫描 —— 不进行服务指纹识别或深度检测。
- 已关闭的端口可能被防火墙过滤,而非真正关闭。
- 风险评分基于规则,仅供教育用途,不适用于生产环境的安全审计。
## 法律声明
**请仅扫描您拥有或获得明确书面授权进行测试的系统。** 未经授权的端口扫描或漏洞评估可能违反当地法律和网络策略。本工具仅供教育和授权的安全测试目的使用。
标签:Python, 加密, 插件系统, 数据统计, 无后门, 漏洞扫描器, 端口扫描, 网络安全, 逆向工具, 隐私保护