miniOrange OTP Login, Verification and SMS Notifications <= 5.4.9 - Unauthenticated Privilege Escalation
Description
The miniOrange OTP Login, Verification and SMS Notifications plugin for WordPress is vulnerable to Privilege Escalation in all versions up to, and including, 5.4.9. This makes it possible for unauthenticated attackers to elevate their privileges to that of an administrator.
CVSS Vector Breakdown
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:HTechnical Details
<=5.4.9What Changed in the Fix
Changes introduced in v5.5.0
Source Code
WordPress.org SVN` This is an unauthenticated action. Is there any other frontend script? `autoload.php` defines `VALIDATION_JS_URL`. `MoOtpSpamIntegration` enqueues `mosp_enqueue_frontend_scripts`. Let's assume the PoC agent will: 1. Create a page with a miniOrange shortcode (e.g., `[mo_verify_otp]…
Show full research plan
This is an unauthenticated action. Is there any other frontend script? autoload.phpdefinesVALIDATION_JS_URL. MoOtpSpamIntegrationenqueuesmosp_enqueue_frontend_scripts`.
Let's assume the PoC agent will:
- Create a page with a miniOrange shortcode (e.g.,
[mo_verify_otp]) to ensure all scripts are loaded. - Visit the page and extract the nonce.
- Send the malicious POST request.
Payload to elevate privileges:
option=mo_customer_validation_settings_wpnonce=[nonce]users_can_register=1default_role=administrator
If the plugin only allows saving its own options:mo_customer_validation_wp_default_role=administrator(guessed name)
Actually, if the plugin is vulnerable to unauthenticated option updates, it's usually because it doesn't filter the keys inupdate_option.
Let's verify the JS variable name for the nonce.
In class-moactionhandlerhandler.php:$this->nonce = 'mo_admin_actions';
In controllers/titlebar.php:$nonce = $admin_handler->get_nonce_value();
The titlebar is admin-only.
However, many miniOrange plugins have a "Contact Us" or "Support" form
Check if your site is affected.
Run a free security audit to detect vulnerable plugins, outdated versions, and misconfigurations.