Description
The Naimur Email OTP Verification for WooCommerce plugin for WordPress is vulnerable to authentication bypass in versions up to, and including, 2.1.0. This is due to the plugin's password-reset finalization endpoint (the wp_ajax_nopriv_ceovw_update_new_password action handled by CEOVW_AJAX::update_new_password()) authorizing the reset solely by the presence of a database row marking an email as 'VERIFIED', with no timestamp check, no session binding, and no per-reset token — combined with mark_otp_as_verified_for_reset() leaving the row in that state after a user enters their code (abandoning the flow leaves the row behind), and a scheduled 'ceovw_cleanup_expired_otps_event' cron that has no add_action() handler anywhere in the plugin so cleanup never runs. This makes it possible for unauthenticated attackers to take over any account whose owner previously requested and verified a password-reset code and did not immediately finish choosing a new password — the attacker needs only the victim's email address and a nonce that the plugin itself localizes publicly into the CEOVW_APP global on the WooCommerce account page for logged-out visitors, after which they call the endpoint, overwrite the victim's password, and are returned a live wordpress_logged_in_ session cookie for that user (full site takeover if the account is an administrator).
Published: 2026-11-07
Score: 9.8 Critical
EPSS: n/a
KEV: No
Impact: Unauthorized Account Takeover
Action: Immediate Patch
AI Analysis

Impact

The vulnerability arises from the Naimur Email OTP Verification for WooCommerce plugin allowing an unauthenticated attacker to override a user's password after the user has verified a reset code but abandoned the final step. The endpoint wp_ajax_nopriv_ceovw_update_new_password authorizes password changes solely on the presence of a 'VERIFIED' row in the database, with no expiration, session linkage, or unique reset token. An attacker who knows the victim’s email and the publicly exposed nonce can send a request to that endpoint, overwrite the victim’s password, and resultantly receive a valid logged-in cookie. This permits complete takeover of the affected account, including administrator access, without first compromising the site or other credentials. Affected systems are WordPress sites that have installed the Naimur Email OTP Verification for WooCommerce plugin, version 2.1.0 or earlier. The specific vendor product is the WooCommerce extension developed by naimurrahmannahid. No explicit patches are listed in the official CNA information, but evidence from the 2.1.1 source code suggests the flaw may have been addressed in subsequent releases. The risk score is a CVSS of 9.8, indicating critical severity. No EPSS value is available, but the lack of requirement for authenticated access and the presence of a public nonce imply a high probability of exploitation in the wild. The attack vector is remotely exploitable via HTTP(S) requests to the WordPress site’s AJAX endpoint, requiring only the victim’s email address and the nonce.

Affected Systems

WordPress sites with the Naimur Email OTP Verification for WooCommerce plugin, version 2.1.0 or earlier. The plugin is developed by naimurrahmannahid. No additional version information is provided beyond the ≤2.1.0 cutoff.

Risk and Exploitability

The flaw carries a CVSS score of 9.8, classifying it as critical and indicating that attackers can easily achieve full administrative privileges on the target WordPress installation. The EPSS score is not reported, but the nature of the exploit—unauthenticated, no token, merely requiring an email and nonce—suggests that it would be readily leveraged in the real world. The flaw is not currently listed in CISA’s KEV catalog, yet the high impact warrants immediate action. The attack vector is a remote unauthenticated request to the AJAX endpoint, with no further prerequisites.

Generated by OpenCVE AI on November 7, 2026 at 12:22 UTC.

Remediation

No solution or workaround provided in the CVE record.

OpenCVE Recommended Actions

  • Update the Naimur Email OTP Verification for WooCommerce plugin to the latest released version (e.g., 2.1.1 or newer) where the reset logic has been corrected.
  • If the plugin cannot be updated, disable the password‑reset endpoint or delete all pending 'VERIFIED' rows in the OTP table so that the bypass cannot be executed.
  • Ensure that the site’s WordPress core and WooCommerce plugin are kept up to date, and consider blocking or requiring authentication for the wp_ajax_nopriv_ceovw_update_new_password endpoint via a firewall or custom code patch.

Generated by OpenCVE AI on November 7, 2026 at 12:22 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Sun, 08 Nov 2026 06:30:00 +0000

Type Values Removed Values Added
Metrics ssvc

{'options': {'Automatable': 'yes', 'Exploitation': 'none', 'Technical Impact': 'total'}, 'version': '2.0.3'}


Sat, 07 Nov 2026 11:30:00 +0000

Type Values Removed Values Added
Description The Naimur Email OTP Verification for WooCommerce plugin for WordPress is vulnerable to authentication bypass in versions up to, and including, 2.1.0. This is due to the plugin's password-reset finalization endpoint (the wp_ajax_nopriv_ceovw_update_new_password action handled by CEOVW_AJAX::update_new_password()) authorizing the reset solely by the presence of a database row marking an email as 'VERIFIED', with no timestamp check, no session binding, and no per-reset token — combined with mark_otp_as_verified_for_reset() leaving the row in that state after a user enters their code (abandoning the flow leaves the row behind), and a scheduled 'ceovw_cleanup_expired_otps_event' cron that has no add_action() handler anywhere in the plugin so cleanup never runs. This makes it possible for unauthenticated attackers to take over any account whose owner previously requested and verified a password-reset code and did not immediately finish choosing a new password — the attacker needs only the victim's email address and a nonce that the plugin itself localizes publicly into the CEOVW_APP global on the WooCommerce account page for logged-out visitors, after which they call the endpoint, overwrite the victim's password, and are returned a live wordpress_logged_in_ session cookie for that user (full site takeover if the account is an administrator).
Title Naimur Email OTP Verification for WooCommerce <= 2.1.0 - Unauthenticated Authentication Bypass to Account Takeover via Abandoned Password Reset Finalization
Weaknesses CWE-287
References
Metrics cvssV3_1

{'score': 9.8, 'vector': 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H'}


Subscriptions

No data.

cve-icon MITRE

Status: PUBLISHED

Assigner: Wordfence

Published:

Updated: 2026-11-07T18:26:30.767Z

Reserved: 2026-10-01T16:43:39.527Z

Link: CVE-2026-104014

cve-icon Vulnrichment

Updated: 2026-11-07T18:24:12.359Z

cve-icon NVD

Status : Deferred

Published: 2026-11-07T12:17:41.313

Modified: 2026-11-07T19:17:17.340

Link: CVE-2026-104014

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-11-07T12:30:17Z

Weaknesses