Reported vulnerability
Custom User Registration Fields for WooCommerce <= 2.2.3 - Unauthenticated Privilege Escalation via 'afreg_select_user_role' Parameter in Store API Checkout
Published 29 Aug 2026
Updated 29 Aug 2026
CVE-2026-15369
Compare your installed software with the affected versions below. Follow the source’s remediation guidance and test an available update after taking a backup. A database entry describes a reported issue; it does not establish whether a particular website has been compromised.
Does this affect my version?
Check your installed version against this advisory. This compares the report’s version ranges and does not scan your website.
Wordfence advisory
critical · CVSS 9.8The 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.
Severity vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
Custom User Registration Fields for WooCommerce
- Software
- plugin · user-registration-plugin-for-woocommerce
- Affected versions
- Start version unspecified, through 2.2.3
- Fix availability
- Fix available
- Fixed versions
- 2.2.4
Recommended action
Update to version 2.2.4, or a newer patched version
Further references (1)
Data sources and licences
Copyright 2012-2026 Defiant Inc.
Defiant hereby grants you a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare derivative works of, publicly display, publicly perform, sublicense, and distribute this software vulnerability information. Any copy of the software vulnerability information you make for such purposes is authorized provided that you include a hyperlink to this vulnerability record and reproduce Defiant's copyright designation and this license in any such copy.
Read licence termsCopyright 1999-2026 The MITRE Corporation
CVE Usage: MITRE hereby grants you a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare derivative works of, publicly display, publicly perform, sublicense, and distribute Common Vulnerabilities and Exposures (CVE®). Any copy you make for such purposes is authorized provided that you reproduce MITRE's copyright designation and this license in any such copy.
Read licence termsSource: Wordfence
Need help fixing this issue?
Get help checking your site, applying an available update and resolving any problems after updating.
Get help with this issueQuestions about this vulnerability
Which versions of Custom User Registration Fields for WooCommerce are affected?
Wordfence lists these affected versions: Start version unspecified, through 2.2.3. Use the version checker above to compare your installed release with this report.
Is a fix available for Custom User Registration Fields for WooCommerce?
Wordfence reports a fix for this issue in Custom User Registration Fields for WooCommerce. It lists these fixed versions: 2.2.4. Back up your website and test the recommended update before applying it to your live site.
Where can I find my installed plugin version?
In WordPress, open Plugins > Installed Plugins and find the version shown beneath the plugin name.
Does an affected version mean my website has been hacked?
An affected version means the installed release matches a vulnerability described in this report. It does not show whether anyone has exploited it on your website. The checker compares version numbers with stored reports; it does not inspect your website.
Other reports for the same product
These reports cover at least one of the same plugins, themes or WordPress core. Check each report’s affected versions separately.