imedkablavi/web-vuln-scanner
GitHub: imedkablavi/web-vuln-scanner
一款面向授权目标的轻量级 Web 漏洞扫描器,整合爬取、安全姿态检查和主动漏洞检测功能。
Stars: 0 | Forks: 0
# Web 漏洞扫描器
用于授权 Web 目标的命令行扫描器。
它可以爬取页面、检查表单和查询参数、检查常见的 Web 姿态问题、查找暴露的文件、检查 Swagger/GraphQL 端点、记录 DNS/TLS 详情、运行 SQLi 检查,并在配置了操作者账户时验证某些访问控制情况。
## 功能
- 通过 HTTP 爬取范围内的页面和表单。
- 可选使用 Playwright 进行浏览器辅助发现和登录流程。
- 检查 Web 姿态问题,例如缺失的标头、弱 Cookie、宽松的 CORS、重定向和冗长的错误信息。
- 探测少量常见的备份/调试/配置文件路径。
- 在可用时读取 Swagger/OpenAPI 和 GraphQL 暴露情况。
- 记录 DNS 和 TLS 清单。
- 运行主动 SQLi 检查。
- 支持感知认证的验证、重放制品以及基于工作流的检查。
## 开始之前
- 仅在您拥有或被允许测试的系统上使用。
- 对于浏览器辅助爬取和浏览器登录,请安装 Playwright 和 Chromium。
- 访问控制验证需要配置或环境中的有效操作者凭据。
## 设置
```
python -m venv .venv
```
Windows:
```
.\.venv\Scripts\activate
```
macOS / Linux:
```
source .venv/bin/activate
```
安装 Python 依赖:
```
pip install --upgrade pip
pip install -r requirements.txt
```
如果您想要浏览器辅助爬取或浏览器登录:
```
pip install playwright
playwright install chromium
```
## 快速本地检查
试用该项目最简单的方法是使用打包的模拟目标:
```
python smoke/run_smoke.py
```
此命令:
- 启动本地模拟服务器
- 对其运行完整扫描
- 将输出写入 `smoke_out/`
完成后,打开:
- `smoke_out/scan_report.html`
- `smoke_out/scan_report.json`
## 运行扫描
基本扫描:
```
python main_v2.py scan https://target.tld --config config/default_config.yaml --output reports
```
带有额外 API 端点:
```
python main_v2.py scan https://target.tld --config config/default_config.yaml --swagger https://target.tld/openapi.json --graphql https://target.tld/graphql --output reports
```
带有调试日志:
```
python main_v2.py scan https://target.tld --config config/default_config.yaml --output reports --debug
```
## 输出
每次运行都会在输出目录中写入两个文件:
- `scan_report.json`
- `scan_report.html`
JSON 报告保留完整数据。
HTML 报告更便于在浏览器中快速查看。
## 退出代码
- `0` 无可报告的发现
- `1` 产生了发现
- `2` 运行时或配置失败
- `3` 部分或中止的运行
## 测试
运行 Python 测试套件:
```
python -m pytest
```
## 注意事项
- 浏览器辅助发现有助于提高覆盖率,但它不是完整的浏览器爬虫。
- 不处理复杂的认证流程,如 MFA、SSO 或验证码。
- 实验性插件默认禁用:
- `xss_reflected`
- `lfi`
- `cmd_injection`
- `open_redirect`
标签:BeEF, CISA项目, Cookie安全, CORS检测, DNS记录, DOE合作, GraphQL安全, Playwright, Python, SQL注入检测, Swagger/OpenAPI, TLS/SSL分析, Web安全, 加密, 动态应用安全测试(DAST), 备份文件探测, 密码管理, 无后门, 漏洞扫描器, 爬虫, 特征检测, 网络安全, 蓝队分析, 足迹分析, 身份验证绕过, 逆向工具, 配置文件泄露, 隐私保护, 静态应用安全测试(SAST)