Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessObtain target customer's primary identifier
-
ExploitSend crafted unauthenticated update request
-
ExecutionBypass missing identity verification
-
ImpactOverwrite stored name/email/address
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V8 - Authorization Object-level authorization, IDOR prevention
|
| Exploitation Conditions | Requires a running Bookly plugin instance at a version before 28.3, and the attacker must already possess a valid customer's primary identifier (the value used to look up the customer record) - the exploit targets a specific known customer rather than working blindly. No authentication and no user interaction are needed (PR:N/UI:N), and it works against default configurations. The identifier requirement is the primary limiting factor, restricting this to targeted rather than mass, automated exploitation. |
| Impact | This is a genuine but moderate-severity issue, not a top-tier priority. The CVSS 3.1 vector (AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N = 5.3) reflects an unauthenticated network-reachable integrity-only flaw: no confidentiality or availability impact, only low integrity (I:L) from overwriting stored customer records. A public exploit exists (WPScan), which raises practical risk, but there is no EPSS score and no CISA KEV listing in the provided data, so there is no evidence of active or widespread exploitation. A critical limiting factor NOT captured in AC:L is that the attacker must already KNOW the target customer's primary identifier - this makes the attack per-target rather than identifier-blind mass exploitation, meaningfully lowering real-world scalability. Note also that the input Tag 'Information Disclosure' conflicts with the actual impact: this is data tampering/overwrite (I:L, C:N), not disclosure - treat the tag as mislabeled. |
| Exploit ScenarioDerived | An attacker who has obtained a Bookly customer's primary identifier (e.g., from a prior booking, leaked list, or social engineering) sends an unauthenticated request to the plugin's customer-update endpoint. Because the plugin does not verify the requester's identity before writing, the attacker overwrites that customer's stored name, email, and address - potentially redirecting booking notifications. Public exploit details are available via WPScan, lowering the skill barrier. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Sep 25, 2026
Unauthenticated customer record tampering in the Bookly WordPress plugin before 28.3 lets remote attackers overwrite a known customer's stored personal details - name, email and address - because the plugin fails to verify the requester's identity before processing a customer-details update. Exploitation is trivial and needs no login or user interaction (CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N, 5.3), but it is not blind: the attacker must already hold a valid customer's primary identifier, which confines practical abuse to targeted modification of a specific known record rather than mass, automated takeover of the whole customer base. Publicly available exploit code exists and WPScan has published a proof-of-concept advisory, though there is no indication of confirmed active exploitation; integrity impact is limited (I:L) with no confidentiality or availability loss, and this is a genuine but moderate-severity issue rather than a top-tier priority.
RemediationAI
Upgrade the Bookly plugin to version 28.3 or later (vendor-released patch: 28.3) as the primary and only complete fix, and verify the installed version after updating since WordPress sites frequently pin stale plugin copies. If immediate upgrade is not possible, the effective compensating control is to remove the unauthenticated attack surface: temporarily deactivate Bookly if booking functionality is not business-critical, accepting the obvious loss of online scheduling and customer self-service; alternatively place a WAF or reverse-proxy rule in front of the plugin's customer-details update endpoint that rejects unauthenticated POST requests or requests lacking a valid WordPress session, understanding that legitimate guest-booking flows may break and must be regression-tested. Because the exploit requires knowledge of a valid customer primary identifier, reducing identifier exposure (avoiding sequential, guessable or publicly listed customer IDs in booking confirmations, emails and URLs) meaningfully raises the effort for an attacker but cannot be treated as a fix. Log and alert on unexpected changes to stored customer name, email or address fields to detect tampering, and review the WPScan advisory at https://wpscan.com/vulnerability/5bfed7cf-5bf3-4a3b-a2b6-9f9d48f52fd5/ for the published proof-of-concept details when tuning detection rules.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 1 package in euvd
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
Bookly is a widely deployed WordPress appointment-booking and scheduling plugin that stores customer records (name, email, address and other booking profile fields) in the site's MySQL database and exposes AJAX/REST endpoints for WordPress front-end and administrative interactions. The flaw is an identity-verification/authorization failure in the customer-details update path: the handler keys off a client-supplied customer primary identifier without confirming that the caller owns or is authorized for that record, a class of defect closely related to CWE-639 (Authorization Bypass Through User-Controlled Key) and CWE-862 (Missing Authorization), even though no formal CWE was assigned in the source data. Because WordPress AJAX entry points are reachable by unauthenticated visitors when registered without a capability check, no session or nonce tied to the victim is required. The CPE string cpe:2.3:a:unknown:bookly:*:*:*:*:*:*:*:*: carries an unresolved vendor token and a wildcard version, so exact affected builds must be inferred from the WPScan advisory rather than from CPE enumeration: every Bookly release below 28.3 is in scope. This is a data-integrity defect confined to stored customer profile fields - the plugin does not expose those fields back to the attacker, hence C:N and only a low integrity rating.
Know when Bookly gets its next vulnerability
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
Severity by source
AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N
Unauthenticated network write with no identity check (PR:N/AV:N/AC:L); impact limited to overwriting stored PII so I:L only, with C:N/A:N.
Primary rating from Vendor (WPScan).
CVSS VectorVendor: WPScan
Lifecycle Timeline
2DescriptionCVE.org
The Bookly WordPress plugin before 28.3 does not properly verify a customer's identity before updating their stored details, allowing unauthenticated attackers who know a customer's primary identifier to overwrite that customer's stored personal information such as name, email and address.
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Authentication bypass attacks exploit flaws in the verification mechanisms that control access to systems and applications.
The WordPress Online Booking and Scheduling Plugin WordPress plugin before 22.4 does not properly sanitise and escape a
Bookly #1 WordPress Booking Plugin Lite before 14.5 has XSS via a jQuery.ajax request to ng-payment_details_dialog.js. R
The WordPress Online Booking and Scheduling Plugin WordPress plugin before 20.3.1 does not escape the Staff Full Name fi
Unauthenticated attackers can zero out the price of paid appointments in the Bookly WordPress plugin before 28.3 by mani
SQL injection in the Bookly WordPress appointment-booking plugin (versions 27.7 and earlier) lets remote, unauthenticate
The WordPress Online Booking and Scheduling Plugin WordPress plugin before 22.5 does not sanitise and escape some of its
Unauthenticated remote attackers can modify or create data in WordPress sites running the Bookly appointment booking plu
Sensitive data exposure in the Bookly WordPress appointment booking plugin (versions 27.4 and earlier) allows remote una
A Reflected Cross-Site Scripting (XSS) vulnerability exists in Bookly, a WordPress appointment booking plugin, affecting
Reflected/stored Cross-Site Scripting in the Bookly WordPress appointment-booking plugin (versions 27.7 and earlier) let
Authenticated Subscriber-level users can modify other users' booking-related objects in the Bookly WordPress plugin thro
The Bookly plugin for WordPress is vulnerable to Stored Cross-Site Scripting via the full name value in versions up to,
EUVD-2026-86621
GHSA-qqvg-v89g-fp38
NVD
CVE.org
EPSS
Vulnrichment
Exploit-DB