Description
The Appointment Booking Plugin – LatePoint | Calendar & Scheduling for WordPress plugin for WordPress is vulnerable to Authentication Bypass via Account Takeover in all versions up to, and including, 5.7.6. This is due to the `OsModel::build_conditions_query()` function in `lib/models/model.php` comparing WHERE-clause values against the literal strings `'IS NULL'` and `'IS NOT NULL'` and concatenating a match directly into SQL without binding it as a parameter, a flaw that neither `sanitize_text_field()` nor the 5.7.5 `is_scalar()` hardening guard closes, since both pass the scalar sentinel through unchanged. This makes it possible for unauthenticated attackers to send `params[password_reset_token]=IS NOT NULL` to the public `customer_cabinet__change_password` AJAX route to match every non-null `account_nonse` value, resolving to the lowest-id customer and overwriting that customer's password to an attacker-chosen value — granting full access to their bookings, orders, and PII, and, when the `wp_users_as_customers` option is enabled, takeover of the linked WordPress subscriber or customer-role account. The attacker can first identify the target customer's email by sending `params[order_intent_key]=IS NOT NULL` to the public `steps__start_from_order_intent` route, which returns the name and email from the first matching order intent, and can then self-arm the required 15-minute password-reset freshness window by triggering a reset for that customer directly.
Published: 2026-11-07
Score: 9.1 Critical
EPSS: n/a
KEV: No
Impact: Authentication Bypass / Account Takeover
Action: Immediate Patch
AI Analysis

Impact

The vulnerability in the LatePoint Appointment Booking Plugin allows unauthenticated attackers to bypass authentication by manipulating the 'password_reset_token' parameter to the literal 'IS NOT NULL'. This causes the plugin to construct a SQL condition that matches every non‑null account, selecting the lowest‑ID customer and overwriting that user's password with a value chosen by the attacker. The attacker then gains full access to the compromised customer's bookings, orders, and personally identifiable information. The weakness is an authentication bypass, classified as CWE‑287.

Affected Systems

Affected systems are installations of the LatePoint plugin for WordPress version 5.7.6 and earlier. These versions are distributed through the WordPress plugin repository and may be present on any site that has not yet been upgraded. No other vendors or products are listed.

Risk and Exploitability

The CVSS score of 9.1 indicates high severity. Because the exploit requires only unauthenticated HTTP requests to public AJAX routes and no special privileges, the risk of exploitation is high, especially if the site is publicly accessible. EPSS is not available, but the lack of a KEV listing does not diminish the urgency; the vulnerability can be actively exploited by sending crafted requests to the exposed endpoints. An attacker can first discover a target customer by querying the order intent endpoint, then reset the password within the 15‑minute freshness window and assume control of the account.

Generated by OpenCVE AI on November 7, 2026 at 12:28 UTC.

Remediation

No solution or workaround provided in the CVE record.

OpenCVE Recommended Actions

  • Update the LatePoint plugin to the latest available version (≥5.7.7) which removes the unchecked 'IS NOT NULL' comparison and binds parameters properly.
  • If an immediate update is not possible, restrict access to the customer_cabinet__change_password and steps__start_from_order_intent AJAX routes to authenticated users only, for example by adding a short‑lived firewall rule or modifying the plugin settings to require authentication for those endpoints.
  • After remediation, monitor the site's audit logs for unusual password reset attempts, and verify that legitimate password reset flows continue to function correctly.

Generated by OpenCVE AI on November 7, 2026 at 12:28 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Sat, 07 Nov 2026 16:00:00 +0000

Type Values Removed Values Added
First Time appeared Latepoint
Latepoint appointment Booking Plugin – Latepoint | Calendar & Scheduling For Wordpress
Wordpress-extensions
Wordpress-extensions appointment Booking Plugin
Vendors & Products Latepoint
Latepoint appointment Booking Plugin – Latepoint | Calendar & Scheduling For Wordpress
Wordpress-extensions
Wordpress-extensions appointment Booking Plugin

Sat, 07 Nov 2026 11:30:00 +0000

Type Values Removed Values Added
Description The Appointment Booking Plugin – LatePoint | Calendar & Scheduling for WordPress plugin for WordPress is vulnerable to Authentication Bypass via Account Takeover in all versions up to, and including, 5.7.6. This is due to the `OsModel::build_conditions_query()` function in `lib/models/model.php` comparing WHERE-clause values against the literal strings `'IS NULL'` and `'IS NOT NULL'` and concatenating a match directly into SQL without binding it as a parameter, a flaw that neither `sanitize_text_field()` nor the 5.7.5 `is_scalar()` hardening guard closes, since both pass the scalar sentinel through unchanged. This makes it possible for unauthenticated attackers to send `params[password_reset_token]=IS NOT NULL` to the public `customer_cabinet__change_password` AJAX route to match every non-null `account_nonse` value, resolving to the lowest-id customer and overwriting that customer's password to an attacker-chosen value — granting full access to their bookings, orders, and PII, and, when the `wp_users_as_customers` option is enabled, takeover of the linked WordPress subscriber or customer-role account. The attacker can first identify the target customer's email by sending `params[order_intent_key]=IS NOT NULL` to the public `steps__start_from_order_intent` route, which returns the name and email from the first matching order intent, and can then self-arm the required 15-minute password-reset freshness window by triggering a reset for that customer directly.
Title Appointment Booking Plugin <= 5.7.6 - Unauthenticated Authentication Bypass via Account Takeover via 'IS NOT NULL' Sentinel in 'password_reset_token' Parameter
Weaknesses CWE-287
References
Metrics cvssV3_1

{'score': 9.1, 'vector': 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N'}


Subscriptions

Latepoint Appointment Booking Plugin – Latepoint | Calendar & Scheduling For Wordpress
Wordpress-extensions Appointment Booking Plugin
cve-icon MITRE

Status: PUBLISHED

Assigner: Wordfence

Published:

Updated: 2026-11-07T11:26:26.913Z

Reserved: 2026-10-27T15:39:47.322Z

Link: CVE-2026-118066

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Deferred

Published: 2026-11-07T12:17:43.717

Modified: 2026-11-07T12:17:43.833

Link: CVE-2026-118066

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-11-07T15:45:17Z

Weaknesses