ZeroHour

CVE-2026-15984

niche

Unauthenticated Stored XSS in QuickCal WordPress Booking Plugin

CVSS 3.1
7.2 high
EPSS
<1%p9
Published
()
Modified
AI analysis

QuickCal, a WordPress booking-calendar plugin, fails to adequately sanitize and escape custom field parameters submitted to its unauthenticated booked_add_appt AJAX action, allowing attackers to persist arbitrary web scripts in pages (Stored XSS, CWE-79). Although the action is nominally protected by a nonce, that nonce is publicly embedded in the HTML of any page rendering the booking calendar shortcode, so an unauthenticated attacker can trivially retrieve it and forge malicious booking submissions without any account or privileges. Injected scripts execute in the browser of any user who views an affected page, enabling actions in the site's context such as session hijacking, redirects, or malicious content injection. Any WordPress site running QuickCal version 1.0.20 or earlier is affected. No public proof-of-concept is known, the flaw is not in CISA KEV, EPSS is low at 0.2%, and exploitation has not been observed in the wild.

What to do: Update QuickCal to a version newer than 1.0.20 as soon as a patched release is available (no fixed version number is specified in the available data, so verify the vendor's changelog). As interim mitigation, deactivate the plugin or remove the booking calendar shortcode from exposed pages, and audit stored appointment/custom field data for injected scripts or unexpected HTML. Note that while nonce protection is bypassed by design, keeping the plugin updated is the only durable fix.

Affected
QuickCal plugin for WordPressall versions up to and including 1.0.20
Estimated exposure
nicheon the order of hundreds to low thousands of sites at most, and only those pages that render the QuickCal booking calendar shortcode are exploitable — No active-install count or market-share data was provided for QuickCal, so the estimate assumes the limited deployments typical of a niche WordPress booking plugin, further reduced by the requirement that a page embeds the calendar…

Order-of-magnitude estimate by the model from install counts, market share and public scan data it knows; verify before quoting.

Description

The QuickCal plugin for WordPress is vulnerable to Stored Cross-Site Scripting via Custom Field Parameters in all versions up to, and including, 1.0.20 due to insufficient input sanitization and output escaping. This makes it possible for unauthenticated attackers to inject arbitrary web scripts in pages that will execute whenever a user accesses an injected page. The nonce guarding the unauthenticated booked_add_appt AJAX action is publicly embedded on any page rendering the booking calendar shortcode, making it trivially obtainable by unauthenticated attackers without any prior account or privilege.

Ecosystems
WordPress
Weakness
CWE-79
Vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:L/I:L/A:N

In the news

No ingested article mentions this CVE yet.