# 深度XSS漏洞扫描器 这是一个全面的Web应用安全扫描工具,专注于检测XSS(跨站脚本)漏洞,同时也能够发现其他类型的Web安全漏洞。该工具支持多种扫描模式、不同级别的有效载荷和详细的漏洞报告。 ## 功能特点 - **多种漏洞检测**: - XSS(反射型、存储型、DOM型) - CSRF(跨站请求伪造) - SQL注入 - LFI(本地文件包含) - RFI(远程文件包含) - SSRF(服务器端请求伪造) - XXE(XML外部实体注入) - **全面的扫描能力**: - 网站爬虫功能,自动发现可测试的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/achenc1013/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 xss_scanner.py -u https://example.com ``` ### 更多示例 **扫描单个URL**: ```bash python xss_scanner.py -u https://example.com ``` **扫描多个URL**: ```bash python xss_scanner.py -f targets.txt ``` **深度扫描**: ```bash python xss_scanner.py -u https://example.com --scan-level 3 ``` **只扫描XSS漏洞**: ```bash python xss_scanner.py -u https://example.com --scan-type xss ``` **使用浏览器进行DOM XSS检测**: ```bash python xss_scanner.py -u https://example.com --browser ``` **利用发现的漏洞**: ```bash python xss_scanner.py -u https://example.com --exploit ``` **生成HTML报告**: ```bash python xss_scanner.py -u https://example.com -o report.html --format html ``` **使用代理**: ```bash python xss_scanner.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 xss_scanner.py -u https://example.com --custom-payloads my_payloads.txt ``` ### 漏洞利用 使用`--exploit`参数启用漏洞利用功能: ```bash python xss_scanner.py -u https://example.com --exploit ``` 当发现漏洞时,扫描器将尝试进一步利用该漏洞,例如: - XSS漏洞:尝试窃取cookie或会话信息 - SQL注入:尝试提取数据库信息 - 文件包含:尝试读取敏感文件 ### 限制扫描范围 使用正则表达式包含或排除特定URL: ```bash # 只扫描/admin/路径下的URL python xss_scanner.py -u https://example.com --include "^https://example.com/admin/.*" # 排除静态资源 python xss_scanner.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)文件。 ## 联系方式 - 项目链接: [https://github.com/achenc1013/XSS_Scanner](https://github.com/achenc1013/XSS_Scanner) - 联系邮箱: [1013199991@qq.com](1013199991@qq.com) --- **注意**:此工具是为安全专业人员设计的,使用前请确保遵守所有适用的法律和法规。