Razielx64/CVE-2025-69606-GSVoIP-XSS
GitHub: Razielx64/CVE-2025-69606-GSVoIP-XSS
针对 GSVoIP Web Panel v2.0.90 中反射型 XSS 漏洞(CVE-2025-69606)的 PoC 与完整披露文档,涵盖漏洞原理、利用方式和修复建议。
Stars: 0 | Forks: 0
# CVE-2025-69606 — GSVoIP Web Panel 中的反射型 XSS
## 概述
在 **GSVoIP Web Panel (v2.0.90)** 中发现了一个**反射型跨站脚本 (XSS)** 漏洞。错误端点的 `msg` 参数在将用户控制的输入反射到 HTML 响应之前,没有进行过滤处理,从而允许在受害者的浏览器中执行任意 JavaScript。
## 受影响产品
| 字段 | 详细信息 |
|-------------|----------------------------------|
| 产品 | GSVoIP Web Panel |
| 版本 | 2.0.90 (可能包含更早版本) |
| 供应商 | Solutions VoIP (GS Solutions) |
| CWE | CWE-79 — 跨站脚本 |
| 攻击向量 | 远程 / 网络 |
| 身份验证 | 不需要 |
## 漏洞端点
```
GET /painel/gateways.php/error?msg=
```
`msg` 参数被直接反射到 HTML 响应中,未经任何过滤或输出编码处理。
## 概念验证
### Payload
```
https://{TARGET}/painel/gateways.php/error?msg=%3Cscript%3Ealert(1)%3C%2Fscript%3E
```
**解码后:**
```
```
### 结果
当访问精心构造的 URL 时,注入的 payload 会在受害者的浏览器中执行:
```
alert(1)
```
## 攻击场景
1. 攻击者构造一个在 `msg` 参数中包含 XSS payload 的恶意 URL。
2. 诱骗受害者点击该链接(通过网络钓鱼、社会工程学等手段)。
3. 页面加载后,注入的 JavaScript 将在受害者的浏览器上下文中执行——**无需任何身份验证**。
## 影响
- 在受害者的浏览器中执行任意 JavaScript
- 通过窃取 cookie 进行会话劫持
- 网络钓鱼和社会工程学攻击
- 敏感数据泄露
- 应用程序上下文中的内容篡改
## 修复建议
- **输出编码:** 在将所有用户提供的输入呈现在 HTML 响应中之前,对其进行编码(至少需要进行 HTML 实体编码)。
- **安全模板机制:** 使用启用自动转义功能的模板引擎。
- **内容安全策略 (CSP):** 实施严格的 CSP 以及具有限制性的 `script-src` 指令。
- **输入验证:** 在输入层拒绝或剥离包含 HTML 标签或脚本序列的参数。
## 漏洞披露时间线
| 步骤 | 事件 |
|------|-------------------------------------------------|
| 1 | 漏洞由 Luiz Eduardo 发现并报告 |
| 2 | 分配 CVE:`CVE-2025-69606` |
| 3 | 公开披露 |
## 致谢
由 **Luiz Eduardo** 发现并报告
*CVE-2025-69606 · CWE-79 · GSVoIP Web Panel v2.0.90*
标签:CVE-2025-69606, CWE-79, GSVoIP Web Panel, PoC, VoIP安全, Web安全, XSS, 会话劫持, 反射型跨站脚本攻击, 多模态安全, 数据可视化, 数据窃取, 暴力破解, 未授权攻击, 漏洞分析, 漏洞情报, 网络安全, 蓝队分析, 路径探测, 输入验证缺失, 远程攻击, 隐私保护