GauriSomwanshi29/Web_Vulnerability_Scanner
GitHub: GauriSomwanshi29/Web_Vulnerability_Scanner
一个基于 Python 的教育型 Web 漏洞扫描器,通过向 URL 参数和表单注入 payload 来检测反射型跨站脚本攻击。
Stars: 2 | Forks: 0
# 🔐 Web 漏洞扫描器
## 📌 项目概述
**Syntecxhub Web Vulnerability Scanner** 是一个基于 Python 的网络安全项目,作为 **Syntecxhub 网络安全实习项目** 的一部分开发。
该工具旨在检测 Web 应用程序中的 **反射型跨站脚本攻击 (XSS)** 以及基本的 **输入净化缺陷**。它会扫描 URL 参数和 HTML 表单,注入安全的测试 payload,分析服务器响应,并生成详细的漏洞报告。
本项目仅用于 **教育、道德和授权的测试目的**。它应仅用于本地测试应用程序、DVWA、特意设计的漏洞实验平台,或已获得书面许可的网站。
## 🎯 项目目标
本项目的主要目标是了解 Web 应用程序如何处理用户输入,以及不当的输入校验是如何导致诸如 **反射型 XSS** 等安全漏洞的。
该扫描器有助于学习:
* Web 表单如何接收用户输入
* 如何测试 URL 参数
* 如何注入 XSS payload
* 如何在服务器响应中检测被反射的 payload
* 如何将漏洞发现结果保存到报告中
* 如何进行道德测试和负责任的扫描
## 🚀 主要功能
* 🔎 扫描 URL 参数中的反射型 XSS
* 📝 检测并测试 HTML 表单
* 🌐 支持 GET 和 POST 表单测试
* 💉 从单独的文本文件中注入 XSS payload
* 🧪 检查响应中是否包含被反射的 payload
* 📄 将存在漏洞的 endpoint 保存在 `report.txt` 中
* ⏱️ 包含请求间的延迟以实现基础的 rate-limiting
* ⚠️ 在扫描前包含权限确认
* 🛡️ 使用自定义的 User-Agent 进行身份标识
* 💻 包含一个用于安全演示的本地漏洞测试应用程序
## 🛠️ 使用的技术
| Technology | 用途 |
| ------------- | ------------------------------- |
| Python | 主要编程语言 |
| Requests | 发送 HTTP 请求 |
| BeautifulSoup | 解析 HTML 表单 |
| Colorama | 彩色终端输出 |
| HTTPServer | 创建本地测试应用程序 |
## 📁 文件夹结构
```
Syntecxhub_Web_Vulnerability_Scanner/
│
├── web_vuln_scanner.py
├── test_xss_app.py
├── xss_payloads.txt
├── requirements.txt
├── report.txt
├── README.md
└── SECURITY.md
```
## 📄 文件说明
### `web_vuln_scanner.py`
这是主要的扫描器文件。它执行漏洞扫描过程。
它执行以下任务:
* 从用户处获取目标 URL
* 检查用户是否具有扫描权限
* 从 `xss_payloads.txt` 加载 XSS payload
* 测试 URL 参数
* 在页面上查找 HTML 表单
* 将 payload 注入到表单输入中
* 检查响应中是否反射了 payload
* 将结果保存在 `report.txt` 中
### `test_xss_app.py`
该文件包含一个存在漏洞的本地测试 Web 应用程序。
它用于安全测试和演示。该应用程序直接在页面上反射用户输入,这有助于扫描器检测反射型 XSS。
本地 URL 示例:
```
http://127.0.0.1:8001/?q=test
```
### `xss_payloads.txt`
该文件包含用于测试的 XSS payload。
payload 示例:
```
">
标签:Python, Splunk, Web安全, XSS检测, 加密, 字符串匹配, 安全测试, 攻击性安全, 无后门, 漏洞扫描器, 蓝队分析, 逆向工具