CVE-2026-6228: Frontend Admin by DynamiApps <= 3.28.36 - Unauthenticated Privilege Escalation via Edit User Form
The Frontend Admin by DynamiApps plugin for WordPress is vulnerable to Privilege Escalation in versions up to and including 3.28.36. This is due to insufficient authorization checks in the role field update mechanism combined with overly permissive capabilities for the adminform post type. The adminform custom post type uses 'capabilitytype' => 'page', which grants editors the ability to create and edit forms. When an editor creates an edituser form, they can manipulate the form configuration to include 'administrator' in the roleoptions array by directly submitting POST data to wp-admin/post.php, bypassing the UI restrictions in feadmingetuserroles(). When the form is subsequently submitted, the preupdatevalue() function in class-role.php only validates that the submitted role exists in the form's roleoptions array (lines 107-110), but fails to verify that the current user has permission to assign that specific role. This makes it possible for unauthenticated attackers to first register as editors (via a public newuser form), then create an edituser form with administrator in the allowed roles, and finally use that form to escalate their own privileges to administrator.
Affected Software
Remediation
Recommended actions to resolve this vulnerability, in priority order.
- Upgrade
Upgrade
WordPress plugin: Frontend Admin by DynamiAppsto a version that resolves this vulnerability.Fixed in 3.28.36 - Configuration
Update the admin_form custom post type so its capability_type is no longer overly permissive (currently set to 'page' which grants editors the ability to create and edit forms).
Frontend Admin by DynamiApps (WordPress) admin_form custom post type capability_type = 'page' (overly permissive) - Configuration
In class-role.php (pre_update_value), add authorization checks so assigning a submitted role requires that the current user has permission to assign that specific role; do not rely only on validation that the role exists in the form's role_options array.
Frontend Admin by DynamiApps (class-role.php pre_update_value) role assignment authorization checks = Currently only checks submitted role exists in role_options array
Event History
Frequently Asked Questions
What is the severity of CVE-2026-6228?
CVE-2026-6228 has been classified as a critical vulnerability due to its potential for unauthenticated privilege escalation.
How do I fix CVE-2026-6228?
To remediate CVE-2026-6228, update the Frontend Admin by DynamiApps plugin to version 3.28.37 or later.
Who is affected by CVE-2026-6228?
Users of Frontend Admin by DynamiApps plugin for WordPress versions up to and including 3.28.36 are affected by CVE-2026-6228.
What is the impact of CVE-2026-6228?
The impact of CVE-2026-6228 can allow attackers to escalate their privileges on the WordPress site without authentication.
How was CVE-2026-6228 discovered?
CVE-2026-6228 was discovered due to insufficient authorization checks in the role field within the plugin.