CVE Catalog

CVE-2026-104748

CriticalCVSS 9.8
Published: Translated: NVD NIST

Summary

The SimpleForm – Form Maker to Chat Apps with Quiz, Poll and Multi Lead Notifications plugin for WordPress is vulnerable to Privilege Escalation in all versions up to, and including, 3.10.0. The `wp_ajax_nopriv_simpleform_wp_register` AJAX action lacks any capability check for role assignment and the `save_custom_fields_to_user_meta()` function uses an exclusion list that omits `wp_capabilities`, combined with `get_form_settings()` returning hard-coded defaults that unconditionally enable meta writing. This allows unauthenticated attackers to create an Administrator-level WordPress account by supplying `wp_capabilities[administrator]=1`; the required nonce is publicly emitted into the `front_end_data` JavaScript object on every front-end page.

Risk Assessment

An unauthenticated attacker can create an Administrator-level WordPress account, taking full control of the site. This leads to complete site takeover, malicious code installation and data theft.

Recommendation

Immediately update the SimpleForm plugin to a version later than 3.10.0 or disable it if no fix is available. Also check whether unauthorised administrator accounts have been created.

Related vulnerabilities

Original NVD description (English source)

The SimpleForm – Form Maker to Chat Apps with Quiz, Poll and Multi Lead Notifications plugin for WordPress is vulnerable to Privilege Escalation in all versions up to, and including, 3.10.0 This is due to the `wp_ajax_nopriv_simpleform_wp_register` AJAX action lacking any capability check for role assignment and the `save_custom_fields_to_user_meta()` function using an exclusion list that omits `wp_capabilities`, combined with `get_form_settings()` returning a hard-coded defaults array that unconditionally enables meta writing regardless of the supplied `form_id`. This makes it possible for unauthenticated attackers to create a new Administrator-level WordPress account by supplying `wp_capabilities[administrator]=1` alongside standard registration fields. The nonce required by the endpoint is publicly emitted into the `front_end_data` JavaScript object on every front-end page via `wp_enqueue_scripts`, making it trivially obtainable by any unauthenticated visitor before submitting the malicious request.

Vulnerability data from NVD (NIST) · CISA KEV · EPSS