Gagan359/Python_Based_Vuln_Scan
GitHub: Gagan359/Python_Based_Vuln_Scan
基于 Flask 和 Nmap 的 Python 漏洞扫描器,通过关联 NVD 数据库实现服务版本与已知 CVE 的自动化匹配与报告。
Stars: 0 | Forks: 0
# 漏洞扫描 🔒
一个基于 Python 的漏洞扫描器,它使用 Nmap 进行服务和版本检测,并将检测到的软件与来自国家漏洞数据库(NVD)REST API 的公开披露 CVE 进行关联。
## 功能
- 检测开放的 TCP 端口
- 识别正在运行的服务和版本
- 从 NVD API 检索相关的 CVE
- 在 Flask Web 界面中显示结果
- 生成 JSON 报告
- 防止重复的 CVE 查询
- 优雅地处理网络和 API 错误
## 使用技术
- Python
- Flask
- Nmap
- Requests
- HTML
- CSS
- JSON
- NVD REST API
## 项目结构
```
VulnScan/
│
├── app.py
├── scanner.py
├── cve_lookup.py
├── requirements.txt
├── templates/
│ └── index.html
└── static/style.css
```
## 安装说明
### 克隆仓库
```
git clone https://github.com/YOUR_USERNAME/VulnScan.git
```
### 进入项目目录
```
cd VulnScan
```
### 创建虚拟环境
```
python -m venv venv
```
### 激活虚拟环境
Windows
```
venv\Scripts\activate
```
Linux/macOS
```
source venv/bin/activate
```
### 安装依赖项
```
pip install -r requirements.txt
```
## 运行应用程序
```
python app.py
```
打开:
```
http://127.0.0.1:5000
```
## 使用说明
1. 输入 IP 地址或域名。
2. 点击 **Scan**。
3. 查看检测到的服务和相关的 CVE。
4. 查看生成的 JSON 报告。
## 示例输出
| Port | Product | Version | CVEs |
|------|----------|----------|------|
| 22 | OpenSSH | 9.2 | 3 |
| 80 | Apache httpd | 2.4.7 | 12 |
## 展示技能
- Python 编程
- 网络扫描
- REST API 集成
- JSON 解析
- Flask Web 开发
- 安全编码实践
- 错误处理
- 模块化软件设计
## 未来改进
- 导出 CSV
- 生成 PDF 报告
- 严重性过滤
- 暗黑模式
- 扫描历史
- SQLite 集成
- Docker 部署
## 免责声明
此工具将检测到的软件版本与来自国家漏洞数据库(NVD)的公开可用 CVE 进行关联。它**不会**验证漏洞在目标系统上是否可被利用。
## 作者
**Gagan HS**
LinkedIn: *(你的个人资料)*
GitHub: *(你的个人资料)*
标签:CTI, CVE, Flask, Homebrew安装, Nmap, Python, 加密, 多模态安全, 字符串匹配, 插件系统, 数字签名, 无后门, 漏洞扫描器, 虚拟驱动器, 逆向工具