bolubey/CVE-2026-0257
GitHub: bolubey/CVE-2026-0257
CVE-2026-0257 漏洞利用工具,用于测试 GlobalProtect 认证绕过漏洞。
Stars: 0 | Forks: 0
# CVE-2026-0257 - Palo Alto Networks GlobalProtect 认证绕过 Cookie 伪造
## 概述
CVE-2026-0257 是一个中等严重性(视为关键)的认证绕过漏洞,影响 Palo Alto Networks PAN-OS 和 Prisma Access。它允许远程未认证的攻击者伪造 GlobalProtect 认证绕过 Cookie 并在存在特定配置的情况下建立 VPN 连接。
**CISA KEV**: 2026年5月29日添加
**CVSS v4**: 中等(由于边缘面向 VPN 的影响,视为关键)
**首次观察到利用**: 2026年5月17日
## 工作原理
该漏洞利用了 GlobalProtect 中的认证绕过功能,该功能向认证用户颁发类似令牌的 Cookie。利用方式如下:
1. 从 GlobalProtect 门户/网关 HTTPS 服务检索证书链
2. 遍历每个证书的公钥
3. 使用每个公钥加密伪造认证绕过 Cookie
4. 将伪造的 Cookie 与网关的 `/ssl-vpn/login.esp` 端点进行测试
5. 如果设备将其 HTTPS 服务证书的 Cookie 加密证书重复使用,则伪造的 Cookie 被接受
根本原因:当用于加密/解密认证绕过 Cookie 的证书与 HTTPS 服务证书相同(或共享公钥)时,任何远程攻击者都可以从 TLS 握手中获得公钥并伪造任意 Cookie。服务器端在解密后不进行签名验证。
## 受影响的产品
| 产品 | 受影响版本 | 未受影响版本 |
|---------|------------------|-------------------|
| PAN-OS 12.1 | < 12.1.4-h6 | >= 12.1.4-h6, >= 12.1.7 |
| PAN-OS 11.2 | < 11.2.4-h17 | >= 11.2.4-h17, >= 11.2.7-h14, >= 11.2.10-h7, >= 11.2.12 |
| PAN-OS 11.1 | < 11.1.4-h33 | >= 11.1.4-h33, >= 11.1.6-h32, >= 11.1.7-h6, >= 11.1.10-h25, >= 11.1.13-h5, >= 11.1.15 |
| PAN-OS 10.2 | < 10.2.7-h34 | >= 10.2.7-h34, >= 10.2.10-h36, >= 10.2.13-h21, >= 10.2.16-h7, >= 10.2.18-h6 |
| Prisma Access 11.2.0 | < 11.2.7-h13 | >= 11.2.7-h13 |
| Prisma Access 10.2.0 | < 10.2.10-h36 | >= 10.2.10-h36 |
**利用要求**:
- GlobalProtect 门户或网关中必须启用认证绕过功能
- Cookie 加密/解密证书必须与其他功能(例如 HTTPS 服务)重复使用
## 要求
- Python 3.6+
```
pip install -r requirements.txt
```
## 使用方法
### 单个目标
```
python exploit_poc.py --target
python exploit_poc.py --target --port 8443
python exploit_poc.py --target --user
```
### 从文件中读取多个目标
创建一个包含目标的文件(每行一个,`ip:port` 格式):
```
# targets.txt -> targets.txt
192.168.1.1:443
10.0.0.1:443
vpn.example.com:8443
```
```
python exploit_poc.py --target-file targets.txt
```
### 选项
| 选项 | 描述 | 默认值 |
|--------|-------------|---------|
| `--target` | 目标 IP 或主机名 | - |
| `--target-file` | 包含目标的文件(ip:port 每行) | - |
| `--user` | 伪造 Cookie 的用户名 | admin |
| `--domain` | Cookie 的域名 | (空) |
| `--host-id` | Cookie 的主机 ID | (空) |
| `--client-os` | Cookie 的客户端 OS 字符串 | Windows |
| `--client-ip` | Cookie 中的客户端 IP | 0.0.0.0 |
| `--context` | 测试上下文:网关、门户或两者 | both |
| `--verbose` | 打印完整的服务器响应 | - |
## 预期输出
```
============================================================
Target: 192.168.1.1:443
============================================================
Retrieving certificate chain from 192.168.1.1:443 ...
Found 2 certificate(s) in chain:
[0] CN=Root CA (RSA 4096 bits, CA=True)
[1] CN=Gateway Cert (RSA 2048 bits, CA=False)
Forging cookie for user 'admin', testing each key
Trying [0] CN=Root CA
Gateway did not accept the forged cookie (192.168.1.1:443)
Trying [1] CN=Gateway Cert
Gateway accepted the forged cookie (192.168.1.1:443)
Cookie:
```
## 缓解措施
1. **升级**到供应商提供的补丁(见上表版本)
2. **禁用** GlobalProtect 门户/网关设置中的认证绕过功能
3. **生成一个新证书**专门用于认证绕过 Cookie(不要与 HTTPS 或其他功能重复使用)
## 检测
监控 GlobalProtect 认证日志以检测:
- 来自意外源 IP 的基于 Cookie 的成功认证
- 通过通用非人类身份(例如 `admin`)进行的本地账户登录
- 多次利用波次中的连续 MAC 地址
- 认证延迟异常
示例可疑日志条目:
```
GLOBALPROTECT,0,2817,...,gateway-auth,login,Cookie,,admin,...,GP-CLIENT,...,6.0.0,,Linux,...,success
```
## 参考资料
- [Palo Alto Networks 咨询](https://security.paloaltonetworks.com/CVE-2026-0257)
- [Rapid7 分析](https://www.rapid7.com/blog/post/etr-rapid7-observed-exploitation-of-pan-os-globalprotect-authentication-bypass-vulnerability-cve-2026-0257)
## 免责声明
此工具仅用于授权的安全测试和防御目的。在测试任何目标系统之前,请确保您有适当的授权。
标签:CISA KEV, CVE-2026-0257, CVSS评分, GlobalProtect, Palo Alto Networks, PAN-OS, PAN-OS版本, VPN, 威胁模拟, 密钥泄露, 日志解析, 漏洞修复, 漏洞利用时间, 漏洞影响, 漏洞等级, 网络安全, 网络安全培训, 认证绕过, 证书伪造, 远程攻击, 逆向工具, 隐私保护