WordPress security changelog
MEDIUM CVE-2026-12904 Deferred

Kadence Blocks — Page Builder Toolkit for Gutenberg Editor: A security weakness

Kadence Blocks — Page Builder Toolkit for Gutenberg Editor is affected by a security weakness. Exploitation requires at least contributor-level access. The resulting impact depends on how the affected component exposes the vulnerable operation. The published affected range is <= 3.7.7.

CVE / CNA score 4.3 CVSS 3.1 · security@wordfence.com
NVD score Pending NVD has not published its own CVSS assessment.
Component
Kadence Blocks — Page Builder Toolkit for Gutenberg Editor
Plugin slug
kadence-blocks
Affected
<= 3.7.7
Safe version
> 3.7.7
Published
Jul 01, 2026
Weakness
CWE-639 — Authorization Bypass Through User-Controlled Key

This CVE was published Jul 01, 2026 and is one of 17 known issues for this plugin.

Update, patch or deactivate.

Update Kadence Blocks — Page Builder Toolkit for Gutenberg Editor to a release after 3.7.7, or disable and remove it until a fixed version is available.

A safe version is available, so updating to that version or later is the preferred remediation. If an immediate update is not practical, consider a targeted application patch or temporarily restricting the affected functionality.

Deactivate only when warranted by your risk profile, or when advised by your hosting provider in the limited circumstances where the vulnerability cannot otherwise be mitigated. If you’re unsure which action is appropriate, contact Fused or your hosting provider for guidance.

Technical description

The Kadence Blocks – Gutenberg Blocks for Page Builder Features plugin for WordPress is vulnerable to Insecure Direct Object Reference in versions up to and including 3.7.7. This is due to a mismatch between the object used for authorization and the object actually accessed in the Optimize_Rest_Controller's create_item(), get_item(), delete_item(), and bulk_delete_items() endpoints — authorization is checked via current_user_can('edit_post'/'delete_post', $post_id) against the user-supplied post_id, while the storage layer keys analysis records on sha256($post_path) from a separately supplied, attacker-controlled post_path parameter, with no enforcement that post_path corresponds to post_id. This makes it possible for authenticated attackers, with Contributor-level access and above, to read or delete optimizer analysis records belonging to posts owned by other users by submitting their own post_id (which passes the capability check) together with the victim post's path.

CVE / CNA vector: CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:L/A:N

Primary and upstream sources