Files
XSS_Scanner/README.md

242 lines
7.2 KiB
Markdown
Raw Normal View History

2025-03-09 13:49:12 +08:00
# 深度XSS漏洞扫描器
这是一个全面的Web应用安全扫描工具专注于检测XSS跨站脚本漏洞同时也能够发现其他类型的Web安全漏洞。该工具支持多种扫描模式、不同级别的有效载荷和详细的漏洞报告。
## 功能特点
- **多种漏洞检测**
- XSS反射型、存储型、DOM型
- CSRF跨站请求伪造
- SQL注入
- LFI本地文件包含
- RFI远程文件包含
- SSRF服务器端请求伪造
- XXEXML外部实体注入
- **全面的扫描能力**
- 网站爬虫功能自动发现可测试的URL
- 表单和参数自动检测
- 支持DOM分析
- 支持不同测试级别(快速、标准、深度)
- 支持多线程扫描
- **网页技术识别**
- 自动识别目标网站使用的编程语言PHP、ASP.NET、Java、Python等
- 检测前端框架React、Vue、Angular、jQuery等
- 识别Web服务器类型Apache、Nginx、IIS等
- 识别CMS系统WordPress、Joomla、Drupal等
- 框架版本指纹识别
- **高级WAF绕过功能**
- 自动检测目标是否启用Web应用防火墙(WAF)
- 识别WAF类型如Cloudflare、ModSecurity、AWS WAF等
- 自动调整有效载荷以绕过WAF检测
- 多种绕过技术(编码变异、分段注入、定时执行等)
- 自适应绕过策略根据WAF反应调整攻击向量
- **高级功能**
- 有效载荷自动绕过WAF
- 支持自定义有效载荷
- 基于浏览器的漏洞验证
- 支持漏洞利用
- 支持代理和认证
- **详细报告**
- 多种报告格式HTML、JSON、XML、TXT
- 详细的漏洞信息和修复建议
- 风险评级
- 网站技术栈分析报告
## 安装
### 要求
- Python 3.7+
- Chrome浏览器如需浏览器测试
### 安装步骤
1. 克隆仓库:
```bash
git clone https://github.com/yourusername/xss-scanner.git
cd xss-scanner
```
2. 安装依赖:
```bash
pip install -r requirements.txt
```
3. 安装ChromeDriver如需浏览器测试
```bash
# Windows使用以下命令
pip install webdriver-manager
# Linux可能需要安装Chrome
# sudo apt-get install google-chrome-stable
```
## 使用方法
### 基本用法
```bash
python main.py -u https://example.com
```
### 更多示例
**扫描单个URL**
```bash
python main.py -u https://example.com
```
**扫描多个URL**
```bash
python main.py -f targets.txt
```
**深度扫描**
```bash
python main.py -u https://example.com --scan-level 3
```
**只扫描XSS漏洞**
```bash
python main.py -u https://example.com --scan-type xss
```
**使用浏览器进行DOM XSS检测**
```bash
python main.py -u https://example.com --browser
```
**利用发现的漏洞**
```bash
python main.py -u https://example.com --exploit
```
**生成HTML报告**
```bash
python main.py -u https://example.com -o report.html --format html
```
**使用代理**
```bash
python main.py -u https://example.com --proxy http://127.0.0.1:8080
```
### 命令行参数
```
必选参数:
-u, --url URL 目标URL
-f, --file FILE 包含目标URL的文件
可选参数:
-d, --depth DEPTH 爬虫深度 (默认: 2)
-t, --threads THREADS 线程数 (默认: 5)
--timeout TIMEOUT 请求超时时间 (默认: 10秒)
--user-agent USER_AGENT 自定义User-Agent
--cookie COOKIE 请求Cookie
--headers HEADERS 自定义HTTP头
--proxy PROXY HTTP代理
--scan-level {1,2,3} 扫描级别: 1-快速, 2-标准, 3-深度 (默认: 2)
--scan-type {all,xss,csrf,sqli,lfi,rfi,ssrf,xxe}
扫描类型 (默认: all)
--payload-level {1,2,3} Payload复杂度: 1-基础, 2-标准, 3-高级 (默认: 2)
-o, --output OUTPUT 输出报告文件
--format {txt,html,json,xml}
报告格式 (默认: html)
-v, --verbose 显示详细输出
--no-color 禁用彩色输出
高级选项:
--browser 使用真实浏览器进行扫描
--exploit 尝试利用发现的漏洞
--custom-payloads FILE 自定义Payload文件
--exclude REGEX 排除URL模式 (正则表达式)
--include REGEX 仅包含URL模式 (正则表达式)
--auth USER:PASS 基本认证
```
## XSS漏洞案例
扫描器能够检测以下XSS攻击场景
1. **网页留言板获取cookie**检测表单提交中的XSS漏洞可能导致cookie泄露
2. **CMS管理后台伪造钓鱼网站**检测URL参数中的XSS漏洞可能用于伪造管理界面
3. **图片处XSS攻击**检测图片参数和属性中的XSS漏洞
4. **SVG-XSS**检测SVG文件中的XML注入和XSS漏洞
5. **PDF-XSS**检测PDF参数中的XSS漏洞
6. **浏览器翻译-XSS**检测浏览器翻译功能中的XSS漏洞
7. **Flash-XSS**检测Flash参数中的XSS漏洞
8. **XSS配合MSf钓鱼**检测可能用于钓鱼的XSS漏洞
9. **XSS漏洞配合CSRF漏洞**检测可能与CSRF组合的XSS漏洞
10. **XSS漏洞配合越权漏洞**检测可能导致权限提升的XSS漏洞
## 进阶用法
### 自定义有效载荷
创建一个文本文件每行包含一个XSS有效载荷然后使用`--custom-payloads`参数:
```bash
python main.py -u https://example.com --custom-payloads my_payloads.txt
```
### 漏洞利用
使用`--exploit`参数启用漏洞利用功能:
```bash
python main.py -u https://example.com --exploit
```
当发现漏洞时,扫描器将尝试进一步利用该漏洞,例如:
- XSS漏洞尝试窃取cookie或会话信息
- SQL注入尝试提取数据库信息
- 文件包含:尝试读取敏感文件
### 限制扫描范围
使用正则表达式包含或排除特定URL
```bash
# 只扫描/admin/路径下的URL
python main.py -u https://example.com --include "^https://example.com/admin/.*"
# 排除静态资源
python main.py -u https://example.com --exclude "\.(jpg|css|js|png|gif)$"
```
## 安全和免责声明
此工具仅供安全研究和授权渗透测试使用。未经明确许可,对系统进行扫描可能违反法律。使用者需要:
1. 只在自己拥有的系统上或获得明确授权的系统上使用
2. 了解并遵守当地的网络安全法律和规定
3. 负责任地披露发现的安全漏洞
## 贡献
欢迎贡献代码、报告bug或提出功能建议。请通过以下方式参与
1. Fork仓库
2. 创建功能分支 (`git checkout -b feature/amazing-feature`)
3. 提交更改 (`git commit -m 'Add some amazing feature'`)
4. 推送到分支 (`git push origin feature/amazing-feature`)
5. 创建Pull Request
## 许可证
本项目采用MIT许可证 - 详情请查看[LICENSE](LICENSE)文件。
## 联系方式
2025-03-09 13:50:58 +08:00
- 项目链接: [https://github.com/achenc1013/XSS_Scanner](https://github.com/achenc1013/XSS_Scanner)
2025-03-09 13:49:12 +08:00
- 联系邮箱: [1013199991@qq.com](1013199991@qq.com)
---
2025-03-09 13:50:58 +08:00
**注意**:此工具是为安全专业人员设计的,使用前请确保遵守所有适用的法律和法规。