Description
The Salon Booking System – Free Version plugin for WordPress is vulnerable to Cross-Site Request Forgery in all versions up to, and including, 10.30.32. This is due to missing or incorrect nonce validation on the setCustomText function. This makes it possible for unauthenticated attackers to inject arbitrary PHP code into the web-accessible translate-constants.php file within the plugin directory, enabling remote code execution on the server via a forged request granted they can trick a site administrator into performing an action such as clicking on a link. sanitize_text_field() is applied to the POST 'value' parameter but does not neutralize the characters — single quotes, parentheses, semicolons, $, and [] — required to break out of the PHP string literal into which the value is interpolated before being written to disk via file_put_contents().
Published: 2026-07-10
Score: 8.8 High
EPSS: < 1% Very Low
KEV: No
Impact: n/a
Action: n/a
AI Analysis

Impact

The Salon Booking System – Free Version plugin for WordPress allows a malicious actor to inject arbitrary PHP code into the web‑accessible translate‑constants.php file via the setCustomText action. The flaw arises because the ‘value’ POST parameter is sanitized with sanitize_text_field() but still contains characters that break out of the PHP string literal written by file_put_contents(). This bypass of nonce validation enables remote code execution on the server when a vulnerable page is written.

Affected Systems

All installations of Salon Booking System – Free Version plugin for WordPress up to and including 10.30.32 are affected. No official fix is currently available, so any site running a vulnerable version must upgrade to a patched release or otherwise mitigate the flaw.

Risk and Exploitability

The CVSS score of 8.8 indicates a high severity. Based on the description, it is inferred that the attacker must convince a logged‑in site administrator to submit a forged request that exploits the missing nonce check, for example by clicking a malicious link or submitting a crafted form. The EPSS score is less than 1%, indicating that exploitation in the wild is currently rare, but the vulnerability still poses a significant risk due to the potential for remote code execution. The issue is not yet listed in CISA KEV.

Generated by OpenCVE AI on July 29, 2026 at 11:30 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Check for an updated release or vendor patch for the Salon Booking System plugin; if available, upgrade to a version that includes proper nonce validation to eliminate the CSRF flaw.
  • If an immediate update is not possible, block or rewrite the /index.php?setCustomText endpoint to reject unauthenticated POST requests to the setCustomText action.
  • Manually review the translate‑constants.php file in the plugin’s directory for injected PHP code and, if corruption is detected, remove or replace the file.

Generated by OpenCVE AI on July 29, 2026 at 11:30 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Fri, 10 Jul 2026 16:30:00 +0000

Type Values Removed Values Added
Metrics ssvc

{'options': {'Automatable': 'no', 'Exploitation': 'none', 'Technical Impact': 'total'}, 'version': '2.0.3'}


Fri, 10 Jul 2026 04:00:00 +0000

Type Values Removed Values Added
Description The Salon Booking System – Free Version plugin for WordPress is vulnerable to Cross-Site Request Forgery in all versions up to, and including, 10.30.32. This is due to missing or incorrect nonce validation on the setCustomText function. This makes it possible for unauthenticated attackers to inject arbitrary PHP code into the web-accessible translate-constants.php file within the plugin directory, enabling remote code execution on the server via a forged request granted they can trick a site administrator into performing an action such as clicking on a link. sanitize_text_field() is applied to the POST 'value' parameter but does not neutralize the characters — single quotes, parentheses, semicolons, $, and [] — required to break out of the PHP string literal into which the value is interpolated before being written to disk via file_put_contents().
Title Salon Booking System <= 10.30.32 - Cross-Site Request Forgery to Remote Code Execution via 'value' Parameter
Weaknesses CWE-352
References
Metrics cvssV3_1

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


Subscriptions

No data.

cve-icon MITRE

Status: PUBLISHED

Assigner: Wordfence

Published:

Updated: 2026-07-10T15:24:41.007Z

Reserved: 2026-07-08T15:04:03.967Z

Link: CVE-2026-15070

cve-icon Vulnrichment

Updated: 2026-07-10T15:24:36.206Z

cve-icon NVD

No data.

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-07-29T11:45:03Z

Weaknesses
  • CWE-352

    Cross-Site Request Forgery (CSRF)