Executive Summary
A critical authorization bypass vulnerability (CVE-2026-14349) has been disclosed in TrueBooker – Appointment Booking and Scheduler System, a WordPress plugin from ThemeTechMount used to run appointment/booking flows on client sites. The vulnerability carries a CVSS score of 9.8 and requires no authentication and no user interaction to exploit.
CVSS Score: 9.8 (Critical)
The plugin fails to properly verify that a user is authorized to perform an action on one of its AJAX endpoints. As a result, an unauthenticated attacker can change the email address on any user account — including administrator accounts — and then trigger the standard WordPress "forgot password" flow to have the reset link sent to an address they control. That single missing authorization check is enough to fully take over a site. The issue is fixed in version 1.2.4.
Vulnerability Overview
| Attribute | Value |
|---|---|
| CVE ID | CVE-2026-14349 |
| CVSS Score | 9.8 (Critical) |
| CVSS Vector | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H |
| CWE | CWE-862: Missing Authorization |
| Type | Unauthenticated Authorization Bypass → Account Takeover |
| Attack Vector | Network (no authentication required) |
| Privileges Required | None |
| User Interaction | None |
Affected Versions
| Plugin | Affected Versions | Fixed Version |
|---|---|---|
| TrueBooker – Appointment Booking and Scheduler System | ≤ 1.2.3 | 1.2.4 |
The WordPress.org changelog for TrueBooker 1.2.4 lists "fixed vulnerabilities related to unauthorized user account modification and potential account takeover" alongside broader authorization and server-side validation hardening across the plugin's AJAX endpoints — consistent with this disclosure. Sites running 1.2.3 or earlier should treat this as urgent.
Attack Vector
1. Attacker identifies a WordPress site running TrueBooker <= 1.2.3
2. Attacker sends an unauthenticated request to a TrueBooker AJAX action
that updates a user's account email, supplying an arbitrary target
user ID (e.g. the site administrator, ID 1)
3. The plugin does not verify the requester is authorized to modify that
account, and updates the email address on record
4. Attacker triggers the standard WordPress "Lost your password?" flow
for that account
5. The password reset link is delivered to the attacker-controlled
email address instead of the legitimate owner's
6. Attacker sets a new password and logs in with full administrator
privilegesImpact of Successful Exploitation
| Impact | Description |
|---|---|
| Full Account Takeover | Reset the password on any account, including administrators |
| Site Takeover | Admin access enables plugin/theme installation, arbitrary PHP execution via the editor, and full control of the site |
| Data Exfiltration | Access to customer bookings, appointment details, and stored contact information |
| Booking Manipulation | Ability to view, modify, or cancel other customers' appointments |
| Persistence | Attacker can add new admin users or backdoors once inside |
| Reputational Damage | Customer-facing booking sites are directly exposed to unauthenticated exploitation |
Immediate Remediation
Step 1: Update to Version 1.2.4 or Later
# Via WP-CLI
wp plugin update truebooker-appointment-booking
# Verify the installed version
wp plugin get truebooker-appointment-booking --field=versionOr update through WordPress admin: Plugins > Installed Plugins > TrueBooker > Update Now.
Step 2: Audit Administrator Accounts
Because this flaw can be used to silently change an account's email address, review admin and manager accounts for emails that do not match your records.
# List all administrator accounts and their registered email addresses
wp user list --role=administrator --fields=ID,user_login,user_emailStep 3: Force a Password Reset for All Privileged Accounts
# Regenerate WordPress security keys/salts to invalidate existing sessions
wp config shuffle-salts
# Reset passwords for admin-level users after confirming their email
# addresses are correct
wp user reset-password <user_id>If Immediate Patching Is Not Possible
- Deactivate the TrueBooker plugin until it can be updated
- Block access to TrueBooker's AJAX/admin-ajax actions at the web server or WAF level if the plugin must remain active
- Monitor access and audit logs for unexpected
admin-ajax.phpPOST requests referencing TrueBooker actions - Enable email-change and password-reset notifications so account owners are alerted to changes they did not make
Detection Indicators
| Indicator | Description |
|---|---|
Unexpected admin-ajax.php POST requests | Exploitation attempts against TrueBooker actions |
| Administrator email addresses that don't match records | Sign of a completed account-email hijack |
| Unrecognized "password reset requested" notifications | Attacker triggering the reset flow post-hijack |
| New or unfamiliar administrator/manager accounts | Sign of post-takeover persistence |
| Unexplained changes to booking/appointment records | Data tampering via the same underlying flaw |
Post-Remediation Steps
- Confirm plugin updated to 1.2.4 or later
- Verify every admin/manager account's email address matches its legitimate owner
- Rotate all credentials — WordPress admin, database, API keys
- Regenerate WordPress security keys using
wp config shuffle-salts - Review the user list for unauthorized administrators added after a suspected compromise window
- Scan the installation for webshells or unauthorized file changes if takeover is suspected
- Deploy a WAF (Wordfence, Sucuri) for ongoing protection against authorization-bypass exploitation attempts
- Enable two-factor authentication for all privileged accounts going forward
References
- NIST NVD — CVE-2026-14349
- Wordfence Threat Intelligence — TrueBooker ≤ 1.2.3 Missing Authorization Vulnerabilities
- WordPress.org — TrueBooker Appointment Booking Plugin Changelog