CVE-2026-12215: CWE-434 Unrestricted Upload of File with Dangerous Type in xootix OTP Login & Register Woocommerce
The OTP Login & Register Woocommerce plugin for WordPress is vulnerable to Authentication Bypass via OTP Brute Force in all versions up to, and including, 2.7.2. The vulnerability exists because the OTP rate-limit attempt counter in `process_otp_form` is keyed exclusively on the attacker-controlled `xoo_ml_user_ip_data` cookie's `ip_address` field, allowing unlimited counter resets by simply rotating the cookie, while the OTP itself is generated with PHP's non-cryptographic `rand()` function over a default space of only 9,000 possible values (1000–9999), and both the OTP issuance endpoint (`xoo_ml_login_with_otp`) and verification endpoint (`xoo_ml_otp_form_submit`) are registered as unauthenticated `wp_ajax_nopriv` actions with no nonce or capability checks. This makes it possible for unauthenticated attackers to brute-force the OTP for any registered account and obtain a full WordPress authentication session — including for administrator accounts — via `wp_set_auth_cookie()` in `login_user_with_otp()`. Exploitation requires the attacker to know the target user's registered phone number, which is used to trigger OTP issuance via the unauthenticated `xoo_ml_login_with_otp` endpoint.
AI Analysis
Technical Summary
CVE-2026-12215 affects the OTP Login & Register Woocommerce WordPress plugin versions up to 2.7.2. The vulnerability allows unauthenticated attackers to bypass authentication by brute forcing OTPs. The OTP rate-limit counter is keyed on a cookie value controlled by the attacker, allowing unlimited resets. OTPs are generated using PHP's rand() function over only 9000 possible values, making brute force feasible. Both OTP issuance and verification endpoints are unauthenticated wp_ajax_nopriv actions without nonce or capability checks. Successful exploitation grants a full WordPress authentication session via wp_set_auth_cookie(), including for administrator accounts. Exploitation requires knowledge of the target's registered phone number to trigger OTP issuance.
Potential Impact
An attacker who knows a target user's registered phone number can brute-force the OTP to gain unauthorized access to that user's WordPress account, including administrator accounts. This leads to a full authentication bypass without needing valid credentials. The vulnerability does not impact confidentiality but allows integrity compromise through unauthorized login. Availability is not affected.
Mitigation Recommendations
Patch status is not yet confirmed — check the vendor advisory for current remediation guidance. Until a fix is available, restrict access to the OTP endpoints if possible, monitor for suspicious OTP requests, and consider disabling the OTP login feature. Avoid relying on this plugin for authentication in sensitive environments until patched.
CVE-2026-12215: CWE-434 Unrestricted Upload of File with Dangerous Type in xootix OTP Login & Register Woocommerce
Description
The OTP Login & Register Woocommerce plugin for WordPress is vulnerable to Authentication Bypass via OTP Brute Force in all versions up to, and including, 2.7.2. The vulnerability exists because the OTP rate-limit attempt counter in `process_otp_form` is keyed exclusively on the attacker-controlled `xoo_ml_user_ip_data` cookie's `ip_address` field, allowing unlimited counter resets by simply rotating the cookie, while the OTP itself is generated with PHP's non-cryptographic `rand()` function over a default space of only 9,000 possible values (1000–9999), and both the OTP issuance endpoint (`xoo_ml_login_with_otp`) and verification endpoint (`xoo_ml_otp_form_submit`) are registered as unauthenticated `wp_ajax_nopriv` actions with no nonce or capability checks. This makes it possible for unauthenticated attackers to brute-force the OTP for any registered account and obtain a full WordPress authentication session — including for administrator accounts — via `wp_set_auth_cookie()` in `login_user_with_otp()`. Exploitation requires the attacker to know the target user's registered phone number, which is used to trigger OTP issuance via the unauthenticated `xoo_ml_login_with_otp` endpoint.
CVSS v3.1
Score 5.3medium
Affected software
xootix
OTP Login & Register Woocommerce
Weaknesses
AI-Powered Analysis
Machine-generated threat intelligence
Technical Analysis
CVE-2026-12215 affects the OTP Login & Register Woocommerce WordPress plugin versions up to 2.7.2. The vulnerability allows unauthenticated attackers to bypass authentication by brute forcing OTPs. The OTP rate-limit counter is keyed on a cookie value controlled by the attacker, allowing unlimited resets. OTPs are generated using PHP's rand() function over only 9000 possible values, making brute force feasible. Both OTP issuance and verification endpoints are unauthenticated wp_ajax_nopriv actions without nonce or capability checks. Successful exploitation grants a full WordPress authentication session via wp_set_auth_cookie(), including for administrator accounts. Exploitation requires knowledge of the target's registered phone number to trigger OTP issuance.
Potential Impact
An attacker who knows a target user's registered phone number can brute-force the OTP to gain unauthorized access to that user's WordPress account, including administrator accounts. This leads to a full authentication bypass without needing valid credentials. The vulnerability does not impact confidentiality but allows integrity compromise through unauthorized login. Availability is not affected.
Mitigation Recommendations
Patch status is not yet confirmed — check the vendor advisory for current remediation guidance. Until a fix is available, restrict access to the OTP endpoints if possible, monitor for suspicious OTP requests, and consider disabling the OTP login feature. Avoid relying on this plugin for authentication in sensitive environments until patched.
Technical Details
- Data Version
- 5.2
- Assigner Short Name
- Wordfence
- Date Reserved
- 2026-06-14T13:32:13.820Z
- Cvss Version
- 3.1
- State
- PUBLISHED
Threat ID: 6aa379d691cc7f38489ada35
Added to database: 09/11/2026, 03:47:34 UTC
Last enriched: 09/11/2026, 04:03:15 UTC
Last updated: 09/11/2026, 22:23:26 UTC
Views: 16
Community Reviews
0 reviewsCrowdsource mitigation strategies, share intel context, and vote on the most helpful responses. Sign in to add your voice and help keep defenders ahead.
Want to contribute mitigation steps or threat intel context? Sign in or create an account to join the community discussion.
Actions
Updates to AI analysis require Pro Console access. Upgrade inside Console → Billing.
Need more coverage?
Upgrade to Pro Console for AI refresh and higher limits.
For incident response and remediation, OffSeq services can help resolve threats faster.
Latest Threats
Check if your credentials are on the dark web
Instant breach scanning across billions of leaked records. Free tier available.