mayanqaty-rgb/Web-Vulnerability-Scanner-
GitHub: mayanqaty-rgb/Web-Vulnerability-Scanner-
一款专为教育目的和本地实验设计的 Python Web 漏洞扫描器,能自动爬取页面并检测多种常见 Web 漏洞及安全响应头配置。
Stars: 0 | Forks: 0
# Web-Vulnerability-Scanner-
自动化 Python Web 漏洞扫描器,针对 DVWA 和本地实验应用。爬取所有页面 · 检测 XSS、SQL 注入、命令注入、LFI 和开放重定向 · 检查 7 个安全响应头 · BFS 爬虫 · 误报确认 · 自动生成带颜色标识的 HTML 报告 + 扫描日志。
# 🔐 WebVulnScan — Web 漏洞扫描器





## 📸 概述
**WebVulnScan** 是一款专为教育目的设计的安全测试工具,适用于 **DVWA** 和自定义的本地实验目标。它能自主爬取所有页面,注入攻击 payload,分析 HTTP 响应,并生成一份具有严重性评级的专业 HTML 漏洞报告——所有这些都在一个 Python 脚本中完成。
## ⚡ 漏洞覆盖范围
| 漏洞 | 检测方法 | 严重性 |
|---|---|---|
| 🔴 **反射型 XSS** | 在表单和 URL 参数中注入 payload | 高 |
| 🔴 **SQL 注入** | 通过 SQL 错误字符串进行基于错误的检测 | 严重 |
| 🔴 **命令注入** | 操作系统命令输出指示器 | 严重 |
| 🟠 **本地文件包含 (LFI)** | 路径遍历 + 文件内容指示器 | 高 |
| 🟡 **开放重定向** | HTTP 3xx Location 响应头分析 | 中 |
| 🔵 **缺失的安全响应头** | CSP · HSTS · X-Frame-Options · 及更多 | 低-中 |
## 🚀 快速开始
### 前置条件
```
pip install requests beautifulsoup4
```
- Python **3.8+**
- 本地运行的 DVWA,地址为 `http://localhost/dvwa/`
→ [如何搭建 DVWA](https://github.com/digininja/DVWA)
### 运行扫描器
```
git clone https://github.com/yourname/webvulnscan.git
cd webvulnscan
python scanner.py
```
### 配置(位于 `scanner.py` 顶部)
```
DVWA_URL = "http://localhost/dvwa/" # Target URL
USERNAME = "admin" # DVWA login
PASSWORD = "password" # DVWA password
MAX_PAGES = 50 # Max pages to crawl
```
## 🗺️ 工作原理
### 第 1 步 — 认证
使用 session cookie 并通过 BeautifulSoup 提取 CSRF token,自动登录 DVWA。
### 第 2 步 — 爬取
基于 BFS 风格的 Web 爬虫会发现直到 `MAX_PAGES` 限制内的所有内部页面,收集每一个 URL 和 HTML 表单。
### 第 3 步 — 注入与分析
对于每个页面,扫描器会同时运行所有 6 个攻击模块——将 payload 注入到 URL 参数、表单字段和重定向参数中,然后分析 HTTP 响应以查找漏洞指示器。
### 第 4 步 — 确认
在报告之前,会发送二次确认请求对每个潜在发现进行重新测试,以消除误报。
### 第 5 步 — 报告
生成两个输出文件:
- **`scan_report_.html`** — 完整的带颜色标识和严重性徽章的 HTML 报告
- **`scan_log_.txt`** — 包含每个扫描页面和发现的详细纯文本日志
## 📋 攻击 Payload
**XSS (7 个 payload)**
```
">
'>
标签:BeEF, CISA项目, DOE合作, Python, Web漏洞扫描器, 无后门, 爬虫, 逆向工具