Ki1shan/Web-Vulnerability-Scanner
GitHub: Ki1shan/Web-Vulnerability-Scanner
一款基于 Flask 仪表盘的 Web 漏洞扫描器,针对 OWASP Top 10 中的 XSS、SQL 注入和 CSRF 三类漏洞进行自动化检测并导出报告。
Stars: 0 | Forks: 0
# 🔍 Web 应用漏洞扫描器






## ⚠️ 免责声明
本工具**仅**适用于:
- 授权的渗透测试
- 对您拥有或明确获得授权测试的系统进行安全研究
- 教育和网络安全培训目的
- CTF 和实验环境(DVWA、WebGoat、testphp.vulnweb.com)
**请勿在未获得明确书面授权的情况下对系统使用本工具。未经授权的扫描是违法行为。**
## 概述
本 Web 应用漏洞扫描器可自动检测任何 Web 应用中三个关键的 OWASP Top 10 漏洞:
- **XSS** — 将 script payload 注入到发现的表单字段中,检查响应正文中是否存在反射
- **SQLi** — 将 SQL payload 追加到 URL 参数中,检测响应中的数据库错误特征
- **CSRF** — 抓取所有 POST 表单,并检查是否缺少 anti-CSRF token 字段
每次扫描都会将时间戳和结果记录到 `scan_results.json` 中,并且结果将导出为带有样式的 `scan_report.html` 文件,可直接从仪表盘下载。
## 截图

*针对 `testphp.vulnweb.com` 的实时扫描 — 在 `/artists.php?id=` 检测到 SQLi,在 `/search.php` 检测到 CSRF*
## 架构
```
┌──────────────────────────────────────────────────────────────┐
│ WEB APPLICATION VULNERABILITY SCANNER │
├──────────────────────────────────────────────────────────────┤
│ │
│ ┌────────────────────────────────────────────────────────┐ │
│ │ FLASK WEB INTERFACE (app.py) │ │
│ │ POST / → trigger scan → render results │ │
│ │ GET /report → serve scan_report.html │ │
│ └────────────────────────────────────────────────────────┘ │
│ │ │
│ ▼ │
│ ┌────────────────────────────────────────────────────────┐ │
│ │ CRAWLER (scanner/crawler.py) │ │
│ │ requests + BeautifulSoup │ │
│ │ extract_forms() → get_form_details() → submit_form()│ │
│ │ Handles GET and POST form submissions │ │
│ └────────────────────────────────────────────────────────┘ │
│ │ │
│ ┌────────────────────┼────────────────────┐ │
│ ▼ ▼ ▼ │
│ ┌──────────────┐ ┌──────────────┐ ┌──────────────────┐ │
│ │ XSS │ │ SQLi │ │ CSRF │ │
│ │ │ │ │ │ │ │
│ │ 3 payloads │ │ 3 payloads │ │ POST form check │ │
│ │ Form inject │ │ URL param │ │ Token field scan │ │
│ │ Response │ │ DB error │ │ Missing CSRF │ │
│ │ reflection │ │ detection │ │ token report │ │
│ └──────────────┘ └──────────────┘ └──────────────────┘ │
│ │ │
│ ┌───────────────┴───────────────┐ │
│ ▼ ▼ │
│ ┌──────────────────────┐ ┌──────────────────────────┐ │
│ │ LOGGER │ │ REPORTER │ │
│ │ scanner/logger.py │ │ utils/report.py │ │
│ │ scan_results.json │ │ scan_report.html │ │
│ │ Timestamped history │ │ Timestamped dark report │ │
│ └──────────────────────┘ └──────────────────────────┘ │
└──────────────────────────────────────────────────────────────┘
```
## 检测模块
### 🔴 XSS 扫描器 (`detector.py`)
针对每个发现的表单输入测试 3 个 payload:
```
""
"\">
标签:BeautifulSoup, BeEF, CISA项目, CSRF检测, CTF安全, DOE合作, DVWA, Flask, HTML报告导出, JSON日志, OWASP Top 10, Python, Selenium, SQLi检测, WebGoat, Web应用漏洞扫描器, XSS检测, 字符串匹配, 无后门, 暗色系仪表盘, 漏洞修复, 爬虫, 白帽黑客, 网络安全, 网络安全培训, 跨站脚本攻击, 跨站请求伪造, 逆向工具, 隐私保护