Avada (Fusion) Builder: Code execution
Avada Builder permits unauthenticated PHP function injection through fusion_get_widget_markup: attacker-controlled base64-decoded JSON reaches call_user_func() in the wp_conditional_tags branch of Fusion_Builder_Conditional_Render_Helper::get_value() without an allowlist. Exploitation requires fusion_load_nonce, exposed for user ID 0 by a public page containing Post Cards or Table of Contents, and can execute arbitrary code on the server. Published affected versions: <= 3.15.2.
- Component
- Avada (Fusion) Builder
- Plugin slug
fusion-builder- Affected
- <= 3.15.2
- Safe version
- See mitigation notes
- Published
- May 21, 2026
This CVE was published May 21, 2026 and is one of 15 known issues for this plugin.
Update, patch or deactivate.
Update the Avada bundle to 7.15.3 or later and install its corresponding bundled Builder update. The official author notes confirm a matching fix at the bundle level; this archive has not established the corresponding Builder 3.x version, so no 7.x value is listed as a Builder safe version. Review the site for unauthorized code or account changes. Official release notes: https://classic.avada.com/wp-content/uploads/2023/03/changelog.txt.
No confirmed safe version is listed. Consider a vendor-supported patch or temporarily restricting the affected functionality while you assess the risk.
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 Avada Builder (fusion-builder) plugin for WordPress is vulnerable to Unauthenticated Remote Code Execution via PHP Function Injection in versions up to and including 3.15.2. This is due to the `wp_conditional_tags` case in `Fusion_Builder_Conditional_Render_Helper::get_value()` passing attacker-controlled values from a base64-decoded JSON blob directly to `call_user_func()` without any allowlist validation. This is exploitable by unauthenticated attackers through the `fusion_get_widget_markup` AJAX endpoint, which is registered for non-privileged (unauthenticated) users via `wp_ajax_nopriv_fusion_get_widget_markup`. The endpoint is protected only by a nonce (`fusion_load_nonce`), but this nonce is generated for user ID 0 and is deterministically exposed in the JavaScript output of any public-facing page containing a Post Cards (`[fusion_post_cards]`) or Table of Contents (`[fusion_table_of_contents]`) element. This makes it possible for unauthenticated attackers to execute arbitrary code on affected sites.
CVE / CNA vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
Primary and upstream sources
- NVD record for CVE-2026-6279
- Upstream reference avada.com
- WordPress upstream reference plugins.trac.wordpress.org
- WordPress upstream reference plugins.trac.wordpress.org
- WordPress upstream reference plugins.trac.wordpress.org
- WordPress upstream reference plugins.trac.wordpress.org
- WordPress upstream reference plugins.trac.wordpress.org
- WordPress upstream reference plugins.trac.wordpress.org
- WordPress upstream reference plugins.trac.wordpress.org
- WordPress upstream reference plugins.trac.wordpress.org
- WordPress upstream reference plugins.trac.wordpress.org
- WordPress upstream reference plugins.trac.wordpress.org
- Wordfence advisory wordfence.com