LatePoint 5.7.6以前に認証不要のアカウント乗っ取り脆弱性
Summary
WordPressの予約プラグインLatePointの5.7.6以前に、ログインなしで顧客アカウントのパスワードを書き換えられる脆弱性があり、予約サイトを公開している組織が対象です。該当版を使っているかを確認し、5.7.6より新しい版が出ていれば更新してください。
AI summary
Produced by SecPulse using an external AI model; it may contain mistakes. Check the original description and references below before acting on it.
WordPressの予約プラグインLatePointの5.7.6以前に、ログインなしで顧客アカウントのパスワードを書き換えられる脆弱性があり、予約サイトを公開している組織が対象です。該当版を使っているかを確認し、5.7.6より新しい版が出ていれば更新してください。
Affected packages
| Package | Affected → Fixed | |
|---|---|---|
| latepointAppointment Booking Plugin – LatePoint | Calendar & Scheduling for WordPress |
≤ 5.7.6→ Not listed |
Not listed |
This record does not list fixed versions. Check the article or the vendor advisory in the references for whether and where it is fixed.
Original description The description as published by the source.
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.
Source: CVE.org (CVE Program・cvelistV5) NVD GitHub Advisory