cruxN3T/CVE-2025-0133
GitHub: cruxN3T/CVE-2025-0133
针对 CVE-2025-0133 反射型 XSS 漏洞的范围感知型赏金流水线,覆盖从 Shodan 资产发现、平台 scope 匹配、安全金丝雀验证到报告草稿生成的全流程。
Stars: 0 | Forks: 0
# CVE-2025-0133
Palo Alto PAN-OS 在 GlobalProtect 网关和门户的 `getconfig.esp` 处理程序中存在反射型 XSS 漏洞。`user` 查询参数未经编码便被反射到 Captive Portal 页面中;诱骗经过身份验证的 GlobalProtect 用户访问恶意链接的攻击者,可以在企业 VPN 门户的信任上下文中执行 JavaScript,这使得网络钓鱼活动更加有效。
于 2025 年 5 月披露。已在 PAN-SA-2025-0005 中修补。由 Anthropic 的自主漏洞搜寻智能体 [XBOW](https://xbow.com/) 发现。本工具包是最初为 CVE-2020-3580 构建的验证流水线的移植版本——架构相同,端点不同,参数不同,中间相隔了五年的 CVE。
本仓库包含:
- `xss.html` — 人工验证的 PoC;编辑 `TARGET_HOST` 并在浏览器中打开即可看到弹窗触发。
- `src/` — 发现与范围感知的验证流水线。
- `docs/` — 方法论与道德规范。
## 流水线功能
```
┌──────────┐ ┌──────────────┐ ┌────────────────┐ ┌──────────────┐
│ Shodan │ → │ scope match │ → │ canary check │ → │ MD report │
│ (3 dorks)│ │ (H1, BC, +) │ │ (no JS exec) │ │ drafts │
└──────────┘ └──────────────┘ └────────────────┘ └──────────────┘
```
每个阶段都会写入一个可检查的 JSON 工件并独立运行。
验证器**不会**触发 `prompt()`。它会使用在 `user` 参数中包含唯一金丝雀字符串的方式对 `/ssl-vpn/getconfig.esp` 发起 GET 请求,并对响应主体进行评级。确认命中的结果将生成一份 Markdown 草稿,其中引用了原始的 `xss.html`,供项目审查员在他们自己的浏览器中进行验证。
## 设置
```
git clone https://github.com/cruxN3T/CVE-2025-0133
cd CVE-2025-0133
python3 -m venv .venv && source .venv/bin/activate
pip install -r requirements.txt
cp creds.env.example creds.env
$EDITOR creds.env # add your Shodan key, optionally H1/BC tokens
```
`creds.env` 已被 gitignore。`.gitignore` 会阻止任何匹配 `*.env` 的文件(`*.env.example` 除外),同时也会忽略 `data/` 和 `reports/`,以防止目标列表和验证摘录被泄露到公共仓库中。
## 用法
端到端运行:
```
python -m src.pipeline run
```
或按阶段运行:
```
python -m src.pipeline discover # Shodan → data/shodan_hits.json
python -m src.pipeline scope # match → data/in_scope.json
python -m src.pipeline validate # canary → data/validation.json
python -m src.pipeline report # → reports/__CVE-2025-0133.md
```
`scope` 阶段无需任何 API 密钥即可运行——它从 `arkadiyt/bounty-targets-data` 拉取数据。在 `creds.env` 中添加 `H1_USERNAME` + `H1_API_TOKEN` 并运行 `H1_LIVE=true python -m src.pipeline scope`,将使用来自 HackerOne Hacker API 的最新数据对其进行扩充(速度较慢;仅在您怀疑项目简报在当天发生了更改时才有用)。
## 配置
所有配置均位于 `creds.env` 中。有关完整列表,请参阅 `creds.env.example`。
值得了解的两个配置项:
- `SCOPE_PLATFORMS` — 以逗号分隔。默认值为 `hackerone,bugcrowd`。如果需要更广泛的覆盖范围,请添加 `intigriti` 和 `yeswehack`。
- `TARGET_RPM` — 每个主机每分钟的请求数。默认值为 10。除非有充分理由,否则不要提高此数值。
## 运行前必读
- [`docs/ETHICS.md`](docs/ETHICS.md) — 范围匹配授权和不授权的操作,以及验证器刻意避免的操作。
- [`docs/METHODOLOGY.md`](docs/METHODOLOGY.md) — 反射评级的工作原理以及每个阶段存在的原因。
## 关于此 CVE 的特别说明
- **严重程度为中等,而非严重。** 这是需要用户交互的反射型 XSS。CVSS 4.0 基础分数为 5.1,在启用 Clientless VPN 时最高可达 6.9。各项目接受此漏洞,但预期奖励会低于 RCE 级别的漏洞。
- **第三方软件豁免是一个切实存在的问题。** 许多项目明确将供应商的 N-day 漏洞排除在范围之外,或要求转交给供应商的 PSIRT。在验证之前,请仔细阅读每个项目的简报,即使已经通过了范围匹配。
- **大规模扫描的竞争确实存在。** CVE-2025-0133 的公开 Nuclei 模板已经存在;自 2025 年 6 月以来,每位白帽子都在进行扫描。您的优势在于覆盖其他人跳过的项目(较小的 VDP、新上线的项目、区域性的项目),以及提交分拣员可以快速确认的、编写出色的报告。
## 本仓库不是什么
不是大规模漏洞利用工具。也不能替代在提交之前阅读平台上的项目简报。范围匹配器只是一个起点;政策文本才是最终的约束契约。
## 许可证
MIT。请参阅 [`LICENSE`](LICENSE)。
标签:API安全, Bugcrowd, Canary验证, CISA项目, CVE-2020-3580, CVE-2025-0133, GlobalProtect, Go语言工具, HackerOne, JSON输出, Palo Alto Networks, PAN-OS, Python, VPN安全, Web安全, XBOW, 企业安全, 反射型XSS, 威胁情报, 安全合规, 开发者工具, 无后门, 漏洞报告生成, 目标资产发现, 网络代理, 网络安全, 网络资产管理, 自动化渗透测试, 蓝队分析, 蜜罐检测, 跨站脚本攻击, 逆向工具, 隐私保护