presidio-v/presidio-hardened-vuln-scanner
GitHub: presidio-v/presidio-hardened-vuln-scanner
一个带有故意设计漏洞的 Flask 示例应用及其加固版本的漏洞扫描与对比实验工具。
Stars: 0 | Forks: 0
# presidio-hardened-vuln-scanner
带有故意设计漏洞的 Flask 应用程序及其加固版本的网络应用漏洞扫描器。
用于 PRES-EDU-SEC-101 实验 3。
## 安装说明
```
git clone https://github.com/presidio-v/presidio-hardened-vuln-scanner.git
cd presidio-hardened-vuln-scanner
pip install -r requirements.txt
```
## A 阶段 — 静态分析
```
bandit -r vulnerable_app/ -f json -o reports/bandit_report.json -ll
bandit -r vulnerable_app/ -f txt
pip-audit --requirement vulnerable_app/requirements.txt \
--output reports/pip_audit.json --format json
python report.py --phase static
```
预期发现:硬编码密钥、`eval`、不安全的 `subprocess`、MD5 哈希。
## B 阶段 — 动态扫描
```
cd vulnerable_app && python app.py &
cd ..
python scanner.py --target http://localhost:5000 \
--checks sqli xss csrf auth headers \
--output reports/dynamic_report.json
python report.py --phase dynamic
```
预期发现:SQL 注入、反射型 XSS、缺少 CSRF 令牌、缺少安全头。
## C 阶段 — 手动利用
```
python exploit.py --vuln sqli \
--payload "' OR '1'='1" \
--target http://localhost:5000
python exploit.py --vuln xss \
--payload "" \
--target http://localhost:5000
```
## D 阶段 — 修复与验证
```
kill %1
cd fixed_app && python app.py --port 5001 2>/dev/null || python app.py &
cd ..
bandit -r fixed_app/ -f txt
python scanner.py --target http://localhost:5001 \
--checks sqli xss csrf auth headers \
--output reports/dynamic_report_fixed.json
python report.py --compare vulnerable fixed
```
## 衡量指标
- 修复前发现数量:按严重程度分类(HIGH / MEDIUM / LOW)
- 修复后发现数量:应无 HIGH 级别
- 总结:静态分析 + 动态分析可发现不同类别的漏洞
## 许可证
MIT
标签:Bandit, CSRF, Flask, HTTP头缺失, MD5哈希, pip-audit, PRES-EDU-SEC-101, SEO, Web漏洞扫描, 不安全的eval, 不安全的subprocess, 云安全监控, 修复验证, 关键词扩展, 动态扫描, 反射型XSS, 安全专业人员, 安全扫描, 实验3, 手工渗透测试, 时序注入, 漏洞实验, 硬编码密钥, 逆向工具, 静态分析