Every CVE Search/ Get API key

CVE-2026-118066

Appointment Booking Plugin <= 5.7.6 - Unauthenticated Authentication Bypass via Account Takeover via 'IS NOT NULL' Sentinel in 'password_reset_token' Parameter

9.1 Critical

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.

Attack profile

How easy it is to exploit

Attack vector
Network
Complexity
Low
Privileges needed
None
User interaction
None

What an attacker can affect

Confidentiality
High
Integrity
High
Availability
None

What each source reports

CVE List Score used 9.1

Appointment Booking Plugin <= 5.7.6 - Unauthenticated Authentication Bypass via Account Takeover via 'IS NOT NULL' Sentinel in 'password_reset_token' Parameter

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.

Record
CVE-2026-118066
CVSS 3.1
9.1 CriticalCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N
Weakness
CWE-287
Updated
2026-11-07
EUVDEUVD-2026-119141 9.1

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.

Record
EUVD-2026-119141
CVSS 3.1
9.1 CriticalCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N
Updated
2026-11-07
GitHub AdvisoriesGHSA-rmmm-8g4j-3qgc 9.1

The Appointment Booking Plugin – LatePoint | Calendar & Scheduling for WordPress plugin for...

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.

Record
GHSA-rmmm-8g4j-3qgc
CVSS 3.1
9.1 CriticalCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N
Weakness
CWE-287
Updated
2026-11-07
NVD 9.1

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.

Record
CVE-2026-118066
CVSS 3.1
9.1 CriticalCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N
Weakness
CWE-287
Updated
2026-11-07

Affected products

History

History
RecordedChangedSources
publishedEUVD
publishedEUVD, NVD
aliases, referencesGitHub Advisories
cwes, severity, titleCVE List
first indexedEUVD

Dates are when Every CVE recorded each change. Upstream dates may differ.

In short

CVE-2026-118066 is a critical vulnerability (CVSS 9.1) in Latepoint Appointment Booking Plugin – Latepoint | Calendar & Scheduling For Wordpress, published November 7, 2026. No source lists public exploit code. No source names a fixed version.

References

Show 5 moreShow less
MoveEnter Open