CVE-2026-15369

Custom User Registration Fields for WooCommerce <= 2.2.3 - Unauthenticated Privilege Escalation via 'afreg_select_user_role' Parameter in Store API Checkout

2026-08-29 06:31
0xd4rk5id3

Strategic Overview

Status
Patched in 2.2.4
Affected Version
<= 2.2.3
CVSS
9.8Critical
Weakness type
CWE-269 · Improper Privilege Management
CVE
CVE-2026-15369
View all Custom User Registration Fields for WooCommerce vulnerabilities

At a glance

CVE-2026-15369 is a critical-severity Improper Privilege Management vulnerability in the Custom User Registration Fields for WooCommerce WordPress plugin, affecting versions <= 2.2.3. It carries a CVSS score of 9.8 (reachable over the network; low attack complexity; high confidentiality, integrity, availability impact). Exploitation requires no authentication. The issue is fixed in version 2.2.4; sites on affected versions should update now. Disclosed August 2026, reported by 0xd4rk5id3.

Vulnerability Overview

The Custom User Registration Fields for WooCommerce plugin for WordPress is vulnerable to Privilege Escalation in versions up to, and including, 2.2.3. This is due to the plugin accepting an attacker-controlled afreg_select_user_role value from the unauthenticated WooCommerce Store API /wc/store/v1/checkout request in the af_reg_checkout_data_to_order_meta_data_block() function, persisting it in order meta, and then passing it directly to WP_User::add_role() in the af_reg_custom_order_processing_function() function (hooked to woocommerce_thankyou) without validating against the plugin's admin-configured allowed role list. This makes it possible for unauthenticated attackers to elevate their privileges to Administrator by creating an account during checkout with a modified JSON body specifying administrator (or any other role slug) as the desired role. Note: The exploit requires the "User Role Selection" setting to be enabled.

Technical Analysis

The vector marks this flaw as remotely reachable over the network, with low attack complexity — no special timing or configuration is needed, and no privileges on the target site, and no interaction from a victim user. A successful exploit has high impact on confidentiality, integrity, availability — full site compromise territory.

CWE-269: Improper Privilege Management

Custom User Registration Fields for WooCommerce <= 2.2.3 carries this weakness at af_reg_checkout_data_to_order_meta_data_block(), and reaching it takes no account at all. Improper privilege management means the code lets an account end up with capabilities its role should not have.

It converts a low-privileged account into an administrative one, which makes every other restriction on the site irrelevant. For Custom User Registration Fields for WooCommerce the fix is 2.2.4: builds <= 2.2.3 are affected, anything from 2.2.4 onward is not.

Remediation

Update to version 2.2.4, or a newer patched version

How does WordSec protect against this?

This one needs no account at all, which puts it outside what login hardening can reach; WordSec's login security narrows the account-level paths around it, and the firewall is what inspects the request itself. None of that substitutes for the fix: Custom User Registration Fields for WooCommerce 2.2.4 closes this, and updating the plugin is the step that ends it.

  • Login Security
  • Alerts

External References

Related records

Other vulnerabilities in Custom User Registration Fields for WooCommerce

Vulnerability data © Defiant, Inc., provided under the Wordfence Intelligence T&C