CVE-2026-96039: BA Book Everything <= 1.8.27 - Unauthenticated Stored Cross-Site Scripting via first_name Parameter
The BA Book Everything plugin for WordPress is vulnerable to Stored Cross-Site Scripting via firstname Parameter in all versions up to, and including, 1.8.27 due to insufficient input sanitization and output escaping. This makes it possible for unauthenticated attackers to inject arbitrary web scripts in pages that will execute whenever a user accesses an injected page. An unauthenticated attacker can obtain the valid orderid, ordernum, and orderhash credentials required to reach the vulnerable actiontopay() handler simply by placing a guest booking through the public [babe-booking-form] shortcode, making the full exploit chain reachable without any account.
Affected Software
Event History
Frequently Asked Questions
Can this be exploited without a WordPress account?
Yes. An attacker can place a guest booking through the public [babe-booking-form] shortcode to obtain the order_id, order_num, and order_hash values needed to reach the vulnerable handler.
Are sites using the public booking form exposed by default?
Sites that expose the [babe-booking-form] shortcode allow the guest-booking path described for obtaining the required order credentials. No authenticated WordPress user account is required for that exploit chain.
What versions are affected?
All BA Book Everything versions up to and including 1.8.27 are affected.
What happens if exploitation succeeds?
An attacker can store arbitrary web script in an injected page. The script executes when a user accesses that page, potentially exposing or modifying content available in that user’s browser session.