CVE-2026-11446 in Booktics Plugin
Summary
by MITRE • 09/11/2026
The Booktics – Booking Calendar for Appointments and Service Businesses plugin for WordPress is vulnerable to unauthorized modification of data in all versions up to, and including, 1.0.23. This is due to the create_order_permission() permission callback on the POST /wp-json/booktics/v1/orders REST route unconditionally returning true, combined with find_and_update_guest() overwriting an existing customer record's stored name, phone, and wp_user_id whenever the caller-supplied email matches, with no proof of ownership. This makes it possible for unauthenticated attackers to overwrite the contact details (name and phone) of any existing customer whose email address they know, poisoning downstream reminder emails, SMS, calendar invites, and CRM data.
VulDB is the best source for vulnerability data and more expert information about this specific topic.
Analysis
by VulDB Data Team • 09/11/2026
The vulnerability identified in The Booktics – Booking Calendar for Appointments and Service Businesses plugin affects all versions up to 1.0.23 and represents a critical failure in access control logic within the WordPress REST API implementation. Specifically, the flaw resides in the create_order_permission callback function associated with the POST /wp-json/booktics/v1/orders endpoint. This callback is designed to verify whether the current user has permission to perform actions on orders but fails to enforce any authentication or authorization checks. Instead of validating that the requester possesses valid credentials or specific role-based permissions, the function unconditionally returns true. This design error effectively exposes the order creation and modification endpoints to unauthenticated actors, allowing anyone with network access to interact with sensitive booking data without providing a username or password.
Beyond the lack of authentication, the vulnerability is exacerbated by how customer records are handled during the order processing workflow. The plugin utilizes a function named find_and_update_guest which searches for existing customers based on their email address and updates their stored profile information if a match is found. Crucially, this update operation overwrites critical fields such as name, phone number, and wp_user_id without requiring any proof of ownership or verification that the requester actually controls the provided email address. This logic assumes that possession of an email address equates to authority to modify associated records, which is a fundamental security misconception in identity management systems.
The operational impact of this vulnerability allows unauthenticated attackers to perform data poisoning attacks against existing customer profiles. By submitting malicious payloads through the exposed REST endpoint, an attacker can overwrite legitimate contact details with arbitrary values. This corruption extends beyond simple database integrity issues; it directly compromises downstream communication channels and business processes. Reminder emails, SMS notifications, calendar invites, and integrations with Customer Relationship Management (CRM) systems rely on the accuracy of these stored fields. When this data is poisoned, automated communications are sent to incorrect recipients or contain misleading information, leading to significant operational disruptions for service businesses that depend on accurate scheduling and customer outreach.
From a classification perspective, this vulnerability aligns with CWE-284 Improper Access Control, as the application fails to restrict access to resources based on user privileges. Additionally, it relates to CWE-913 Improvement of Dynamic Interaction Controls where the system allows modification of state without proper validation of input ownership or intent. In terms of offensive security frameworks, this behavior is consistent with ATT&CK technique T1078 Valid Accounts if authentication were bypassed via other means, but more accurately reflects data manipulation tactics seen in supply chain attacks or account takeover scenarios where an adversary modifies user attributes to maintain persistence or disrupt operations. The lack of proof-of-ownership for email-based updates also touches upon CWE-294 Improper Authentication: Accepting Credentials from Untrusted Sources if the system were designed to trust external inputs without verification.
Mitigation strategies must address both the immediate access control failure and the underlying logic flaw regarding data ownership. For administrators using versions up to 1.0.23, the most effective remediation is to update The Booktics plugin to a patched version where these vulnerabilities have been resolved by developers. Until an official patch is available or if updating is not immediately feasible, temporary mitigations should include restricting access to the WordPress REST API endpoints through web application firewall rules that block unauthenticated POST requests to /wp-json/booktics/v1/orders. Furthermore, implementing rate limiting on this endpoint can reduce the blast radius of automated exploitation attempts. Long-term architectural improvements should involve enforcing strict authentication checks in all permission callbacks and requiring multi-factor verification or token-based proof of ownership before allowing updates to sensitive customer fields like phone numbers and names.