Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessLoad front-end page and scrape verify_otp_nonce
-
DeliveryCall resend_otp AJAX to trigger token issuance
-
ExploitPredict md5(email + time()) secret_code
-
ExecutionSubmit cusomer_email_verify GET parameter
-
ImpactLog in as verified WooCommerce customer
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A07:2025 - Authentication Failures
ASVS 5.0
V6 - Authentication Authentication mechanism validation
MITRE ATT&CK
2 techniques across 2 tactics: Defense Evasion, Initial Access The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | Exploitation requires that the plugin's cev_user_log table contain a password column - present on sites upgraded from an older plugin version that defined it, but absent from the fresh-install schema shipped in 2.8.2, so default clean installs of 2.8.2 are not exploitable. When that column exists, no authentication is required (PR:N): the attacker only needs front-end access, since the verify_otp_nonce is emitted to every visitor via wp_localize_script and the authenticate_user_by_email_link() function (hooked on wp, triggered by the cusomer_email_verify GET parameter) performs no capability or nonce check. The limiting factors are the password-column precondition and the need to predict the md5(email . time()) secret_code, which is what the CVSS AC:H reflects; the impact is limited to customer-level account access (C:L/I:L), not administrative takeover. |
| Impact | This is a genuine but constrained authentication-bypass issue that does not rise to emergency priority. The supplied CVSS 3.1 vector (AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:L/A:N, base 4.8) agrees with the description: the attack is network-reachable and unauthenticated (PR:N) but rated high complexity (AC:H), consistent with the need to predict an md5(email . time()) token and with the hard precondition that the cev_user_log table carry a password column. The vuln.today decision label is this_month, not act_now/emergency, and the input contains no CISA KEV entry, no EPSS score, and no exploit/PoC reference - the only references are the Wordfence advisory and WordPress trac source lines. So exploitation status is: no public exploit identified at time of analysis. The signals are internally consistent rather than conflicting: moderate severity, no active-exploitation evidence, and a narrow precondition all point the same direction. The main caveat is coverage - EPSS and KEV data are simply absent from the input, so widespread-versus-targeted exploitation cannot be judged from the data provided; the realistic read is a medium-priority, patch-this-cycle issue most relevant to sites upgraded from older plugin versions. |
| Exploit ScenarioDerived | An unauthenticated attacker loads any front-end page of the shop, where wp_localize_script exposes the verify_otp_nonce, then calls the wp_ajax_nopriv_resend_otp handler to have a verification token issued for an email they choose. Because the secret_code is only md5(email . time()), the attacker can narrow and predict the token and submit it via the cusomer_email_verify GET parameter (handled with no capability or nonce check) to log in as a verified WooCommerce customer or flip an existing account's customer_email_verified meta. No public exploit code is identified in the input; the high attack complexity reflects the token-prediction and the precondition that the cev_user_log table include a password column. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Oct 28, 2026
Authentication bypass in the Customer Email Verification for WooCommerce plugin (all versions up to and including 2.8.2) allows unauthenticated front-end visitors to complete the plugin's email-verification step for an arbitrary address, letting them log in as a newly created verified WooCommerce customer or flip an existing account's customer_email_verified meta to verified. The bypass relies on three weaknesses chained together: the cusomer_email_verify handler performs no capability or nonce check, the secret_code it validates is generated as md5(email . time()), and the verify_otp_nonce needed to trigger token issuance is disclosed to every visitor through wp_localize_script. Severity is constrained rather than urgent: CVSS 3.1 base 4.8 (AC:H) and the trigger only works on sites where the cev_user_log table retains a password column from an older schema, which clean 2.8.2 installs do not have; no CISA KEV entry and no public exploit code were identified at time of analysis, and impact is limited to customer-level accounts rather than administrative takeover.
RemediationAI
The fix path identified in the supplied data is the plugin's 2.8.3 release, whose class-wc-customer-email-verification-signup.php file is referenced alongside the vulnerable 2.8.2 code; sites running 2.8.2 or any earlier version should move to that build, and because exploitation depends on the legacy cev_user_log.password column, upgraded sites should be prioritized over clean installs. Patch status is best described as an upstream fix available in 2.8.3 with no separate vendor patch statement included in the supplied sources, and no vendor-documented workaround is provided in the references - the Wordfence advisory and the WordPress.org developer changelog are the places to confirm the fix and any interim guidance. Until the update is applied, the only scoping fact available from the evidence is that clean 2.8.2 installations lacking the password column are not exploitable, so operators should determine whether their cev_user_log table was created by an older version before treating a site as exposed; that is a triage observation, not a documented mitigation. Per the current priority assessment this is a this-month remediation item rather than an emergency, and there is no indication of active exploitation to drive out-of-band response.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 1 package in euvd
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
The target is a WordPress plugin that hooks into WooCommerce's customer registration flow to force email confirmation before an account becomes usable. Two code paths interact. First, the wp_ajax_nopriv_resend_otp handler issues the verification token, and the nonce guarding that flow (verify_otp_nonce) is printed into every front-end page via wp_localize_script, so any anonymous visitor receives the value needed to call the handler. Second, authenticate_user_by_email_link() is registered on the generic wp action and is triggered by the cusomer_email_verify GET parameter; it performs neither a capability check nor a nonce verification, and it validates the supplied secret_code against md5(email . time()) - a value with a small, guessable input space rather than a cryptographically random token. Mapping to CWE-287 (Improper Authentication): the plugin verifies a claim of email ownership using a value an attacker can compute and a handler an attacker can reach, so the verification control it exists to enforce can be satisfied without access to the mailbox. A deployment-dependent precondition gates real-world exploitation: the cev_user_log table must contain a password column, which older plugin versions defined and which is absent from the fresh-install schema shipped in 2.8.2, so default clean installs of the affected version are not exploitable in practice. The high attack complexity in the assessed vector reflects this schema prerequisite plus the need to land on the predicted time-based digest, while confidentiality and integrity are both rated low because the resulting access is a customer-level session, not an administrative one.
Know when Customer Email Verification For Woocommerce gets its next vulnerability
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
Severity by source
AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:L/A:N
Network-reachable and unauthenticated (AV:N/PR:N); AC:H for the time()-based token prediction plus the password-column precondition; customer-level access yields C:L/I:L and no availability impact.
Primary rating from Vendor (Wordfence).
CVSS VectorVendor: Wordfence
DescriptionCVE.org
The Customer Email Verification for WooCommerce plugin for WordPress is vulnerable to Authentication Bypass via a Predictable Email-Verification Token in all versions up to, and including, 2.8.2. This is due to the authenticate_user_by_email_link() function - hooked on the wp action and triggered by the cusomer_email_verify GET parameter - lacking any capability check or nonce verification, while the secret_code it validates is generated as md5(email . time()) and the verify_otp_nonce required to trigger token issuance via the wp_ajax_nopriv_resend_otp handler is emitted to every front-end visitor through wp_localize_script. This makes it possible for unauthenticated attackers to log in as a newly created, verified WooCommerce customer bound to an arbitrary email address - or to flip an existing account's customer_email_verified meta to verified - fully bypassing the plugin's core email-verification control. Exploitation requires the cev_user_log table to contain a password column, which is absent from the fresh-install schema shipped in version 2.8.2 but is present on sites upgraded from an older version where that column was defined.
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Authentication bypass attacks exploit flaws in the verification mechanisms that control access to systems and applications.
Privilege escalation in the Customer Email Verification for WooCommerce WordPress plugin through 3.3.0 allows unauthenti
The Customer Email Verification for WooCommerce plugin for WordPress is vulnerable to Authentication Bypass in all versi
The Customer Email Verification for WooCommerce plugin for WordPress is vulnerable to Sensitive Information Exposure in
EUVD-2026-111594
GHSA-fmvc-698m-vpm5
NVD
CVE.org
EPSS
Exploit-DB