Security Resilience

CVE-2026-93399

Access Control

Published
25 September 2026
Modified
26 September 2026
CVSS Score v3.1 9.1
Click a component to see what it means
Raw vectorCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:H
EPSS Score 0.0037 30th percentile
Risk Priority 66 floored blend · peak EPSS

CVSS and EPSS are reproduced from their sources (NVD, FIRST EPSS). Risk Priority is our own derived reading, not an NVD score.

Summary

CVE-2026-93399 is a critical-severity Authorization Bypass Through User-Controlled Key (CWE-639) vulnerability in Wordpress (inferred from references). Its CVSS base score is 9.1 (Critical).

Operationally, exploitation aligns with the MITRE ATT&CK technique Exploit Public-Facing Application (T1190); ranked at the 30th percentile by exploit likelihood (below the median); it is not currently listed in the CISA KEV catalog.

The strongest mitigations our analysis identified map to AC-24 (Access Control Decisions) and AC-3 (Access Enforcement) — see the control section below for these in your framework.

OWASP Top 10 for Web (2025)

EU & UK References

Vulnerability Data

The Bookly plugin for WordPress is vulnerable to Insecure Direct Object Reference in versions up to, and including, 28.2 via the 'bookly_get_form_id', 'bookly_render_complete', 'bookly_add_to_calendar' and 'bookly_rollback_order' AJAX actions. This is due to the 'bookly_get_form_id' handler blindly storing the attacker-controlled 'order_id'…

more

from the submitted form_data into a new booking session, which the 'bookly_render_complete' handler then trusts to look up and return the corresponding Order's secret token without verifying that the current session created that order. This makes it possible for unauthenticated attackers to enumerate sequential order IDs, disclose other customers' order tokens, retrieve calendar/appointment information via 'bookly_add_to_calendar' and permanently delete arbitrary non-completed bookings via 'bookly_rollback_order', which cascade-deletes the customer_appointment and (when no other customers are attached) the underlying appointment.

CWE(s)

Related Threats

MITRE ATT&CK Enterprise Techniques

T1190 Exploit Public-Facing Application Initial Access
Adversaries may attempt to exploit a weakness in an Internet-facing host or system to initially access a network.
Derived from this CVE’s CWE(s) via the direct CWE→ATT&CK cross-walk.

CVEs Like This One

CVE-2023-38048Shared CWE-639
CVE-2023-3288Shared CWE-639
CVE-2026-49141Shared CWE-639
CVE-2025-6038Shared CWE-639
CVE-2026-58447Shared CWE-639
CVE-2026-63763Shared CWE-639
CVE-2024-8988Shared CWE-639
CVE-2025-14881Shared CWE-639
CVE-2023-2065Shared CWE-639
CVE-2025-10855Shared CWE-639

Affected Assets

Wordpress
—
inferred from references and description; NVD did not file a CPE for this CVE

Mitigating Controls

Mitigating Controls (NIST 800-53 r5) AI

Requiring explicit access-control decisions on each request blocks unauthorized key-driven access.

Enforcing approved authorizations on every access request structurally stops a user-controlled key from reaching another user's data.

Least-privilege restrictions limit the scope of data reachable even if a key check is bypassed.

Mitigating Controls (NIST CSF 2.0) AI

Derived directly from the weakness types (CWEs) cited in the NVD entry via our AI-authored CWE→CSF cross-walk (authority under review) — links open the control.

PR.AA-05 full match
blocks

Enforcing authorization policy and least privilege directly blocks user-controlled key tampering that bypasses access checks.

PR.IR-01 mostly match
blocks

Logical access controls prevent unauthorized data access that results from missing authorization checks on object references.

Mitigating Controls (ISO/IEC 27001:2022 Annex A) AI

Derived directly from the weakness types (CWEs) cited in the NVD entry via our AI-authored CWE→ISO cross-walk (authority under review) — links open the control.

blocks

A.5.15 directly requires defining and implementing access control rules (including authorization, need-to-know, role-based restrictions, formal requests, and consistency with classification) that stop one user from reaching another's data via a tampered key; the bounded remainder is dynamic or application-specific authorization logic (cross-referenced to 8.26) that may still allow bypass if those downstream rules are flawed.

finds

Security testing can detect missing authorization checks but does not prevent the weakness in production.

blocks

Information access restriction explicitly enforces that users may only retrieve data they are authorized to see, directly addressing user-controlled key bypass.

blocks

Managing access rights includes ensuring users can only access their own records and not bypass authorization by altering identifiers.

prevents

Secure coding practices reduce the likelihood of missing authorization checks but do not guarantee their presence at runtime.

References