CVE-2026-63030 和 CVE-2026-60137 – WordPress wp2shell 漏洞链扫描器
经授权的安全研究工具,带有可选命令验证 PoC。
wp2shell-scanner 通过验证公开的 WordPress 证据、指纹暴露的版本、检查 REST 批处理行为以及测量主动时序差异,来检测 WordPress wp2shell 漏洞链。它适用于授权的防御性研究、CTF 环境以及你拥有或管理的系统。
本项目严格限于授权的安全测试和防御性研究。
-p/--poc 会改变 WordPress 状态,随后会尽力进行清理。whoami 或研究人员提供的命令。requirements.txt 中列出的依赖项:
requestscolorama获取此仓库,然后从其根目录安装依赖项。
切换到项目目录:
cd wp2shell-scanner
可选但推荐:创建并激活虚拟环境:
python3 -m venv .venv
source .venv/bin/activate
# Windows PowerShell: .venv\Scripts\Activate.ps1
安装依赖项:
python3 -m pip install -r requirements.txt
确认 CLI 可用:
python3 wp2shell-scanner.py -h
显示帮助:
python3 wp2shell-scanner.py -h
如果不指定目标运行工具,则会显示品牌帮助文本并以使用错误退出。提供一个目标源:-u/--url 用于单个目标,或 -l/--list 用于目标文件。
python3 wp2shell-scanner.py -u https://wordpress.example
没有协议的目标被视为 http:// URL。目标列表文件每行一个 URL;忽略空行和以 # 开头的行。无效条目会报告其行号。
支持的入口点是根脚本:
python3 wp2shell-scanner.py -u https://wordpress.example
| 选项 | 描述 | 默认值 |
|---|
扫描一个目标:
python3 wp2shell-scanner.py --url https://wordpress.example
使用 20 个工作线程扫描目标列表:
python3 wp2shell-scanner.py --list targets.txt --threads 20
仅在扫描器主动确认目标后运行改变状态的验证 PoC:
python3 wp2shell-scanner.py -u https://wordpress.example -p
运行研究人员提供的命令,并仅打印其标准化的多行输出:
python3 wp2shell-scanner.py --url https://wordpress.example -p --command "ls -la" --quiet
将仅存在漏洞的结果写入 JSON,或使用 --all-results 包含所有目标:
python3 wp2shell-scanner.py --list targets.txt --output results.json
python3 wp2shell-scanner.py --list targets.txt --output results.json --all-results
受影响的稳定版本为 WordPress 6.9.0–6.9.4 和 7.0.0–7.0.1。请立即更新至 6.9.5 或 7.0.2 或更高版本。
| 代码 | 含义 |
|---|---|
0 | 扫描完成,且没有任何 可能受影响 的结果。确认存在漏洞的结果也使用此代码。 |
1 | 至少一个目标为 可能受影响。 |
2 | 目标输入无效,或每个计划目标均以错误结束。 |
本项目基于 MIT 许可证 授权。详情请参阅 LICENSE。
📬 联系我们:[email protected]
-u URL, --url URL | 扫描一个 WordPress 目标 URL。与 --list 互斥。 | 无 |
-l FILE, --list FILE | 从文本文件扫描目标 URL。与 --url 互斥。 | 无 |
| 选项 | 描述 | 默认值 |
|---|
-p, --poc | 在主动确认后,运行改变状态的命令验证 PoC。除非指定了 --command,否则使用 whoami。 | 关闭 |
-c COMMAND, --command COMMAND | 在 --poc 期间执行 COMMAND;需要 --poc。 | whoami |
-t N, --threads N | 列表扫描的并发目标工作线程。N 必须至少为 1。 | 10 |
| 选项 | 描述 | 默认值 |
|---|
-o FILE, --output FILE | 将 UTF-8 JSON 结果数组写入 FILE。默认情况下,仅包含确认存在漏洞的结果。 | 无 |
--all-results | 在 --output 中包含所有扫描结果,包括无漏洞、非 WordPress 和错误结果。 | 关闭 |
-v, --verbose | 显示最终 PoC HTTP 状态和 X-Action-Redirect 头部。 | 关闭 |
-q, --quiet | 成功执行 PoC 时,仅打印标准化的命令输出。失败和清理警告输出到 stderr。 | 关闭 |
--no-color | 禁用彩色终端输出。 | 关闭 |
| 结果 | 含义 |
|---|
| 存在漏洞 | 主动时序探测确认了漏洞链。请立即修补目标。 |
| 可能受影响 | 公开版本位于受影响范围内,但主动确认被阻止或结果不确定。请修补并调查。 |
| 无漏洞 | 主动探测未确认,且未检测到受影响的公开版本。 |
| 非 WordPress | 未找到公开的 WordPress 证据。 |
| 错误 | 网络、TLS、目标输入或意外响应错误导致无法进行可靠扫描。 |