Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessIdentify target appointment and approximate creation time
-
ExploitReconstruct token from hardcoded salt + timestamp
-
ExecutionSubmit forged cancel/confirm mail-link request
-
ImpactArbitrary appointment cancelled or confirmed
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V8 - Authorization Access control enforcement
MITRE ATT&CK
1 technique across 1 tactic: Defense Evasion The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | Exploitation targets the Easy Appointments plugin (before 4.0.2.2) mail-link appointment cancellation/confirmation feature, which authorizes the action with a token derived from a hardcoded, source-embedded salt plus the appointment's creation timestamp. No authentication is required (PR:N) and no user interaction is needed, but the attacker MUST know or guess the target appointment's creation timestamp to forge a valid token - this is the concrete factor limiting reliable exploitation (reflected as AC:H). Impact is bounded to cancelling or confirming existing appointments; no data disclosure or broader takeover is possible. |
| Impact | This is a genuine but modest-priority authorization flaw. The vendor CVSS3.1 vector (AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:L/A:L, base 4.8) is internally consistent and I agree with it: the action is remote and unauthenticated (PR:N), but AC:H is well-justified because the cancel/confirm token is derived from a hardcoded source-embedded salt combined with the appointment's creation timestamp - the attacker must know or guess that timestamp to forge a valid token. Impact is limited to integrity (I:L, flipping an appointment to cancelled/confirmed) and availability (A:L, denying a booking by cancelling it); there is no confidentiality impact (C:N), consistent with the description. Publicly available exploit code exists (WPScan), which raises real-world risk above the CVSS number alone, but this is NOT confirmed active exploitation - no CISA KEV listing and no EPSS score are provided, so widespread automated exploitation is unproven. The AC:H timestamp-guessing requirement is the primary limiter: appointments booked in a narrow, discoverable time window are far more exposed than random ones. No signals conflict with each other; the main gap is the absence of EPSS/KEV to gauge exploitation likelihood. |
| Exploit ScenarioDerived | An unauthenticated attacker who can approximate the creation timestamp of a target appointment (e.g. by booking around the same time or observing scheduling patterns) reconstructs the cancellation/confirmation token using the publicly known hardcoded salt and that timestamp, then submits the mail-link action to cancel or confirm the victim's appointment without ever receiving the email. Public exploit code from WPScan lowers the effort required, though the AC:H timestamp-guessing step still constrains reliable mass exploitation. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Sep 18, 2026
Unauthenticated attackers can cancel or confirm arbitrary appointments in the Easy Appointments WordPress plugin before 4.0.2.2 because the mail-link action token is derived from a hardcoded, source-embedded salt combined with the appointment's creation timestamp instead of an unguessable secret. Exploitation hinges on knowing or guessing the target appointment timestamp, which keeps reliability limited (reflected as AC:H in CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:L/A:L, base 4.8); impact is confined to integrity and availability of existing appointment records with no data disclosure. Publicly available exploit code exists, and a vendor-released patch (4.0.2.2) is available.
RemediationAI
Upgrade the Easy Appointments WordPress plugin to 4.0.2.2 or later, which replaces the hardcoded-salt-plus-timestamp token derivation with an unguessable authorization token (vendor-released patch: 4.0.2.2). If immediate upgrading is not possible, disable or remove the mail-link confirmation and cancellation links (for example by turning off customer-facing confirmation/cancellation emails or filtering the relevant mail-link action) so that the weak token cannot be exercised; the trade-off is lost self-service functionality for customers, who would then need to contact staff to confirm or cancel. As an additional compensating measure, require appointment state changes to occur only through authenticated wp-admin actions and monitor for unexpected bulk cancellations or confirmations as a signal of token guessing. Consult the WPScan advisory at https://wpscan.com/vulnerability/b498fba8-8969-45af-8cef-e91d6be34912/ and the NVD record at https://nvd.nist.gov/vuln/detail/CVE-2026-87965 for version and patch confirmation.
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 flaw is an improper access control weakness (CWE-284) in the Easy Appointments WordPress plugin's email-based appointment confirmation and cancellation links. Rather than issuing a cryptographically random, per-appointment token, the plugin builds the authorization token from a salt hardcoded in the plugin source plus the appointment's creation timestamp, so the only unknown component an attacker must supply is that timestamp. Because the salt is effectively public (embedded in distributed source code), the token's effective entropy collapses to the timestamp space, which is small and often inferrable from booking context. The mail-link endpoint processes the token without requiring authentication (PR:N per the assessed CVSS vector) and without user interaction (UI:N), and it is remotely reachable (AV:N). Attack complexity is assessed as high (AC:H) precisely because a valid token cannot be forged without first knowing or guessing the creation timestamp. Confidentiality impact is none; integrity and availability impacts are low, bounded to changing the state of existing appointments (cancelling or confirming them) rather than broader site compromise.
Know when Easy Appointments 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:H/PR:N/UI:N/S:U/C:N/I:L/A:L
Unauthenticated network action (PR:N) but the token requires guessing the creation timestamp (AC:H); impact limited to flipping appointment state (I:L) and denying bookings (A:L), no data read (C:N).
Primary rating from Vendor (WPScan).
CVSS VectorVendor: WPScan
Lifecycle Timeline
3DescriptionCVE.org
The Easy Appointments WordPress plugin before 4.0.2.2 does not use an unguessable token to authorize its mail-link appointment cancellation and confirmation action, deriving the token from a hardcoded source-embedded salt and the appointment's creation timestamp, so unauthenticated attackers who know or guess that timestamp can cancel or confirm arbitrary appointments.
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
More in Easy Appointments
View allalextselegidis Easy!Appointments v1.5.1 was discovered to contain a SQL injection vulnerability via the order_by paramet
Cross-Site Request Forgery (CSRF) in Easy!Appointments 1.5.2 and earlier allows remote attackers to perform administrati
Easy Appointments WordPress plugin through version 3.12.26 exposes an insecure direct object reference (IDOR) that lets
Unauthenticated attackers can overwrite arbitrary appointment records in the Easy Appointments WordPress plugin (version
Easy!Appointments 1.3.2 plugin for WordPress allows Sensitive Information Disclosure (Username and Password Hash). Rated
Easy Appointments WordPress plugin through version 3.12.26 exposes an appointment-listing REST endpoint to any authentic
Insecure direct object reference in the Easy Appointments WordPress plugin (all versions through 3.12.26) permits any au
Una
Improper access control in the Easy Appointments WordPress plugin through version 3.12.26 allows any contributor-level W
Broken access control in the Easy Appointments WordPress plugin through version 3.12.26 permits any contributor-level au
Booking logic flaw in Easy!Appointments v1.5.1 allows unauthenticated attackers to create appointments with excessively
Unauthenticated information disclosure in the Easy Appointments WordPress plugin (versions ≤ 3.12.21) allows remote atta
EUVD-2026-82674
GHSA-w73j-m9cj-hp9q
NVD
CVE.org
EPSS
Vulnrichment
Exploit-DB