razureink/cve-2025-5777-citrixbleed2_reproduction
GitHub: razureink/cve-2025-5777-citrixbleed2_reproduction
该项目复现了 Citrix NetScaler ADC/Gateway 的 CVE-2025-5777(CitrixBleed 2)高危内存泄露漏洞,提供完整的漏洞分析、PoC 和缓解方案。
Stars: 0 | Forks: 0
# CVE-2025-5777 — CitrixBleed 2 (Citrix NetScaler 内存泄露)
**CVSS 9.3 — 严重 — 已发现野外利用**
CitrixBleed 2 是 Citrix NetScaler ADC 和 NetScaler Gateway 中的一个内存泄露漏洞。认证端点的输入验证不足导致了**内存越界读取 (CWE-125)**,允许未经身份验证的攻击者泄露敏感的内存内容——包括会话 cookie、加密材料和其他机密信息。
## 概述
| 字段 | 值 |
|-------|-------|
| **CVE** | CVE-2025-5777 |
| **CVSS** | 9.3 (严重) |
| **CWE** | 125 — 越界读取 |
| **受影响产品** | NetScaler ADC / Gateway(具体版本见下文) |
| **利用情况** | 已确认野外利用 |
| **发现时间** | 2025 |
| **类型** | 内存泄露 / 信息泄露 |
## 技术细节
该漏洞存在于认证端点中:
```
POST /p/u/doAuthentication.do
```
通过发送一个带有**空 `login` 参数**的请求,可以绕过服务器的输入验证,导致其将未初始化的内存复制到响应中。泄露的数据会出现在 HTTP 响应的 `` XML 元素中。
攻击者可以通过从泄露的内存中提取 `NSC_AAAC` 会话 cookie,将此内存泄露与会话劫持攻击进行链式组合。
### 泄露的内容
- 会话 cookie(`NSC_AAAC`、`NSC_TEMP` 等)
- 内部 IP 地址
- 栈 / 堆内存片段
- 加密密钥材料(在某些泄露中观察到)
- 其他用户的会话 token
## 受影响版本
| 产品 | 易受攻击版本 | 已修复版本 |
|---------|-----------|-------|
| NetScaler ADC 14.1 | < 14.1-30.59 | 14.1-30.59+ |
| NetScaler ADC 13.1 | < 13.1-56.27 | 13.1-56.27+ |
| NetScaler ADC 13.0 | < 13.0-92.24 | 13.0-92.24+ |
| NetScaler Gateway 14.1 | < 14.1-30.59 | 14.1-30.59+ |
| NetScaler Gateway 13.1 | < 13.1-56.27 | 13.1-56.27+ |
| NetScaler Gateway 13.0 | < 13.0-92.24 | 13.0-92.24+ |
只有配置为 **Gateway**(VPN / ICA / CVPN / RDP Proxy)或 **AAA 虚拟服务器**的设备会受到影响。设备模式(L2/L3)不受此漏洞影响。
## 复现步骤
1. 识别运行易受攻击版本的 Citrix NetScaler ADC/Gateway。
2. 验证是否配置了 Gateway 或 AAA 虚拟服务器模式。
3. 向 `/p/u/doAuthentication.do` 发送一个带有空 `login` 参数的 POST 请求。
4. 捕获 HTTP 响应并提取 `` 元素的值。
5. 检查泄露的数据中是否包含会话 cookie 和其他机密信息。
6. 如果发现 `NSC_AAAC` cookie,则可利用它来冒充受害者的会话。
## PoC
```
POST /p/u/doAuthentication.do HTTP/1.1
Host: target.example.com
Content-Type: application/x-www-form-urlencoded
login=&passwd=foo
```
响应中将包含带有泄露内存内容的 `` 标签。在已修补的系统上,`` 应该直接为空。
## 缓解措施
1. **升级**到上面列出的已修补固件版本。
2. 在修补后**使所有活动的会话失效**,以确保任何泄露的 token 不再有效。
3. 如果无法立即修补,请通过 ACL 或 WAF 规则限制对管理界面和认证端点的访问。
4. 监控利用迹象——例如对带有空参数的 `/p/u/doAuthentication.do` 的异常请求。
## 参考
- Citrix 安全公告: https://support.citrix.com/article/CTX691608
- CVE 条目: https://nvd.nist.gov/vuln/detail/CVE-2025-5777
- NVD: https://nvd.nist.gov/
标签:Citrix NetScaler, CVE-2025-5777, StruQ, 内存泄露, 漏洞复现