Description
The MotoPress Appointment Booking Lite plugin for WordPress is vulnerable to Stored Cross-Site Scripting in versions up to, and including, 2.4.8 via the public '/motopress/appointment/v1/customers/create' REST endpoint. The route is registered with permission_callback => '__return_true' and the handler's 'name' parameter is not sanitized before being written to the custom wp_mpa_customers table via $wpdb->insert, nor is it escaped on output in the admin bookings list when the viewing user lacks the 'mpa_edit_customer' capability (such as the plugin-defined Appointment Employee role). This makes it possible for unauthenticated attackers to inject arbitrary web scripts in pages that will execute whenever a user accesses an injected page.
Published: 2026-11-07
Score: 5.4 Medium
EPSS: n/a
KEV: No
Impact: Stored Cross‑Site Scripting leading to arbitrary script execution
Action: Immediate Patch
AI Analysis

Impact

The vulnerability resides in the public REST endpoint that accepts a 'name' parameter which is not sanitized before storage and later output without escaping for users lacking sufficient privileges. As a result, an unauthenticated attacker can submit any JavaScript payload that will be stored in the database and executed in the browser whenever a user opens a bookings page. This allows injection of arbitrary scripts, which can be used for session hijacking, defacement, or delivery of malicious content.

Affected Systems

The flaw affects the MotoPress Appointment Booking Lite plugin for WordPress, versions 2.4.8 and earlier. Users running those versions on any WordPress site are potentially vulnerable. No specific OS or other product is required other than the standard WordPress environment.

Risk and Exploitability

The CVSS score of 5.4 indicates moderate severity. EPSS is not available, so the likelihood of exploitation cannot be quantified, but the flaw is publicly accessible and does not require authentication, making it low‑effort to exploit. The vulnerability is not listed in CISA’s KEV catalog. Attackers can exploit the endpoint directly without credentials; the vulnerability does not require privileged access, so it is exploitable by anyone who can reach the site’s REST API.

Generated by OpenCVE AI on November 7, 2026 at 03:21 UTC.

Remediation

No solution or workaround provided in the CVE record.

OpenCVE Recommended Actions

  • Update the MotoPress Appointment Booking Lite plugin to the latest version that includes the XSS fix.
  • If an immediate update is not possible, restrict the /motopress/appointment/v1/customers/create REST route so that it validates authentication or denies all unauthenticated requests, for example by changing the permission_callback to return false until the patch is applied.
  • Deploy or configure a web application firewall rule to block or sanitize XSS payloads targeting the 'name' field on the /motopress/appointment/v1/customers/create endpoint.

Generated by OpenCVE AI on November 7, 2026 at 03:21 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Sat, 07 Nov 2026 02:45:00 +0000

Type Values Removed Values Added
Description The MotoPress Appointment Booking Lite plugin for WordPress is vulnerable to Stored Cross-Site Scripting in versions up to, and including, 2.4.8 via the public '/motopress/appointment/v1/customers/create' REST endpoint. The route is registered with permission_callback => '__return_true' and the handler's 'name' parameter is not sanitized before being written to the custom wp_mpa_customers table via $wpdb->insert, nor is it escaped on output in the admin bookings list when the viewing user lacks the 'mpa_edit_customer' capability (such as the plugin-defined Appointment Employee role). This makes it possible for unauthenticated attackers to inject arbitrary web scripts in pages that will execute whenever a user accesses an injected page.
Title MotoPress Appointment Booking <= 2.4.8 - Unauthenticated Stored Cross-Site Scripting via Customer Name via /customers/create REST Endpoint
Weaknesses CWE-79
References
Metrics cvssV3_1

{'score': 5.4, 'vector': 'CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:C/C:L/I:L/A:N'}


Subscriptions

No data.

cve-icon MITRE

Status: PUBLISHED

Assigner: Wordfence

Published:

Updated: 2026-11-07T02:29:17.979Z

Reserved: 2026-11-02T20:48:37.380Z

Link: CVE-2026-120741

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Deferred

Published: 2026-11-07T03:17:04.650

Modified: 2026-11-07T03:17:04.787

Link: CVE-2026-120741

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-11-07T03:30:13Z

Weaknesses
  • CWE-79

    Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting')