KJKabangu/vuln-scanner

GitHub: KJKabangu/vuln-scanner

一个基于 Python 的命令行 Web 漏洞扫描器,通过抓取表单并自动注入 payload 来检测反射型 XSS 和 SQL 注入。

Stars: 0 | Forks: 0

# Web 漏洞扫描器 一个基于 Python 的 CLI 工具,用于通过抓取表单并注入测试 payload 来检测 Web 应用程序中的 **Reflected XSS** 和 **Error/Time-based SQL Injection**。 ## 功能 - 抓取目标页面上的所有 HTML 表单 - 通过 payload 注入和响应匹配来测试 Reflected XSS - 通过错误特征检测和基于时间的盲注检测来测试 SQLi - JSON 报告输出 - 易于扩展的 payload 列表(无需修改代码) ## 安装 ``` https://github.com/KJKabangu/vuln-scanner cd vuln-scanner pip install -r requirements.txt ``` ## 用法 ``` # 扫描两种漏洞 python main.py http://localhost/dvwa --all # 仅 XSS python main.py http://localhost/dvwa --xss # 仅 SQLi,自定义报告路径 python main.py http://localhost/dvwa --sqli --output results.json ``` ## 安全测试环境 切勿针对真实目标进行测试。请使用以下具有故意漏洞的应用程序: | 应用程序 | Docker 命令 | |-----|---------------| | DVWA | `docker run -p 80:80 vulnerables/web-dvwa` | | bWAPP | `docker run -p 80:80 raesene/bwapp` | | WebGoat | `docker run -p 8080:8080 webgoat/webgoat` | ## 工作原理 **XSS**:将 payload 注入到表单字段中,并检查它们是否在响应正文中未经转义地出现 —— 这表明服务器在未进行清理的情况下直接回显了输入。 **SQLi**:注入破坏 SQL 语法的字符(`'`、`"`)以及基于布尔值/时间的 payload,然后检查响应中是否包含数据库错误字符串或异常的响应延迟。 ## 局限性 - XSS:仅检测反射型 —— 不检测存储型或基于 DOM 的 XSS - SQLi:涵盖基于错误的和基于时间的盲注 —— 不检测二阶注入 - 无 WAF 绕过技术 - 单页扫描(暂不支持递归抓取) ## 路线图 - [ ] 带有范围控制的递归站点抓取 - [ ] 通过 Selenium 检测 DOM XSS - [ ] Header/cookie 注入点 - [ ] 为每个发现进行 CVSS 严重性评分 - [ ] 异步扫描以提升速度# Web 漏洞扫描器 一个基于 Python 的 CLI 工具,用于通过抓取表单并注入测试 payload 来检测 Web 应用程序中的 **Reflected XSS** 和 **Error/Time-based SQL Injection**。 ## 功能 - 抓取目标页面上的所有 HTML 表单 - 通过 payload 注入和响应匹配来测试 Reflected XSS - 通过错误特征检测和基于时间的盲注检测来测试 SQLi - JSON 报告输出 - 易于扩展的 payload 列表(无需修改代码) ## 安装 ``` git clone https://github.com/yourname/vuln-scanner cd vuln-scanner pip install -r requirements.txt ``` ## 用法 ``` # 扫描两种漏洞 python main.py http://localhost/dvwa --all # 仅 XSS python main.py http://localhost/dvwa --xss # 仅 SQLi,自定义报告路径 python main.py http://localhost/dvwa --sqli --output results.json ``` ## 安全测试环境 切勿针对真实目标进行测试。请使用以下具有故意漏洞的应用程序: | 应用程序 | Docker 命令 | |-----|---------------| | DVWA | `docker run -p 80:80 vulnerables/web-dvwa` | | bWAPP | `docker run -p 80:80 raesene/bwapp` | | WebGoat | `docker run -p 8080:8080 webgoat/webgoat` | ## 工作原理 **XSS**:将 payload 注入到表单字段中,并检查它们是否在响应正文中未经转义地出现 —— 这表明服务器在未进行清理的情况下直接回显了输入。 **SQLi**:注入破坏 SQL 语法的字符(`'`、`"`)以及基于布尔值/时间的 payload,然后检查响应中是否包含数据库错误字符串或异常的响应延迟。 ## 局限性 - XSS:仅检测反射型 —— 不检测存储型或基于 DOM 的 XSS - SQLi:涵盖基于错误的和基于时间的盲注 —— 不检测二阶注入 - 无 WAF 绕过技术 - 单页扫描(暂不支持递归抓取) ## 路线图 - [ ] 带有范围控制的递归站点抓取 - [ ] 通过 Selenium 检测 DOM XSS - [ ] Header/cookie 注入点 - [ ] 为每个发现进行 CVSS 严重性评分 - [ ] 异步扫描以提升速度
标签:CISA项目, Homebrew安装, Python, SQL注入检测, Web安全, XSS检测, 加密, 文档结构分析, 无后门, 漏洞扫描器, 蓝队分析, 逆向工具