CVE-2026-107622 · Package
NO FIX YET · SEE WHAT TO DO
The BuddyForms plugin for WordPress lets logged-out visitors insert a rogue form configuration through a public submission, then register a new account with a chosen role. An attacker who does this gets an administrator account and full control of the WordPress site.
first public Nov 6, 2026 · 1 source
Check it with your coding agent
It checks your repository and tells you if you’re affected, with the fix.
Sites running BuddyForms 2.10.5 or earlier where 'Anyone can register' is enabled and at least one public BuddyForms form sits on a page. Sites with registration closed, or with no public BuddyForms form, are not exposed through this path. Hosts that run WordPress without this plugin can skip it.
Not affected if no-public-buddyforms-form, plugin-not-installed, registration-closed
Who cares buddyforms, self-hosted, wordpress
2.10.5 or earlier in the WordPress plugins screen or the plugin's main file header2.10.5 but name no fixed version)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.
Are you affected?
Tell InfraStack what you run. It checks this one, and every next one, against your stack.
Ask from here. InfraStack checks the affected versions against your stack and answers in your inbox.
InfraStack checks the affected versions against your stack and answers in Slack, with the evidence and the fix.
This page as .md · .json · CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
NVD data is provided by NIST and is public domain. Posts quoted belong to their authors.