☠️
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-2024-2539

CVE-2024-2539 Cross-Site Scripting in Livemesh
📅 PUBLISHED: 2024-04-10 05:32 UTC 🔄 UPDATED: 2026-08-12 14:53 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.17%
👁️
0.17% probability
4.2× 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-2024-2539 is a Stored Cross-Site Scripting (XSS) vulnerability in the Elementor Addons by Livemesh WordPress plugin, affecting all versions up to and including 8.3.6. The flaw resides in insufficient input sanitization and output escaping on user-supplied _id attributes within widget shortcodes. An authenticated attacker with contributor-level access or higher can inject arbitrary web scripts that execute when any user visits the compromised page. With a CVSS score of 6.4 (Medium), this vulnerability poses a significant risk to WordPress sites using the plugin, enabling session hijacking, defacement, or redirection to malicious sites.

⚡ 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 official WordPress plugin repository. No NPM, PyPI, Go, or Ruby packages are involved. The plugin is installed directly through the WordPress admin dashboard or via manual upload, making the supply chain risk limited to the plugin’s update mechanism and the integrity of the WordPress repository.

CVSS Breakdown & Threat Level

  • Attack Vector (AV): Network (N) – Exploitable remotely.
  • Attack Complexity (AC): Low (L) – No special conditions required.
  • Privileges Required (PR): Low (L) – Requires contributor-level access.
  • User Interaction (UI): None (N) – No user action needed for execution.
  • Scope (S): Changed (C) – Impact extends beyond the vulnerable component.
  • Confidentiality (C): Low (L) – Limited data exposure.
  • Integrity (I): Low (L) – Limited ability to modify content.
  • Availability (A): None (N) – No impact on availability.

Threat Level: Medium. The requirement for authenticated access reduces the attack surface, but the potential for stored XSS in a widely-used plugin makes it a priority for patching.

Deep Dive & Mechanics

The vulnerability exists in the _id attribute of various widgets provided by the Elementor Addons by Livemesh plugin. When a user with contributor-level privileges creates or edits a page using the Elementor builder, they can supply a malicious payload in the _id field of a widget. The plugin fails to properly sanitize this input and escape it when rendering the page, allowing the injection of arbitrary JavaScript.

The attack flow:

  1. An authenticated contributor creates a new page or edits an existing one.
  2. In the Elementor editor, they add a Livemesh widget (e.g., a heading, portfolio, or testimonial).
  3. They modify the widget’s _id attribute to include a JavaScript payload, such as "><script>alert('XSS')</script>.
  4. The plugin stores the payload in the database without proper sanitization.
  5. When any user (including administrators) visits the page, the payload executes in their browser.

The root cause is the lack of input validation and output escaping on the _id attribute, which is directly echoed into the HTML without being filtered.

Vulnerable vs. Patched Code

Vulnerable Code (version <= 8.3.6):

// In a widget's render method
$id = $settings['_id'];
echo '<div id="' . $id . '">'; // No sanitization or escaping

Patched Code (hypothetical fix):

// Properly escape the attribute
$id = esc_attr($settings['_id']);
echo '<div id="' . $id . '">';

The fix involves using WordPress’s esc_attr() function to escape the _id value before output, preventing XSS.

Exploitation & Lab Setup

Red Team (Exploitation)

Prerequisites:

  • A WordPress site with Elementor Addons by Livemesh version <= 8.3.6.
  • An account with contributor-level privileges or higher.

Steps:

  1. Log in to WordPress as a contributor.
  2. Navigate to Pages > Add New.
  3. Open the Elementor editor.
  4. Add a Livemesh widget (e.g., "Heading").
  5. In the widget settings, locate the _id field (may be hidden; use browser developer tools to find it).
  6. Inject a payload: "><img src=x onerror=alert('XSS')>
  7. Save and publish the page.
  8. When any user visits the page, the script executes.

Proof-of-Concept (PoC) Code:

// No public exploit code available; this is a conceptual PoC.
// The payload is injected via the Elementor editor's widget settings.

Blue Team (Detection & Response)

Detection:

  • Monitor for unusual _id attribute values in page content.
  • Look for JavaScript event handlers (e.g., onerror, onload) in widget attributes.
  • Use WAF rules to block common XSS patterns in POST requests to /wp-admin/admin-ajax.php.

Response:

  1. Immediately disable the plugin if no patch is available.
  2. Scan the database for malicious payloads using a security plugin (e.g., Wordfence).
  3. Remove any injected scripts from pages.
  4. Reset credentials for affected users.

Indicators of Compromise (IOCs)

  • File Hashes: N/A (no malicious files).
  • Network Indicators: Requests to /wp-admin/admin-ajax.php with suspicious _id parameters.
  • Database Indicators: Rows in wp_postmeta containing JavaScript payloads in _id meta keys.
  • Log Entries: WordPress debug logs showing unescaped output in widget rendering.

Detection Engineering

YARA Rule

rule CVE_2024_2539_XSS {
    meta:
        description = "Detects stored XSS payloads in Livemesh Elementor Addons _id attribute"
        author = "Valters IT"
        date = "2024-01-01"
        reference = "CVE-2024-2539"
    strings:
        $xss1 = /_id["']?\s*[:=]\s*["'][^"']*<script/i
        $xss2 = /_id["']?\s*[:=]\s*["'][^"']*onerror/i
        $xss3 = /_id["']?\s*[:=]\s*["'][^"']*onload/i
    condition:
        any of them
}

Sigma Rule

title: CVE-2024-2539 Stored XSS in Livemesh Elementor Addons
id: 12345678-1234-1234-1234-123456789abc
status: experimental
description: Detects stored XSS payloads in the _id attribute of Livemesh widgets
author: Valters IT
date: 2024/01/01
logsource:
    category: webserver
    product: wordpress
detection:
    selection:
        http.method: POST
        http.url: '/wp-admin/admin-ajax.php'
        http.body|contains: '_id'
    keywords:
        - '<script'
        - 'onerror'
        - 'onload'
    condition: selection and keywords
falsepositives:
    - Legitimate use of JavaScript in widget attributes (unlikely)
level: high

Suricata Rule

alert http $HOME_NET any -> $EXTERNAL_NET any (msg:"CVE-2024-2539 Stored XSS in Livemesh Elementor Addons"; flow:to_server,established; content:"POST"; http_method; content:"/wp-admin/admin-ajax.php"; http_uri; content:"_id"; http_client_body; pcre:"/_id["']?\s*[:=]\s*["'][^"']*(<script|onerror|onload)/i"; sid:1000001; rev:1;)

Remediation & Mitigation

Immediate Actions:

  1. Disable the plugin until a patch is released.
  2. Use a Web Application Firewall (WAF) to block XSS payloads in _id attributes.
  3. Restrict contributor-level access to trusted users only.

Long-Term Fix:

  • Apply the official patch from Livemesh when available (currently UNKNOWN).
  • Implement input validation and output escaping for all user-supplied attributes in custom code.

Workaround:

  • Manually edit the plugin files to add esc_attr() around $settings['_id'] in all widget render methods.

Valters IT
Securing Digital Frontiers

👁️ 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.html:"livemesh-elementor-addons"
http.html:"elementor-addons" "livemesh"

💣 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-2024-2539/ · 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.