nobuo-miura/web-security-toolkit

GitHub: nobuo-miura/web-security-toolkit

一套使用 Python 构建的 Web 应用安全测试 CLI 工具集合,涵盖漏洞扫描、配置审计和信息收集等十三项安全检测功能。

Stars: 0 | Forks: 0

# web-security-toolkit [English](README.md) | [日本語](README.ja.md) 一个使用 Python 构建的 CLI 安全工具集合。 每个工具都是一个独立的脚本,具有丰富的终端输出和解释性注释,说明其所检测的攻击技术。 ## 环境要求 - Python 3.14+ - [uv](https://github.com/astral-sh/uv) ``` git clone cd web-security-toolkit uv sync ``` ## 使用方法 所有工具都可以通过中央启动器启动: ``` uv run python main.py [args...] ``` 或者直接运行每个工具: ``` uv run python headerhawk/headerhawk.py ``` ## 工具 ### HeaderHawk — HTTP 安全头分析器 获取 HTTP 响应头并检查是否存在安全配置错误。 ``` uv run python main.py headerhawk ``` | Header | 防范目标 | |--------|--------------------------| | `Strict-Transport-Security` | SSL 剥离 / HTTPS 降级 | | `X-Frame-Options` | 点击劫持 | | `Content-Security-Policy` | XSS, 数据注入 | | `X-Content-Type-Options` | MIME 嗅探 | | `Access-Control-Allow-Origin` | CORS 配置错误 | ### CORScan — CORS 配置错误检测器 针对 CORS 策略测试四种攻击模式: ``` uv run python main.py corscan ``` | 测试 | 攻击模式 | |------|----------------| | 任意 origin 反射 | `Origin: https://evil-attacker.com` 在 `ACAO` 中被反射 | | Null origin 绕过 | `Origin: null` 被信任(可通过沙盒 iframe 利用) | | 前缀域名匹配 | `Origin: https://evil-victim.com` 被接受 | | 后缀域名匹配 | `Origin: https://victim.com.evil.com` 被接受 | ### JWTool — JWT 结构分析器 解码 JWT 并分析其 header 和 payload 的安全问题。 ``` uv run python main.py jwtool ``` 检查项:`alg: none`,弱 HMAC 算法,`kid` 注入,缺失/过期的 `exp`,未来的 `nbf`。 ### RedirCheck — 开放重定向检测器 向常见的重定向参数注入外部 canary URL,并检查服务器是否跟随重定向。 ``` uv run python main.py redirectcheck ``` 测试的参数:`redirect`, `url`, `next`, `return`, `redirect_uri`, `callback`, `to` 等等(共 20 个)。 ### CSPLint — Content Security Policy 评估器 从 URL 获取 CSP header 或评估原始 CSP 字符串。报告危险的指令。 ``` uv run python main.py csplint uv run python main.py csplint "default-src 'self'; script-src 'unsafe-inline'" ``` 检测项:`'unsafe-inline'`,`'unsafe-eval'`,通配符 `*`,`http:` scheme,`script-src` 中的 `data:`,缺失 `default-src`。 ### SubEnum — 子域名枚举器 结合证书透明度日志和 wordlist 枚举子域名,然后通过 DNS 解析每一个子域名。 ``` uv run python main.py subenum ``` 来源:[crt.sh](https://crt.sh) API + 内置 wordlist(40 个条目)+ 并行 DNS 解析。 ### TechDetect — 技术指纹识别器 从响应头、cookie 和 HTML 内容中识别技术栈。 ``` uv run python main.py techdetect ``` 检测项:web 服务器(Apache, Nginx, IIS),后端(PHP, ASP.NET, Django, Rails),CDN(Cloudflare, Fastly),CMS(WordPress, Drupal)以及前端框架(React, Vue, Next.js)。 ### SQLiProbe — SQL 注入检测器 使用两种检测方法测试 GET 参数。 ``` uv run python main.py sqliprobe '' ``` | 方法 | 技术 | |--------|-----------| | 基于错误 | 注入引号字符;扫描响应中的数据库错误字符串 | | 基于时间盲注 | 注入 `SLEEP()` / `WAITFOR DELAY`;测量相对于基线的响应延迟 | 支持 MySQL, PostgreSQL, MSSQL, Oracle, SQLite。 ### XSScan — XSS 扫描器 测试反射型 XSS,并对 DOM XSS sink 执行静态分析。 ``` uv run python main.py xsscan '' ``` | 类型 | 方法 | |------|--------| | 反射型 | 注入 canary 字符串;检查它是否未转义地出现在 HTML 响应中 | | 基于 DOM | 扫描内联 `