CVE-2025-14533
Privilege Escalation in ACF: Extended Plugin via Role Injection
Publication date: 2026-01-20
Last updated on: 2026-01-20
Assigner: Wordfence
Description
Description
CVSS Scores
EPSS Scores
| Probability: | |
| Percentile: |
Meta Information
Affected Vendors & Products
| Vendor | Product | Version / Range |
|---|---|---|
| acf_extended | acf_extended | to 0.9.2.1 (inc) |
| acf_extended | acf_extended | 0.9.2.2 |
Helpful Resources
Exploitability
| CWE ID | Description |
|---|---|
| CWE-269 | The product does not properly assign, modify, track, or check privileges for an actor, creating an unintended sphere of control for that actor. |
Attack-Flow Graph
AI Powered Q&A
How does this vulnerability affect compliance with common standards and regulations (like GDPR, HIPAA)?:
The vulnerability allows unauthenticated attackers to escalate privileges by registering as administrators on a WordPress site using the Advanced Custom Fields: Extended plugin. This unauthorized administrator access can lead to full control over the site, potentially exposing or manipulating personal data. Such a breach can result in non-compliance with data protection regulations like GDPR and HIPAA, which require strict access controls and protection of personal data. Therefore, this vulnerability poses a significant risk to compliance with these standards by undermining the security measures intended to protect sensitive information.
Can you explain this vulnerability to me?
The vulnerability in the Advanced Custom Fields: Extended WordPress plugin (up to version 0.9.2.1) is a Privilege Escalation issue caused by the 'insert_user' function not properly restricting the roles that can be assigned during user registration. Specifically, if the 'role' is mapped to a custom field, an unauthenticated attacker can supply the 'administrator' role when registering a new user, thereby gaining administrator access to the site without authorization. [4]
How can this vulnerability impact me? :
This vulnerability can allow an unauthenticated attacker to create a new user account with administrator privileges on a vulnerable WordPress site. This means the attacker can gain full control over the site, including modifying content, installing malicious code, stealing data, or disrupting site operations. The impact is severe as indicated by the CVSS score of 9.8, reflecting high confidentiality, integrity, and availability impacts. [4]
How can this vulnerability be detected on my network or system? Can you suggest some commands?
Detection of this vulnerability involves checking if the Advanced Custom Fields: Extended plugin version is up to and including 0.9.2.1 and if the 'role' field is mapped to a custom field allowing user registration with roles. You can audit user registrations for unauthorized administrator accounts. Since the vulnerability allows unauthenticated attackers to register as administrators, monitoring new user accounts with administrator roles is critical. Commands to detect suspicious administrator accounts on a WordPress system include: 1. Using WP-CLI to list users with administrator role: `wp user list --role=administrator` 2. Checking the plugin version installed: `wp plugin list | grep acf-extended` 3. Reviewing recent user registrations in the WordPress database, e.g., querying the `wp_users` and `wp_usermeta` tables for users with administrator capabilities. 4. Monitoring web server logs for suspicious POST requests to user registration endpoints that include role parameters. These steps help identify if unauthorized administrator accounts have been created due to this vulnerability. [2, 4]
What immediate steps should I take to mitigate this vulnerability?
Immediate mitigation steps include: 1. Update the Advanced Custom Fields: Extended plugin to version 0.9.2.2 or later, where the vulnerability is addressed by proper validation and restriction of role assignments during user registration. 2. Temporarily disable user registration or restrict it to trusted users until the plugin is updated. 3. Audit existing users for unauthorized administrator accounts and remove any suspicious accounts. 4. Review and restrict the mapping of the 'role' field in custom fields to prevent unauthenticated users from assigning themselves high-level roles. 5. Apply WordPress capability checks and filters to ensure only authorized users can assign administrator or super_admin roles. These steps help prevent exploitation of the privilege escalation vulnerability. [2, 4]