enderphan94/web_scan
GitHub: enderphan94/web_scan
一个 Claude Code 插件,用于执行自动化的客户端 Web 安全评估并生成 Markdown 格式的渗透测试报告。
Stars: 0 | Forks: 0
# webscanner
一个 [Claude Code](https://claude.ai/code) 插件,用于执行自动化的客户端 Web 安全评估。只需指向任意域名,它就能生成结构化的 Markdown 渗透测试报告,涵盖敏感信息泄露、易受攻击的 JS 库、安全配置错误、XSS 注入点、CORS 问题等——无需任何手动设置。
## 它的功能
**webscanner** 针对目标的浏览器攻击面运行固定的 6 步安全审查:
| 步骤 | 检查项 | 使用的工具 |
|------|-------|------------|
| 0 | 操作系统检测 + 自动安装依赖 | `pip3`, `uname` |
| 1 | 安全头、Cookie 标志、HTTPS 重定向 | `curl` |
| 2 | 敏感路径暴露(`.env`, `.git`, Swagger, 管理面板等) | `curl` |
| 3 | HTML 分析 — SRI、tabnapping、CSRF、点击劫持、base 标签注入、HTML 注释中的机密信息 | `curl` |
| 4 | JavaScript 分析 — 40+ 种机密信息模式、DOM XSS 注入点、原型污染、Source Map 暴露 | `curl`, `python3` |
| 4b | 通过 Retire.js CVE 数据库检测易受攻击的 JS 库 | `npx retire` *(需要 Node.js)* |
| 5 | CORS 配置错误测试 | `curl` |
| 6 | 通过 crt.sh 进行子域名枚举 + 接管检测 | `curl`, `python3` |
### 它能检测什么
**机密信息与敏感数据**
- AWS / GCP / GitHub / Stripe / Twilio / SendGrid / Slack / Firebase / Sentry API 密钥
- JWT 令牌、私钥、硬编码密码、数据库连接字符串
- 生产环境 JS 中的内部 IP、预发布 URL、Source Map、调试产物
**漏洞**
- DOM XSS 注入点:`innerHTML`, `document.write`, `eval`, `location.href`, `dangerouslySetInnerHTML`
- 原型污染模式
- 缺失 / 配置错误的安全头 (CSP, HSTS, X-Frame-Options, CORP, COOP 等)
- 不安全的 Cookie 标志 (缺少 `Secure`, `HttpOnly`, `SameSite`)
- CORS 配置错误 (通配符、Origin 反射、credentials + 通配符)
- 子域名接管 (S3, GitHub Pages, Heroku, Netlify, Azure, Fastly, Cloudfront)
- 暴露的敏感路径:`.env`, `.git/config`, `/actuator/env`, Swagger, GraphQL, phpinfo
**库漏洞**
- 通过 Retire.js 数据库检测 jQuery, Bootstrap, lodash, Angular, React 和 1000+ 其他库中的已知 CVE
## 系统要求
| 依赖项 | 是否必需 | 备注 |
|------------|----------|-------|
| `python3` | 是 | 3.7+ |
| `curl` | 是 | 预装在 macOS 和大多数 Linux 上 |
| `pip3` | 是 | 随 Python 3 附带 |
| `npx` / Node.js | 否 | 启用步骤 4b (retire.js)。若缺失,将跳过库 CVE 扫描。 |
该插件在首次运行时通过 `pip3 install --user` **自动安装** `requests`, `beautifulsoup4`, 和 `dnspython`。如果缺少任何依赖,它会为您的操作系统 (macOS, Ubuntu/Debian, RHEL, Arch) 打印正确的安装命令。
## 安装
**选项 A —— 直接加载(无需安装,用于开发/个人使用):**
```
claude --plugin-dir /path/to/web_scan
```
**选项 B —— 从 GitHub 安装(持久化,推荐):**
```
/plugin marketplace add enderphan94/web_scan
/plugin install webscan@enderphan94
```
## 用法
```
/webscan:scan
```
目标可以是以下任何格式 —— 插件会自动进行规范化处理:
```
/webscan:scan acb.com
/webscan:scan www.acb.com
/webscan:scan https://www.acb.com
/webscan:scan http://staging.acb.com/app
```
扫描将运行所有步骤,并在您当前的工作目录中将报告写入 `client_side_pentest_report.md`。
## 示例用例
**Bug Bounty 侦察**
```
/webscan:scan target.com
```
在手动测试之前快速绘制客户端攻击面——一次性暴露机密信息、易受攻击的库和配置错误的头信息。
**发布前安全审查**
```
/webscan:scan staging.myapp.com
```
在发布到生产环境之前,捕获硬编码的 API 密钥、缺失的安全头和易受攻击的依赖项。
**CTF / Web 挑战**
```
/webscan:scan chall.ctf.example.com
```
自动化初始侦察阶段——检查常见的 CTF 入口点,如暴露的 `.git`、Source Map、调试端点和 JS 机密信息。
**第三方供应商评估**
```
/webscan:scan vendor-portal.thirdparty.com
```
在无需访问供应商源代码的情况下,评估其 Web 门户的客户端安全态势。
**内部审计**
```
/webscan:scan https://intranet.company.internal
```
针对外部攻击者会寻找的相同问题,审计内部 Web 应用程序。
## 输出
该插件将生成包含以下内容的 `client_side_pentest_report.md`:
- **执行摘要** — 严重程度统计表和前 3 大发现
- **方法论** — 检测到的操作系统、运行的步骤、使用的工具
- **资产清单** — 发现的子域名和 JS 文件
- **发现** — 按 CRITICAL → HIGH → MEDIUM → LOW → INFO 分组,每项均包含证据、复现步骤、影响和修复建议
- **误报** — 明确指出
- **修复优先级** — 按严重程度排序
- **附录** — 原始证据、所有探测过的路径和 HTTP 状态码
## 预估 Token 用量
Token 用量取决于目标的 JS 包大小和发现数量。典型范围如下:
| 目标类型 | 输入 Token | 输出 Token | 总计 |
|-------------|-------------|---------------|-------|
| 简单落地页 (1–3 个 JS 文件) | ~8,000–15,000 | ~3,000–5,000 | ~11,000–20,000 |
| 中型 SPA (5–10 个 JS 文件) | ~20,000–45,000 | ~5,000–10,000 | ~25,000–55,000 |
| 大型应用 (10+ 个 JS 文件,多个子域名) | ~50,000–120,000 | ~8,000–20,000 | ~58,000–140,000 |
**影响 Token 用量的因素:**
- JS 文件大小 — 压缩后的包体积较大。插件将分析限制在 10 个 JS 文件以内。
- crt.sh 返回的子域名数量 — 限制为 20 个探测点。
- 发现数量 — 发现越多 = 报告越长 = 输出 Token 越多。
## 安全性与范围
- **仅限非破坏性** — 无暴力破解、无撞库、无 DoS
- **被动优先** — 读取公开可访问的页面和 JS;不尝试利用
- **适度的请求量** — 遵守速率限制;路径仅探测一次,不循环
- **仅限授权使用** — 仅扫描您拥有或获得明确书面测试许可的目标
## 许可证
MIT — 见 [LICENSE](LICENSE)
## 作者
[Ender Phan](https://github.com/enderphan94)
标签:API密钥检测, Bash, Claude 插件, CORS misconfiguration, GitHub, JavaScript安全, LLM应用, Markdown报告, MITM代理, Python, Retire.js, Web安全, XSS检测, 加密, 大语言模型工具, 子域名接管, 客户端安全, 密码管理, 对称加密, 数据泄露, 无后门, 漏洞扫描器, 网络安全, 自动化审计, 蓝队分析, 输入验证, 逆向工具, 隐私保护