CVEswedevsCVE-2026-120070Published Oct 31, 07:46 · Updated Oct 31, 07:46 UTC
8.8
HighCVSS 3.1 · from Wordfence
CVE-2026-120070

User Frontend <= 4.3.13 - Authenticated (Subscriber+) Privilege Escalation via post_content Parameter

User Frontend – Membership, User Registration, User Profile, User Directory & Content Restriction with Frontend Post Submission · Improper privilege management · CWE-269
AffectedUser Frontend – Membership, User Registration, User Profile, User Directory & Content Restriction with Frontend Post Submission
FixNo fix listed yet.
PublishedOct 31, 07:46 · Wordfence
ScoredOct 31 · 8.8 · Wordfence
Exploit code publicNone known · checked 21:18 UTC
ExploitedNone known · CISA KEV checked 22:04 UTC

What we know

No known exploitation. CISA KEV, checked 22:04 UTC.
No public exploit code known. Exploit-DB, Metasploit, Nuclei, checked 21:18 UTC.
An attacker needs network access and an account. CVSS: network, low privileges.
A successful attack can read and change data and take the service down. CVSS: high impact on confidentiality, integrity and availability.

Description

The User Frontend – Membership, User Registration, User Profile, User Directory & Content Restriction with Frontend Post Submission plugin for WordPress is vulnerable to Privilege Escalation in all versions up to, and including, 4.3.13 via the `post_content` parameter of the `submit_post()` function. The vulnerability exists because the protected-shortcode blocklist guard inspects the `sanitize_textarea_field()` copy of the submitted `post_content`, while the copy actually persisted to the database is processed through `wp_kses()`, whose `wp_kses_no_null()` step strips C0 control bytes — allowing an attacker to inject a single `\x01` byte inside the `[wpuf-registration]` tag name to defeat the `strpos()` blocklist check while the clean, functional shortcode is stored verbatim; `strip_shortcodes()` does not neutralize the stored shortcode either, because the Frontend container that registers it via `add_shortcode()` is only instantiated when `is_admin()` is false, and `admin-ajax` requests have `is_admin() === true`. This makes it possible for authenticated attackers, with Subscriber-level access and above, to inject a `[wpuf-registration role="editor"]` shortcode into a published post, causing a live Editor-role registration form to be rendered publicly on the frontend that any visitor — or the attacker themselves — can submit to mint a WordPress Editor account with an immediately active privileged session when the default `autologin_after_registration` setting is enabled.

From Wordfence

Affected and fixed versions

ProductAffectedFixed inUser Frontend – Membership, User Registration, User Profile, User Directory & Content Restriction with Frontend Post Submissionup to 4.3.13–

Exploit code

Exploit-DBnone knownMetasploitnone knownNucleinone known

References

www.wordfence.com/threat-intel/vulnerabilities/id/f84b6767-f254-45c9-8e78-36d4beac2a98?source=cve · wordfence.complugins.trac.wordpress.org/browser/wp-user-frontend/tags/4.3.13/includes/Ajax/Frontend_Form_Ajax.php#L253 · plugins.trac.wordpress.orgplugins.trac.wordpress.org/browser/wp-user-frontend/tags/4.3.13/includes/Ajax/Frontend_Form_Ajax.php#L132 · plugins.trac.wordpress.orgplugins.trac.wordpress.org/browser/wp-user-frontend/tags/4.3.13/includes/Frontend/Registration.php#L116 · plugins.trac.wordpress.orgplugins.trac.wordpress.org/browser/wp-user-frontend/tags/4.3.13/includes/Frontend/Registration.php#L362 · plugins.trac.wordpress.orgplugins.trac.wordpress.org/changeset/3770255/wp-user-frontend/trunk/includes/Ajax/Frontend_Form_Ajax.php · plugins.trac.wordpress.org

Other CVEs in User Frontend – Membership, User Registration, User Profile, User Directory & Content Restriction with Frontend Post Submission

All 2 →
6.1User Frontend <= 4.3.13 - Reflected Cross-Site Scripting via 'field_attr[required]' Parameter · CVE-2026-103962Oct 316.4User Frontend <= 4.3.12 - Authenticated (Subscriber+) Stored Cross-Site Scripting via 'wpuf_payment_method' Parameter · CVE-2026-96574Oct 10