vinayakakolur/Automated-Network-Vulnerability-Scanner
GitHub: vinayakakolur/Automated-Network-Vulnerability-Scanner
基于 Python 和 Nmap 的自动化网络漏洞扫描器,在实验室环境中完成主机发现、端口扫描和漏洞检测并自动生成报告。
Stars: 0 | Forks: 0
# 自动化网络漏洞扫描器
一个基于 Python 的网络安全工具,在 Kali Linux 上使用 Nmap 针对 Metasploitable 2 目标,自动化执行**主机发现**、**端口扫描**和**漏洞报告**。
## 技术栈
| 工具 | 作用 |
|------|------|
| Python 3 | 编排、解析、报告生成 |
| Nmap | 主机发现、端口扫描、NSE 漏洞脚本 |
| Kali Linux | 攻击平台 |
| Metasploitable 2 | 包含预设漏洞的靶机虚拟机 |
## 项目结构
```
network-vuln-scanner/
├── scanner.py # Main CLI scanner (all 3 phases)
├── report_generator.py # HTML + JSON report engine
├── demo_report.py # Generates sample report (no Nmap needed)
├── requirements.txt # Python dependencies
├── reports/ # Output: HTML & JSON reports
└── logs/ # Nmap raw XML output
```
## 设置
### 前置条件
- Kali Linux(或任何安装了 Nmap 的 Linux 系统)
- Python 3.8+
- 已安装 Nmap:`sudo apt install nmap`
- Metasploitable 2 虚拟机(目标机器)
### 安装
```
git clone https://github.com/YOUR_USERNAME/network-vuln-scanner.git
cd network-vuln-scanner
pip3 install -r requirements.txt
```
## 用法
### 预览(无需 Nmap)
```
python3 demo_report.py
# 打开 reports/report_.html
```
### 完整扫描(Kali Linux + Nmap)
```
# 扫描单个主机 (Metasploitable 2)
sudo python3 scanner.py --target 192.168.1.105
# 发现子网上的所有主机,然后扫描每个主机
sudo python3 scanner.py --target 192.168.1.105 --network 192.168.1.0/24
# 快速扫描 profile (前 100 个 ports)
sudo python3 scanner.py --target 192.168.1.105 --profile quick
```
## 扫描阶段
### 阶段 1 — 主机发现
使用 `nmap -sn`(ping 扫描 + ARP)来识别网络范围内的存活主机。
### 阶段 2 — 端口扫描
- **快速扫描**:排名前 100 的端口 (`-F`)
- **综合扫描**:排名前 1000 的端口 + 版本检测 + 操作系统指纹识别 (`-sV -sC -O`)
- **全端口扫描**:所有 65535 个端口 (`-p-`)
### 阶段 3 — 漏洞检测
运行 Nmap NSE `vuln` 类别脚本以检测已知的 CVE:
- `ftp-vsftpd-backdoor` — CVE-2011-2523(vsFTPd 2.3.4 后门)
- `smb-vuln-ms17-010` — CVE-2017-0144(EternalBlue / SMB RCE)
- `mysql-empty-password` — 未经身份验证的 MySQL root 访问
- `http-slowloris-check` — Apache DoS 漏洞
## 报告示例
报告会自动生成在 `reports/` 目录中,格式为:
- **HTML** — 包含主机摘要、端口表格和漏洞卡片的交互式仪表板
- **JSON** — 用于进一步处理的机器可读结构化数据
## 免责声明
## 作者
本项目作为网络安全作品集项目构建,旨在展示:
- 网络侦察技术
- 自动化漏洞评估工作流
- 用于安全工具的 Python 脚本编程
- 用于专业安全发现文档的报告生成
标签:CTI, Facebook API, Nmap, Python, 云存储安全, 插件系统, 无后门, 网络扫描, 虚拟驱动器, 逆向工具