harshadzalaniya/web-vulnerability-scanner
GitHub: harshadzalaniya/web-vulnerability-scanner
一个面向教学与授权测试的 Python Web 漏洞扫描器,可自动爬取目标站点并检测 XSS、SQL 注入、SSL 问题和不安全响应头。
Stars: 0 | Forks: 0
# Web 漏洞扫描器
一个基于 Python 的 Web 漏洞扫描器,专为进攻性网络安全的的教学目的而设计。该工具可扫描网站以查找常见漏洞,包括跨站脚本攻击 (XSS)、SQL 注入 (SQLi)、SSL/TLS 问题以及不安全的 HTTP 响应头。
## ⚠️ 免责声明
本工具**仅供教学和授权测试使用**。请勿在未经明确许可的网站上使用此扫描器。未经授权的扫描可能会违反相关法律和服务条款。作者对任何滥用本工具的行为不承担责任。
## 功能
- **跨站脚本攻击 (XSS) 检测**:通过注入 payload 并检查反射来测试反射型 XSS 漏洞。
- **SQL 注入 (SQLi) 检测**:尝试基本的 SQL 注入 payload 以识别潜在的注入点。
- **SSL/TLS 证书检查**:验证 SSL 证书,检查过期证书,并评估证书有效性。
- **安全响应头分析**:扫描缺失或配置不当的安全头(例如 CSP、X-Frame-Options、HSTS)。
- **Web 爬虫**:自动发现并扫描目标网站上的多个页面。
- **并行扫描**:使用多线程对发现的 URL 进行高效扫描。
- **报告生成**:输出 HTML 和 JSON 格式的详细报告。
## 环境要求
- Python 3.7+
- `requirements.txt` 中列出的依赖项
## 安装说明
1. 克隆仓库:
git clone https://github.com/harshadzalaniya/web-vulnerability-scanner.git
cd web-vulnerability-scanner
2. 安装所需的依赖项:
pip install -r requirements.txt
## 使用方法
使用以下命令运行扫描器:
```
python main.py -u [OPTIONS]
```
### 参数
- `-u, --url`:要扫描的目标 URL(必填)。示例:`http://testphp.vulnweb.com`
- `-d, --depth`:发现 URL 的爬取深度(默认值:2)。增加此值可进行更深层次的扫描。
- `-o, --output`:报告的输出文件夹(默认值:"reports")。
### 示例
1. 对目标 URL 进行基本扫描:
python main.py -u http://example.com
2. 设置自定义爬取深度和输出文件夹进行扫描:
python main.py -u http://example.com -d 3 -o my_reports
### 输出结果
扫描完成后,工具将在指定的输出文件夹中生成两个报告文件:
- **HTML 报告** (`report_YYYYMMDD_HHMMSS.html`):一个用户友好的网页,显示包含严重级别、详细信息和建议的发现。
- **JSON 报告** (`report_YYYYMMDD_HHMMSS.json`):一个包含所有发现结果的结构化数据文件,用于进一步分析或与其他工具集成。
## 项目结构
- `main.py`:程序入口和命令行界面。
- `scanner.py`:核心扫描器逻辑和任务编排。
- `crawler.py`:用于发现 URL 的 Web 爬虫。
- `utils.py`:实用工具函数,包括 HTML 报告生成。
- `detectors/`:包含漏洞检测模块的目录:
- `xss.py`:XSS 检测。
- `sqli.py`:SQL 注入检测。
- `ssl_check.py`:SSL 证书验证。
- `headers.py`:安全响应头分析。
- `config.py`:配置设置(例如,最大线程数)。
- `requirements.txt`:Python 依赖项。
## 工作原理
1. **爬取 (Crawling)**:该工具首先对目标网站进行爬取,根据指定的深度发现所有可访问的 URL。
2. **检测 (Detection)**:对于每个发现的 URL,它会并行运行多个检测器以检查漏洞。
3. **报告 (Reporting)**:收集发现的漏洞,进行去重处理,并格式化为 HTML 和 JSON 报告。
## 许可证
该项目采用 MIT 许可证授权。有关详细信息,请参阅 LICENSE 文件。
## 作者
由 [Harshad Zalaniya](https://github.com/harshadzalaniya) 创建
如有任何问题或疑问,请提交一个 GitHub issue。
标签:BeEF, CISA项目, meg, Offensive Security, Python安全工具, Splunk, SQL注入检测, SSL证书检查, Web安全, XSS检测, 信息安全, 字符串匹配, 安全响应头分析, 安全教育, 数据展示, 爬虫, 红队, 编码安全, 网站漏洞扫描, 网络安全, 蓝队分析, 逆向工具, 隐私保护