Privilege escalation in BuddyForms lets anonymous users gain admin
Key facts
- Attack vector
- Network
- Privileges required
- None
- User interaction
- None
- Attack complexity
- Low
- Impact type
- Privilege escalation
- Confidentiality · integrity · availability
- High · High · High
- Fix status
- No fix listed
Attack profile from CVSS 3.1 · CNA. Fix status from CNA. Impact type from CWE-269.
Summary
The BuddyForms plugin for WordPress is affected in versions up to and including 2.10.5. Improper privilege management lets logged-out users insert a rogue form configuration through the public form submission flow and then register an account with administrator privileges (CWE-269). An unauthenticated remote attacker can take over the full site when the site allows anyone to register and at least one public BuddyForms form is attached to a page.
Written with Claude Haiku 5.5 from the sources below · 2026-11-06
Description from the CNA
The BuddyForms plugin for WordPress is vulnerable to Privilege Escalation in all versions up to, and including, 2.10.5 via a form-type confusion attack through the `bf_post_type` parameter. This is due to the public frontend submission handler `buddyforms_form_response_no_ajax()` authorizing logged-out submissions based solely on the target form's `public_submit` flag while independently trusting the attacker-supplied `$_POST['bf_post_type']` to determine the post type of the newly created object — a cross-check introduced in 2.10.2 applies only to existing posts (`post_id != 0`) and is completely bypassed for new-object creation — combined with the `save_post` listener `buddyforms_edit_form_save_meta_box_data()` lacking both a `current_user_can()` capability check and a form-builder nonce, causing it to unconditionally persist attacker-supplied `$_POST['buddyforms_options']` for any newly inserted `buddyforms` CPT post. This makes it possible for unauthenticated attackers to insert a rogue BuddyForms form configuration with an attacker-controlled `new_user_role` value into the live global form registry, then submit a registration through that form to create a new WordPress account with administrator-level privileges and achieve full site takeover. Exploitation requires the WordPress site to have "Anyone can register" enabled and at least one public BuddyForms form attached to a page, both of which are standard BuddyForms deployment configurations.
Why it matters now
SSVC decision points
CISA ADP · SSVC 2.0.3
- Exploitation
- None
- Automatable
- Yes
- Technical impact
- Total
The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.
Affected products
| Vendor | Product | Affected versions | Fixed in | Status | Source |
|---|---|---|---|---|---|
| themekraft | BuddyForms | up to 2.10.5 | — | No fix listed | CNA |
- BuddyForms Vendorthemekraft Affected up to 2.10.5 Fixed in — No fix listed CNA
CPE names Threatist (inferred) · 1
Inferred from how NVD named this product before; not given by a source.
| CPE | Versions | Role | Vendor |
|---|---|---|---|
| cpe:2.3:a:themekraft:buddyforms:*:*:*:*:*:*:*:* | — | — | themekraft |
- cpe:2.3:a:themekraft:buddyforms:*:*:*:*:*:*:*:* Versions — — ·themekraft
Remediation
The sources list no fixed version for BuddyForms.
Written with Claude Haiku 5.5 from the sources below · 2026-11-06
Timeline
- 2026-11-06 Threatist record created from CVE-2026-107622
- 2026-11-06 Alias added: GHSA-7gvp-gcxq-58g5
- 2026-11-06 CISA SSVC decision points changed
References
Other 9
- https://www.wordfence.com/threat-intel/vulnerabilities/id/2e83e654-f8a6-44a6-a687-92606331309e?source=cve
- https://plugins.trac.wordpress.org/browser/buddyforms/tags/2.10.2/includes/form/form.php#L476
- https://plugins.trac.wordpress.org/browser/buddyforms/tags/2.10.2/includes/admin/register-post-types.php#L216
- https://plugins.trac.wordpress.org/browser/buddyforms/tags/2.10.2/includes/form/form-control.php#L258
- https://plugins.trac.wordpress.org/browser/buddyforms/tags/2.10.2/includes/form/form-control.php#L642
- https://plugins.trac.wordpress.org/browser/buddyforms/tags/2.10.2/includes/wp-insert-user.php#L241
- https://plugins.trac.wordpress.org/browser/buddyforms/tags/2.10.2/includes/wp-insert-user.php#L702
- https://github.com/Themekraft/buddyforms/pull/779/files
- https://plugins.trac.wordpress.org/changeset/3780268/buddyforms/trunk/includes/admin/register-post-types.php
More themekraft vulnerabilities
- TI-2023-11479 Deserialization of untrusted data in BuddyForms WordPress Plugin CVSS 3.1CRITICAL 9.8
- TI-2018-14965 The buddyforms plugin before 2.2.8 for WordPress has SQL injection. CVSS 3.0CRITICAL 9.8
- TI-2025-23249 WordPress BuddyForms plugin <= 2.10.2 - Local File Inclusion vulnerability CVSS 3.1HIGH 8.8
- TI-2024-01885 Deserialization of untrusted data in themekraft BuddyPress WooCommerce My Account… CVSS 3.1HIGH 8.8
- TI-2024-21490 WordPress WooBuddy plugin <= 3.4.20 - PHP Object Injection vulnerability CVSS 3.1HIGH 8.8
- TI-2024-07644 Improper privilege management in themekraft Post Form – Registration Form – Profile Form… CVSS 3.1HIGH 8.8
Sources
- CVE-2026-107622 · CVE Program
- CVE-2026-107622 · NVD
- FIRST EPSS
- GHSA-7gvp-gcxq-58g5 · GitHub Advisory Database · CC BY 4.0
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences