Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessRegister or compromise contributor account
-
DeliveryInject XSS payload into appointment booking field
-
ExploitBooking stored in WordPress database
-
ExecutionAdmin reviews appointments in dashboard
-
PersistMalicious script executes in admin browser
-
ImpactSteal admin session cookie or trigger privileged action
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A05:2025 - Injection
ASVS 5.0
V1 - Encoding and Sanitization Output encoding, context-aware escaping
MITRE ATT&CK
2 techniques across 2 tactics: Initial Access, Execution 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 - this is a non-default condition on sites with closed registration, but common on sites that allow open registration or have multiple content authors. The attacker must be able to submit or create a booking entry through the plugin's interface. Victim interaction is required: a higher-privileged user (editor or administrator) must view or process the malicious booking entry in their browser session. Limiting factors include: (1) the need for a contributor-level WordPress account, which is gated by site registration policy; (2) the requirement for a privileged user to actively view the poisoned content; (3) sites with only administrator users and no contributors are not exploitable via this path. |
| Impact | The NVD CVSS score of 6.5 (Medium) is appropriate given the exploitation prerequisites. The PR:L metric confirms exploitation requires at minimum a Contributor-level WordPress account, which significantly limits opportunistic attack surface compared to unauthenticated XSS. The UI:R metric further reduces real-world risk by requiring a privileged user to interact with attacker-controlled content before the payload fires. However, the S:C (scope change) metric elevates this beyond a self-XSS: a successful payload executing in an administrator's browser can lead to session hijacking, unauthorized plugin/settings changes, or web shell installation via WordPress admin actions - making the effective blast radius higher than C:L/I:L/A:L suggests at the base CVSS level. No EPSS data was provided in the intelligence package, so exploitation probability cannot be quantified. The absence of KEV listing and public POC indicates this has not been weaponized at scale, but the low attack complexity once contributor access is obtained keeps it a real lateral-escalation concern on multi-author WordPress sites. |
| Exploit ScenarioDerived | An attacker who has obtained or registered a Contributor account on a target WordPress site injects a malicious JavaScript payload (e.g., a cookie-stealing script or admin action trigger) into an appointment booking field that is stored and later rendered in the WordPress admin dashboard. When an administrator reviews or manages the booking, the script executes in their browser session, potentially exfiltrating the admin's session cookie or silently creating a new administrator account for persistent access. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Jul 23, 2026
Stored Cross-Site Scripting in the Appointment Hour Booking WordPress plugin (versions <= 1.5.86) allows authenticated contributors to inject and persist malicious JavaScript payloads that execute in the browsers of higher-privileged users, such as site administrators, who view the affected content. The CVSS vector (PR:L/UI:R/S:C) confirms this is a contributor-tier stored XSS with scope change, meaning the impact propagates beyond the attacker's own session into the administrative context. No active exploitation has been confirmed via CISA KEV, and no public exploit code has been identified at time of analysis.
RemediationAI
The primary remediation is to update the Appointment Hour Booking plugin beyond version 1.5.86; however, no specific patched release version was confirmed in the available intelligence - consult the Patchstack advisory at https://patchstack.com/database/wordpress/plugin/appointment-hour-booking/vulnerability/wordpress-appointment-hour-booking-plugin-1-5-86-cross-site-scripting-xss-vulnerability and the WordPress plugin repository for the latest available version. As a compensating control on sites where immediate upgrade is not possible, restrict the Contributor role to trusted users only, as this attack requires an authenticated contributor account - removing untrusted contributors eliminates the attack vector. Additionally, a Web Application Firewall (WAF) with WordPress-aware XSS rules, such as Patchstack's virtual patching or Wordfence, can block exploit attempts without a code-level fix, though WAF bypass is possible and should not be considered a permanent substitute for patching.
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 the Appointment Hour Booking plugin by Codepeople for WordPress, identified by CPE cpe:2.3:a:codepeople:appointment_hour_booking:*:*:*:*:*:*:*:*. CWE-79 (Improper Neutralization of Input During Web Page Generation) indicates the plugin fails to adequately sanitize or encode user-supplied input before rendering it in HTML output. In the WordPress role model, the 'Contributor' role can create and submit content but cannot publish - this is the minimum trust boundary breached. The scope change (S:C in CVSS) is characteristic of stored XSS that executes in a victim's browser session rather than the attacker's, allowing the injected script to operate under the privileges of whoever views the poisoned content, typically editors or administrators.
Know when Appointment Hour Booking 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:R/S:C/C:L/I:L/A:L
PR:L confirmed by contributor-role requirement; UI:R for admin interaction; S:C for cross-session script execution; A:N as XSS does not cause direct availability impact.
Primary rating from Vendor (Patchstack).
CVSS VectorVendor: Patchstack
DescriptionCVE.org
Contributor Cross Site Scripting (XSS) in Appointment Hour Booking <= 1.5.86 versions.
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
Cross-Site Scripting occurs when an application accepts untrusted data and sends it to a web browser without proper validation or encoding.
More in Appointment Hour Booking
View allThe Appointment Hour Booking plugin 1.1.44 for WordPress allows XSS via the E-mail field, as demonstrated by email_1. Ra
The Appointment Hour Booking WordPress plugin before 1.3.17 does not properly sanitize values used when creating new cal
Unauthenticated attackers can book time slots in the Appointment Hour Booking WordPress plugin (before 1.5.95) that have
Price manipulation in the Appointment Hour Booking WordPress plugin (all versions before 1.5.88) allows any unauthentica
Missing Authorization vulnerability in Appointment Hour Booking plugin <= 1.3.71 on WordPress. Rated high severity (CVSS
The Appointment Hour Booking WordPress plugin before 1.3.56 does not sanitise and escape a settings of its Calendar fiel
The Appointment Hour Booking WordPress plugin before 1.3.16 does not escape some of the Calendar Form settings, allowing
The Appointment Hour Booking plugin for WordPress is vulnerable to iFrame Injection via the ‘email’ or general field par
The Appointment Hour Booking Plugin for WordPress is vulnerable to CSV Injection in versions up to, and including, 1.3.7
Broken access control in the Appointment Hour Booking WordPress plugin (by Codepeople) versions up to and including 1.5.
The Appointment Hour Booking plugin for WordPress is vulnerable to CAPTCHA bypass in versions up to, and including, 1.3.
EUVD-2026-48119
GHSA-25g3-wph6-6rwc
NVD
CVE.org
EPSS
Vulnrichment
Exploit-DB