HikmatAsifli/xssFinder
GitHub: HikmatAsifli/xssFinder
一个基于 Python 的自动化 XSS 漏洞扫描器,通过向目标 URL 注入分类 payload 并分析响应来检测跨站脚本漏洞,同时生成包含风险等级和修复建议的 JSON 报告。
Stars: 0 | Forks: 0
# XSS Finder
**XSS Finder** 是一个旨在检测 Web 应用程序中跨站脚本攻击 (XSS) 漏洞的自动化工具。它使用按类别组织的一组全面预定义 payload 来扫描目标 URL 并记录结果。此外,该工具会以 JSON 格式生成任何已识别漏洞的详细报告,以便于轻松跟踪和分析。
## 🚀 新特性 (版本 2.0)
- **分类 Payload**:payload 被组织为 5 个类别(basic、encoded、event_handlers、dom_based、filter_bypass)
- **高级 CLI**:带有多个选项的完整命令行界面
- **基于类别的扫描**:使用特定的 payload 类别进行扫描
- **多参数测试**:针对常见参数(q, search, query, input 等)进行测试
- **URL 路径注入**:测试在 URL 路径中的 payload 注入
- **增强的报告**:包含统计信息、风险等级和建议的全面 JSON 报告
- **详细模式**:实时扫描进度输出
- **输入验证**:URL 验证和输入清理实用程序
- **更好的日志记录**:增强了包含参数、方法和状态码信息的日志记录
## 目录
- [功能](#features)
- [安装说明](#installation)
- [用法](#usage)
- [基本扫描](#basic-scanning)
- [高级扫描](#advanced-scanning)
- [CLI 选项](#cli-options)
- [Payload 类别](#payload-categories)
- [配置](#configuration)
- [日志记录](#logging)
- [报告生成](#report-generation)
- [测试](#testing)
- [扩展工具](#extending-the-tool)
- [最佳实践](#best-practices)
- [贡献](#contributing)
- [许可证](#license)
## 功能
- **针对性 XSS 扫描**:输入目标 URL 以针对各种 XSS payload 进行测试
- **可配置 Payload**:25+ 种按 5 个类别组织的 payload,用于全面测试
- **多参数测试**:自动测试常见参数 (q, search, query, input, text, keyword, id, name, page)
- **多个注入点**:测试 GET 参数、POST 数据和 URL 路径注入
- **详细日志记录**:捕获每次扫描的结果,包括测试的 payload、参数、方法和状态码
- **自动生成报告**:生成包含统计信息、风险评估和修复建议的综合 JSON 报告
- **可自定义设置**:设置请求超时、选择 payload 类别并管理扫描配置
- **详细输出**:扫描期间实时跟踪进度
## 安装说明
### 前置条件
请确保您已安装 `Python 3.x`。您可以从 Python 官方网站下载它:[https://www.python.org/downloads/](https://www.python.org/downloads/)。
### 克隆仓库
```
git clone https://github.com/HikmatAsifli/xssFinder.git
cd xssFinder
```
## 安装依赖
使用 pip 安装所需的依赖项:
```
pip install -r requirements.txt
```
## 用法
### 基本扫描
要针对目标 URL 运行基本扫描,请执行以下命令:
```
cd src
python main.py -u https://example.com
```
该脚本将针对常见参数测试所有 payload,并记录任何检测到的漏洞。
### 高级扫描
XSS Finder 提供了多种高级选项用于自定义扫描:
#### CLI 选项
```
python main.py --help
usage: main.py [-h] [-u URL] [-c {basic,encoded,event_handlers,dom_based,filter_bypass,all}] [-v] [-r REPORT] [-t TIMEOUT]
XSS Finder - Automated XSS Vulnerability Scanner
options:
-h, --help show this help message and exit
-u URL, --url URL Target URL to scan
-c {basic,encoded,event_handlers,dom_based,filter_bypass,all}, --category
Payload category to test (default: all)
-v, --verbose Enable verbose output
-r REPORT, --report REPORT
Generate report to specified file
-t TIMEOUT, --timeout TIMEOUT
Request timeout in seconds (default: 5)
```
#### 示例
**带有详细输出的扫描:**
```
python main.py -u https://example.com -v
```
**仅扫描 basic payload:**
```
python main.py -u https://example.com -c basic
```
**自定义超时和报告文件:**
```
python main.py -u https://example.com -t 10 -r custom_report.json
```
**使用 filter_bypass payload 进行扫描:**
```
python main.py -u https://example.com -c filter_bypass -v
```
## Payload 类别
XSS Finder 包含 25+ 种按 5 个类别组织的 payload:
| 类别 | 描述 | 数量 |
|----------|-------------|-------|
| `basic` | 标准 XSS payload | 5 |
| `encoded` | URL 和 HTML 编码的 payload | 4 |
| `event_handlers` | 基于事件处理程序的 payload | 5 |
| `dom_based` | 基于 DOM 的 XSS payload | 3 |
| `filter_bypass` | WAF/过滤器绕过 payload | 5 |
### 类别示例
**Basic:**
```
""
"
"
"
标签:CISA项目, DOM型XSS, Homebrew安装, JSON报告, Payload测试, Python安全工具, URL路径注入, Web安全, XSS扫描器, XSS检测, 事件处理器, 多参数测试, 安全报告生成, 编码绕过, 网络安全, 自动化分析, 自动化安全工具, 蓝队分析, 跨站脚本, 隐私保护, 黑盒测试