CVE-2026-104745 — WordPress
HIGHCVE-2026-104745 is a high-severity (CVSS 8.1) Improper Privilege Management vulnerability. No vendor fix is recorded yet; mitigation options are listed below.
The Customer Email Verification for WooCommerce plugin for WordPress is vulnerable to Privilege Escalation via the `alg_wc_ev_verify_email` parameter in versions up to, and including,…
Description
The Customer Email Verification for WooCommerce plugin for WordPress is vulnerable to Privilege Escalation via the alg_wc_ev_verify_email parameter in versions up to, and including, 3.3.0. The vulnerability exists because alg_wc_ev_generate_user_code() generates the per-user activation secret using wp_rand(100) when the plugin's 'Encoding method' is set to 'hashids', producing only ~101 possible values (~7 bits of entropy); the resulting token is a reversible Hashids encoding with no cryptographic MAC, and the unauthenticated verify() handler — hooked to init at PHP_INT_MAX with no nonce check and no rate limiting — accepts and acts on the attacker-controlled ?alg_wc_ev_verify_email= GET parameter directly. This makes it possible for unauthenticated attackers to gain authentication as any unverified WordPress account, including administrator-level accounts, by brute-forcing the trivially small activation code space via a forged verification URL. Exploitation requires that the 'Encoding method' setting be changed to 'hashids' (non-default), that the attacker recover or brute-force the Hashids salt (which defaults to an md5(time()) value set at first initialization), and that the target account's email address remain unverified.
Detection & mitigation playbook
VulnerabilityDetect
Identify every host running the affected component and compare the installed build against the fixed version below — for source-built or distro-packaged software the version string, not a lockfile, is the source of truth (`dpkg -l`, `rpm -q`, or the binary's own `--version`).
Remediation status
No fixed release is recorded for CVE-2026-104745 yet. Track the upstream advisory, and apply the exposure-reduction steps below in the meantime.
Mitigate without a patch
Close the privilege gap rather than the entry point: audit which accounts, roles and service identities can reach the affected operation, drop the component to the least privilege it actually needs, and review file and directory permissions created by earlier installs — a default left in place is what makes this reachable.
Frequently Asked Questions
Is CVE-2026-104745 in your dependencies?
Find it across , including transitive dependencies.