Sceawere

Vulnerability Detail

CVE-2026-13424UPDATED Verified Sceawere Triage Sources: NVD / CISA KEV

Bookly Stored Cross-Site Scripting Vulnerability

Vulnerability Metadata

Severity
High
Score / CVSS
7.2
Creation Date
3h ago
Vendor
ladela
Product
Online Scheduling and Appointment Booking System – Bookly
Attack Type
CWE-79 Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting')
Vector String
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:L/I:L/A:N
Attack Complexity
LOW

Narrative and Response

Description

The Online Scheduling and Appointment Booking System – Bookly plugin for WordPress is vulnerable to Stored Cross-Site Scripting via bookly_speed_up_update_addons AJAX action in all versions up to, and including, 27.7 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 injection point is the bookly_speed_up_update_addons AJAX action, which is registered as wp_ajax_nopriv_* and therefore reachable without authentication; the payload is stored verbatim in the bookly_log.details column when a request is submitted without a valid signature, and executes when an administrator later views the Diagnostics → Logs page.

Executive Summary

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.

Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.

Executive Summary Locked

Sign up to unlock professional threat analysis, mitigations, and indicator signatures.

Technical Details

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.

Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.

Detailed Technical Analysis Locked

Sign up to unlock professional threat analysis, mitigations, and indicator signatures.

Mitigations

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.

Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.

Remediation & Mitigations Locked

Sign up to unlock professional threat analysis, mitigations, and indicator signatures.

References

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.

Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.

Intelligence References Locked

Sign up to unlock professional threat analysis, mitigations, and indicator signatures.

Additional Metadata

{
  "score": "7.2",
  "pubDate": "2026-08-16T07:16:30.300Z",
  "pubdate": "2026-08-16T07:16:30.300Z",
  "executiveSummary": "An unauthenticated Stored Cross-Site Scripting (XSS) vulnerability has been identified in the Online Scheduling and Appointment Booking System – Bookly plugin for WordPress, affecting all versions up to and including 27.7.\nThe vulnerability stems from insufficient input sanitization and output escaping within the AJAX action handler, allowing unauthenticated attackers to inject arbitrary web scripts into the application.\nThe injected payload is stored verbatim within the database schema under the bookly_log.details column when requests are processed without a valid cryptographic signature.\nExecution of the stored malicious payload occurs asynchronously when an administrative user accesses the Diagnostics and Logs administrative interface within the WordPress dashboard.\nSuccessful exploitation compromises the integrity and confidentiality of administrative sessions, potentially leading to unauthorized privilege escalation, administrative account takeover, or complete compromise of the underlying WordPress installation.\nThe primary risk implication involves remote code injection vectors directed at privileged users, bypassing standard perimeter security controls due to the unauthenticated accessibility of the target AJAX endpoint via the nopriv WordPress hook registration.",
  "technicalDetails": "The vulnerability resides in the AJAX action processing mechanism associated with the bookly_speed_up_update_addons action within the Bookly plugin for WordPress.\nThis specific AJAX action is registered using the WordPress wp_ajax_nopriv_* hook, making the endpoint publicly accessible over the network without requiring any form of authentication or session validation.\nThe root cause of the vulnerability is the lack of proper input sanitization and structural validation on incoming parameters processed by the endpoint, combined with the absence of context-aware output escaping when rendering administrative data.\nWhen an unauthenticated attacker transmits a malicious payload via the vulnerable AJAX action without supplying a valid signature, the application fails to reject the malformed input and instead stores the raw payload verbatim within the database inside the bookly_log.details column.\nThe attack flow proceeds in two distinct phases: payload injection and payload execution.\nDuring the injection phase, the unauthenticated attacker crafts an HTTP request targeting the exposed AJAX handler, embedding arbitrary JavaScript or HTML payloads into the request parameters.\nThe backend handler processes the request and logs the unescaped input directly to the database logging table.\nDuring the execution phase, a high-privileged user, such as a WordPress administrator, navigates to the Diagnostics -> Logs administrative page within the dashboard.\nThe plugin retrieves the log entries from the database and renders the contents of the bookly_log.details column directly into the Document Object Model (DOM) without applying proper HTML entity encoding or output escaping.\nAs a result, the browser executes the injected script within the context of the administrator's authenticated session.\nThe post-exploitation impact includes session hijacking, arbitrary administrative actions executed on behalf of the victim, and potential arbitrary code execution via secondary administrative functionalities."
}
CVE-2026-13424: Bookly Stored Cross-Site Scripting Vulnerability (HIGH Severity, CVSS: 7.2) - Sceawere