Severity by source
AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N
Primary rating from NVD · only source for this CVE.
CVSS VectorNVD
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N
Lifecycle Timeline
2DescriptionCVE.org
The Smart Appointment & Booking plugin for WordPress is vulnerable to unauthorized modification of data due to a missing capability check and a nonce validation logic flaw in the saab_cancel_booking() function in all versions up to, and including, 1.0.8. The nonce check uses && (AND) instead of || (OR), which means providing any value for the security parameter causes the entire check to be skipped. This makes it possible for unauthenticated attackers to cancel arbitrary bookings by supplying a predictable booking ID.
AnalysisAI
Unauthenticated attackers can cancel arbitrary bookings in the Smart Appointment & Booking WordPress plugin versions up to 1.0.8 due to a logic flaw in nonce validation that uses AND instead of OR, combined with a missing capability check in the saab_cancel_booking() function. By supplying any value for the security parameter and a predictable booking ID, attackers can modify or delete booking records without authentication or user interaction.
Technical ContextAI
The vulnerability exists in the saab_cancel_booking() function within the Smart Appointment & Booking WordPress plugin's front-end action handler class. WordPress nonce validation typically uses wp_verify_nonce() to ensure requests originate from authenticated sessions; however, this implementation contains a logical operator flaw where the nonce check uses && (AND) instead of || (OR). This causes the security check to be bypassed when any value is provided for the nonce parameter, inverting the intended validation logic. Combined with the absence of a capability check (CWE-862: Missing Authorization), the function fails to verify that the requesting user has permission to cancel bookings. The plugin's architectural assumption that predictable or enumerable booking IDs are protected by the nonce check proves invalid due to this logic error.
RemediationAI
Update the Smart Appointment & Booking plugin to version 1.0.9 or later, which should correct the nonce validation logic and implement proper capability checks. To update, navigate to the WordPress Dashboard, go to Plugins > Installed Plugins, locate Smart Appointment & Booking, and click Update if available; alternatively, download the patched version from https://wordpress.org/plugins/smart-appointment-booking/ and manually upload it. As an immediate workaround for unpatched installations, disable the plugin entirely until a patch is available, or restrict access to the booking cancellation endpoint by implementing server-level IP whitelisting or adding authentication requirements at the web server level (e.g., via .htaccess or nginx configuration). Be aware that disabling the plugin prevents all booking functionality, not just cancellation. A temporary code-level fix (for sites comfortable with PHP modification) would be to manually correct the nonce logic from && to || in the saab_cancel_booking() function, though this approach is not recommended for production without code review and introduces maintenance burden during future updates.
The isMail transport in PHPMailer before 5.2.20 might allow remote attackers to pass extra parameters to the mail comman
The Backup Migration plugin for WordPress is vulnerable to Remote Code Execution in all versions up to, and including, 1
The Hash Form - Drag & Drop Form Builder plugin for WordPress is vulnerable to arbitrary file uploads due to missing fil
The GiveWP - Donation Plugin and Fundraising Platform plugin for WordPress is vulnerable to PHP Object Injection in all
The Simple File List plugin for WordPress through version 4.2.2 contains an unauthenticated remote code execution vulner
The AI Engine WordPress plugin through version 3.1.3 exposes Bearer Token values through the /mcp/v1/ REST API endpoint
The Ninja Forms plugin before 2.9.42.1 for WordPress allows remote attackers to conduct PHP object injection attacks via
The Business Directory Plugin - Easy Listing Directories for WordPress plugin for WordPress is vulnerable to time-based
SQL injection in the NotificationX WordPress plugin (versions up to and including 2.8.2) allows unauthenticated remote a
The POST SMTP Mailer - Email log, Delivery Failure Notifications and Best Mail SMTP for WordPress plugin for WordPress i
The MasterStudy LMS WordPress Plugin - for Online Courses and Education plugin for WordPress is vulnerable to union base
The Country State City Dropdown CF7 plugin for WordPress is vulnerable to SQL Injection via the ‘cnt’ and 'sid' paramete
Same weakness CWE-862 – Missing Authorization
View allSame technique Authentication Bypass
View allShare
External POC / Exploit Code
Leaving vuln.today
EUVD-2026-29399
GHSA-jx49-jgx5-x37f