Salon Booking System <= 10.30.32 - Cross-Site Request Forgery to Remote Code Execution via 'value' Parameter
Strategic Overview
- Status
- Patched in 10.30.33
- Affected Version
<= 10.30.32- CVSS
- 8.8High
- Weakness type
- CWE-352 · Cross-Site Request Forgery (CSRF)
- CVE
CVE-2026-15070
At a glance
CVE-2026-15070 is a high-severity Cross-Site Request Forgery (CSRF) vulnerability in the Salon Booking System WordPress plugin, affecting versions <= 10.30.32. It carries a CVSS score of 8.8 (reachable over the network; low attack complexity; high confidentiality, integrity, availability impact). Exploitation requires no authentication. The issue is fixed in version 10.30.33; sites on affected versions should update now. Disclosed July 2026, reported by Afifudin Maarif.
Vulnerability Overview
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().
Technical Analysis
The vector marks this flaw as remotely reachable over the network, with low attack complexity — no special timing or configuration is needed, and no privileges on the target site. A successful exploit has high impact on confidentiality, integrity, availability — full site compromise territory.
CWE-352: Cross-Site Request Forgery (CSRF)
Salon Booking System <= 10.30.32 carries this weakness at value, and reaching it takes a caller who can reach the endpoint. Cross-site request forgery abuses the fact that browsers attach a victim's cookies to any request, so a state-changing action that only checks who you are, not whether you meant to act, can be triggered from another site.
An attacker who gets a logged-in user to load a crafted page can perform that action as them, with the impact scaling to whatever the victim's role is allowed to do. For Salon Booking System the fix is 10.30.33: builds <= 10.30.32 are affected, anything from 10.30.33 onward is not.
Remediation
Update to version 10.30.33, or a newer patched version
How does WordSec protect against this?
The attempt arrives as an ordinary request to Salon Booking System: WordSec's web application firewall inspects request payloads before WordPress loads them. None of that substitutes for the fix: Salon Booking System 10.30.33 closes this, and updating the plugin is the step that ends it.
- Firewall
- Alerts
External References
Related records
Same weakness class
Other vulnerabilities in Salon Booking System – Appointment Booking for Salons, Barbershops & Spas
- 10.0CVE-2024-30510: Salon booking system <= 9.5 Arbitrary File Upload
CVE-2024-30510 - 9.8CVE-2024-3229: Salon Booking System <= 10.2 Arbitrary File Upload
CVE-2024-3229 - 9.1CVE-2024-39658: Salon booking system <= 10.7 SQL Injection
CVE-2024-39658 - 9.1CVE-2024-4442: Salon booking system <= 9.9 Arbitrary File Deletion
CVE-2024-4442 - 8.8CVE-2025-31560: Salon booking system <= 10.11 Privilege Escalation
CVE-2025-31560 - 7.5CVE-2026-6320: Salon Booking System – Free Version Arbitrary File Read
CVE-2026-6320 - 7.5CVE-2022-0920: Salon Booking System and Salon Booking… Info Disclosure
CVE-2022-0920 - 7.2CVE-2024-2102: Salon booking system <= 9.6.2 Stored XSS
CVE-2024-2102
Vulnerability data © Defiant, Inc., provided under the Wordfence Intelligence T&C