Adityasiig/WebVulnScanner
GitHub: Adityasiig/WebVulnScanner
Stars: 0 | Forks: 1
# WebVulnScanner
一个基于 Python 的 Web 漏洞扫描器,具备自动化侦察、WAF 检测、子域名枚举以及简洁的 HTML 报告仪表板。
由 [Aditya Singh](https://adityasiig.github.io/Portfolio/) 构建 — [GitHub](https://github.com/Adityasiig) · [Portfolio](https://adityasiig.github.io/Portfolio/) · [Terminal Portfolio](https://adityasiig.github.io/terminal-portfolio/)
## 功能
| 模块 | 检测内容 |
|---|---|
| **SQLi** | 基于错误的 SQL 注入、基于时间盲注、基于布尔盲注 SQL 注入 |
| **XSS** | URL 参数与表单字段中的反射型 XSS |
| **Headers** | 缺失的安全头、Cookie 标志、服务器信息泄露 |
| **Sensitive** | 暴露的文件 — `.env`、`.git`、备份文件、管理后台、API 文档 |
| **Traversal** | 目录/路径遍历(LFI)并支持编码绕过载荷 |
| **Redirect** | 通过 URL 参数及常见重定向参数实现的开放重定向 |
| **SSL** | 证书过期、弱协议、弱加密套件、自签名证书 |
### 引擎特性
- **侦察阶段** — 自动解析 `robots.txt` 与站点地图,在爬取前发现 URL
- **子域名枚举** — 查询 crt.sh 证书透明日志
- **WAF 检测** — 识别 Cloudflare/机器人挑战,避免误报
- **WAF 绕过** — 真实的浏览器请求头、类人类请求延迟、User-Agent 轮换
- **严重等级过滤** — 默认仅显示 MEDIUM/HIGH/CRITICAL,避免噪音
- **HTML 报告** — 极简仪表板,含图表、利用指南与修复建议
- **JSON 报告** — 便于自动化处理的机器可读输出
## 安装
```
git clone https://github.com/Adityasiig/WebVulnScanner.git
cd WebVulnScanner
pip install -r requirements.txt
```
## 用法
```
# 基础扫描
python scanner.py -u https://example.com
# 侦察 + 扫描(推荐)
python scanner.py -u https://example.com --recon
# 完整侦察并枚举子域名
python scanner.py -u https://example.com --recon --subdomains
# 仅特定模块
python scanner.py -u https://example.com --modules sqli,xss,headers
# 跳过爬取,直接测试 URL
python scanner.py -u https://example.com --no-crawl
# 深度扫描
python scanner.py -u https://example.com --full --depth 5
# 仅显示 HIGH 和 CRITICAL
python scanner.py -u https://example.com --min-severity HIGH
```
### 所有参数
| 参数 | 描述 |
|---|---|
| `-u, --url` | 目标 URL(必需) |
| `-m, --modules` | 逗号分隔的要运行的模块(默认:全部) |
| `--recon` | 在爬取前运行侦察阶段(robots.txt + 站点地图) |
| `--subdomains` | 通过 crt.sh 枚举子域名 |
| `--full` | 深度爬取 — 深度 5,最多 100 页,启用侦察 |
| `--depth` | 爬取深度(默认:2) |
| `--max-pages` | 最大爬取页面数(默认:30) |
| `--no-crawl` | 跳过爬取,仅扫描目标 URL |
| `--min-severity` | 最低报告严重等级:CRITICAL/HIGH/MEDIUM/LOW/INFO(默认:MEDIUM) |
| `-o, --output` | 报告输出目录(默认:reports/) |
| `-q, --quiet` | 最小化终端输出 |
## 项目结构
```
WebVulnScanner/
├── scanner.py # CLI entry point
├── requirements.txt
├── core/
│ ├── utils.py # HTTP client, headers, helpers
│ ├── crawler.py # Web spider with form extraction
│ ├── recon.py # robots.txt, sitemap, subdomain recon
│ └── reporter.py # HTML + JSON report generator
└── modules/
├── sqli.py # SQL injection (error, time, boolean)
├── xss.py # Cross-site scripting
├── headers.py # Security headers + WAF-aware detection
├── sensitive.py # Sensitive files + WAF baseline detection
├── directory_traversal.py # Path traversal / LFI
├── redirect.py # Open redirect
└── ssl_check.py # SSL/TLS analysis
```
## 报告
报告会同时以 HTML 与 JSON 格式保存到 `reports/`。
HTML 报告包含:
- 按严重等级分类的统计图表
- 每个发现的逐步利用指南(适合初学者)
- 每个发现所需的工具要求
- 修复建议
- 按严重等级搜索与筛选
## 免责声明
本工具仅供 **授权渗透测试与教育用途**。
在未获得明确书面许可的情况下扫描系统属于 **违法行为**。
作者不对任何滥用行为承担责任。
标签:AES-256, BeEF, HTML报告, JSON报告, Python, robots.txt, SSL/TLS检测, Web漏洞扫描, XSS, 关键词SEO, 子域名枚举, 安全头检查, 安全扫描, 开放重定向, 开源安全工具, 弱加密协议, 敏感文件探测, 无后门, 时序注入, 漏洞情报, 漏洞评估, 爬虫, 用户代理旋转, 系统安全, 自动化侦察, 证书过期, 请求延迟, 逆向工程平台