---
id: CVE-2026-107622
title: >-
  BuddyForms <= 2.10.5 - Unauthenticated Privilege Escalation to Form-Type
  Confusion via 'bf_post_type' Parameter
summary: >-
  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 h…
severity: critical
cvss: 9.8
cvssVector: 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H'
cvssSource: cna
cwe:
  - CWE-269
vendor: themekraft
product: BuddyForms
affected:
  - BuddyForms <= 2.10.5
ssvc:
  exploitation: none
  automatable: 'yes'
  technicalImpact: total
  timestamp: '2026-11-06T15:11:19.906236Z'
published: '2026-11-06'
updated: '2026-11-06'
sourceUpdated: '2026-11-06T15:15:35.287Z'
source: CVEORG
sourceUrl: 'https://www.cve.org/CVERecord?id=CVE-2026-107622'
references:
  - url: >-
      https://www.wordfence.com/threat-intel/vulnerabilities/id/2e83e654-f8a6-44a6-a687-92606331309e?source=cve
  - url: >-
      https://plugins.trac.wordpress.org/browser/buddyforms/tags/2.10.2/includes/form/form.php#L476
  - url: >-
      https://plugins.trac.wordpress.org/browser/buddyforms/tags/2.10.2/includes/admin/register-post-types.php#L216
  - url: >-
      https://plugins.trac.wordpress.org/browser/buddyforms/tags/2.10.2/includes/form/form-control.php#L258
  - url: >-
      https://plugins.trac.wordpress.org/browser/buddyforms/tags/2.10.2/includes/form/form-control.php#L642
  - url: >-
      https://plugins.trac.wordpress.org/browser/buddyforms/tags/2.10.2/includes/wp-insert-user.php#L241
  - url: >-
      https://plugins.trac.wordpress.org/browser/buddyforms/tags/2.10.2/includes/wp-insert-user.php#L702
  - url: 'https://github.com/Themekraft/buddyforms/pull/779/files'
  - url: >-
      https://plugins.trac.wordpress.org/changeset/3780268/buddyforms/trunk/includes/admin/register-post-types.php
tags:
  - cve.org
ingestedAt: '2026-11-06T11:50:33.396Z'
epss: 0.00736
epssPercentile: 0.54703
---

## Overview

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.

## Affected

- `BuddyForms <= 2.10.5`

## Remediation

Refer to the linked advisories for vendor-supplied fixes and affected version ranges.
