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 | 扫描内联 `