Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessObtain or register Contributor-level WordPress account
-
DeliveryAuthenticate to wp-admin
-
ExploitSend GET request with cpabc_calendar_load2=1&id=[target_id]
-
ExecutionBypass ownership check via insufficient authorization
-
PersistEnumerate all calendar IDs
-
ImpactExtract customer PII records
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V14 - Data Protection Data exposure prevention
MITRE ATT&CK
2 techniques across 2 tactics: Collection, Discovery The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | Exploitation requires an authenticated WordPress session with at minimum the Contributor role, which grants the edit_posts capability. Contributor is a built-in WordPress role commonly assigned to guest bloggers, third-party content contributors, or clients on agency-managed sites - it is not a high-barrier requirement. The vulnerable endpoint is available in any wp-admin session (is_admin() context) and requires no special plugin configuration or non-default settings to be reachable; it is active by default whenever the plugin is installed and active. What limits exploitation: the attacker must hold a valid WordPress account with at least Contributor privileges on the target site - unauthenticated exploitation is not possible per CVSS PR:L. The exposed data is bounded to the Appointment Booking Calendar plugin's own booking tables and does not extend to WordPress core data, other plugins, or the filesystem. There is no code execution, privilege escalation, or integrity impact - the vulnerability is read-only. |
| Impact | The NVD-assigned CVSS 3.1 base score of 4.3 (Medium) with vector AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N accurately reflects the attack surface in isolation: remote exploitation is trivial once an attacker holds a Contributor account (PR:L), with no interaction or complexity required. However, the raw CVSS score understates the real-world PII risk in multi-tenant or agency-managed WordPress sites, where Contributor accounts are commonly provisioned to third-party writers or clients who should have no access to booking records. The Confidentiality impact is rated Low (C:L) because the exposed data is scoped to the plugin's booking store rather than the full database, but in practice the attacker can enumerate all calendar IDs and systematically drain every customer record in the installation - a behavior that approaches C:H in aggregate for sites with high booking volumes. No EPSS score is provided in the input data, so exploitation probability cannot be quantified numerically. The CVE is not in the CISA KEV catalog and no standalone proof-of-concept tool has been identified, reducing the likelihood of opportunistic mass exploitation. The primary realistic threat actor is a malicious or compromised low-privilege WordPress account holder. SSVC signals: exploitation is unconfirmed/theoretical, the attack is automatable once a Contributor credential is obtained, and technical impact is partial (PII disclosure, no code execution or integrity loss). |
| Exploit ScenarioDerived | An attacker who has registered or compromised a Contributor-level account on a targeted WordPress site authenticates to wp-admin and issues a series of HTTP GET requests to wp-admin with the query parameters cpabc_calendar_load2=1&id=N, incrementing N to enumerate all calendar IDs. For each valid calendar ID, the server returns a dataset containing customer names, email addresses, phone numbers, booking times, and comments belonging to that calendar's bookings. No source code or specialized tooling is required beyond a browser or curl, and the WordPress SVN source references provide sufficient detail for any motivated actor to construct the request manually. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Jun 18, 2026
Sensitive customer PII exposure in the Appointment Booking Calendar WordPress plugin (versions up to and including 1.4.01) allows any authenticated user with Contributor-level access to exfiltrate booking records from calendars they do not own. The root cause is an IDOR (Insecure Direct Object Reference) in the cpabc_appointments_calendar_load2() function: the function enforces only a broad role check (edit_posts capability) without verifying that the requesting user owns the calendar ID supplied via the id parameter. Exposed records include customer names, email addresses, phone numbers, booking times, and freeform comments, making this a meaningful PII breach risk on multi-author WordPress installations. No public exploit has been identified at time of analysis and this CVE is not listed in the CISA KEV catalog.
RemediationAI
The primary fix is to update the Appointment Booking Calendar plugin beyond version 1.4.01. WordPress SVN changeset 3570448 contains the upstream patch applied to trunk; however, the exact released plugin version incorporating this fix is not explicitly stated in the available data - site administrators should verify the current version in the WordPress Plugin Directory before upgrading and confirm it is newer than 1.4.01. The Wordfence advisory at https://www.wordfence.com/threat-intel/vulnerabilities/id/e1ecc237-87b0-4c4d-94cc-d3af9c6669c5 should be monitored for a confirmed patched version number. If immediate patching is not possible, the most effective compensating control is to audit and remove Contributor-level (and above) accounts that do not require access to wp-admin booking data, thereby eliminating the pool of potential attackers. A second interim control is to use a WordPress security plugin or WAF rule to block requests containing the cpabc_calendar_load2=1 query parameter from non-administrator roles; this carries the trade-off of breaking legitimate administrative calendar-loading functionality for lower-privileged admins. Disabling the plugin entirely eliminates the risk but also removes booking functionality. Network-layer restrictions on wp-admin access (e.g., IP allowlisting) reduce exposure but do not eliminate it if the attacker already has a valid Contributor credential on an allowlisted network.
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
The affected product is identified by CPE cpe:2.3:a:codepeople:appointment_booking_calendar:*:*:*:*:*:*:*:* (Codepeople's Appointment Booking Calendar plugin). The vulnerable code resides in inc/cpabc_apps_go.inc.php at the cpabc_appointments_calendar_load2() function, reachable by appending cpabc_calendar_load2=1 to any wp-admin URL. The authorization gate uses the WordPress API check is_admin() && current_user_can('edit_posts'), which grants passage to any user holding the Contributor role or higher - a deliberately low-privilege role in WordPress intended for draft content submission, not data administration. Because the function accepts a caller-supplied integer as the calendar id without confirming that the authenticated user is the owner or manager of that calendar, any Contributor can enumerate calendar IDs and retrieve full booking datasets for calendars belonging to other site users or administrators. The root cause class is CWE-200 (Exposure of Sensitive Information to an Unauthorized Actor), more precisely manifesting as a missing ownership/authorization check on object access - a pattern also described as IDOR. WordPress SVN references (trunk and tags/1.3.99 at L1018, L1019, L945, and cpabc_appointments.php L142) confirm the affected code paths, and changeset 3570448 represents the upstream fix commit.
Know when Appointment Booking Calendar 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:L/UI:N/S:U/C:L/I:N/A:N
Network-reachable wp-admin endpoint requires only Contributor-level authentication (PR:L); no complexity or interaction; confidentiality limited to plugin booking data (C:L), no integrity or availability impact.
Primary rating from Vendor (Wordfence).
CVSS VectorVendor: Wordfence
DescriptionCVE.org
The Appointment Booking Calendar plugin for WordPress is vulnerable to Sensitive Information Exposure in versions up to, and including, 1.4.01. This is due to insufficient authorization and missing per-calendar ownership checks in the cpabc_appointments_calendar_load2() function, which is reachable via the cpabc_calendar_load2=1 query parameter in wp-admin and only checks is_admin() && current_user_can('edit_posts'), a capability available to Contributor-level users and above. This makes it possible for authenticated attackers with Contributor-level access and above to supply an arbitrary calendar ID via the id parameter and extract customer booking information, including email addresses, names, phone numbers, booking times, and comments, from any calendar managed by the plugin.
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
Information disclosure occurs when an application unintentionally exposes sensitive data that aids attackers in reconnaissance or directly compromises security.
More in Appointment Booking Calendar
View allThe Appointment Booking Calendar WordPress plugin before 1.3.83 does not have CSRF checks in some places, which could al
The Appointment Booking Calendar plugin before 1.3.35 for WordPress allows user input (in fields such as Description or
The Appointment Booking Calendar plugin 1.3.18 for WordPress allows XSS via the wp-admin/admin-post.php editionarea para
Missing Authorization vulnerability in Appointment Booking Calendar plugin <= 1.3.69 on WordPress. Rated high severity (
Stored XSS exists in the Appointment Booking Calendar plugin before 1.3.35 for WordPress. Rated medium severity (CVSS 4.
Cross-Site Request Forgery (CSRF) vulnerability in codepeople Appointment Booking Calendar allows SQL Injection.3.92. Ra
SQL injection vulnerability in cpabc_appointments_admin_int_calendar_list.inc.php in the Appointment Booking Calendar pl
Stored cross-site scripting in the Appointment Booking Calendar WordPress plugin through version 1.4.05 allows authentic
The Appointment Booking Calendar - Simply Schedule Appointments Booking Plugin plugin for WordPress is vulnerable to Ref
Missing Authorization vulnerability in codepeople Appointment Booking Calendar allows Accessing Functionality Not Proper
Sensitive PII exposure in the Appointment Booking Calendar WordPress plugin (versions up to and including 1.4.02) allows
Multiple cross-site scripting (XSS) vulnerabilities in cpabc_appointments_admin_int_bookings_list.inc.php in the Appoint
EUVD-2026-37864
GHSA-w9f2-px6f-gvmg
NVD
CVE.org
EPSS
Vulnrichment
VulDB
Exploit-DB