CVE-2026-16143 Overview
CVE-2026-16143 is a Stored Cross-Site Scripting (XSS) vulnerability in the VikRentItems – Flexible Rental Management System plugin for WordPress. The flaw affects all versions up to and including 1.2.1. Unauthenticated attackers can inject arbitrary JavaScript through the customer email field of the booking checkout form. The payload executes when an administrator or user views the injected order in the backend editorder view.
Critical Impact
Unauthenticated attackers can inject persistent JavaScript that executes in administrator browsing sessions, enabling session hijacking, account takeover, and further compromise of the WordPress site.
Affected Products
- VikRentItems – Flexible Rental Management System plugin for WordPress
- All versions up to and including 1.2.1
- WordPress sites with the plugin's booking checkout form exposed to the public
Discovery Timeline
- 2026-08-05 - CVE-2026-16143 published to NVD
- 2026-08-05 - Last updated in NVD database
Technical Details for CVE-2026-16143
Vulnerability Analysis
The vulnerability is a stored XSS issue classified under CWE-79. It resides in the plugin's booking workflow, where customer-supplied email input flows from an unauthenticated submission endpoint into a backend administrative template without proper output encoding. Because the payload is persisted in the database, every subsequent view of the affected order triggers execution.
Successful exploitation can lead to session theft, forced administrative actions via CSRF-style requests from the victim's authenticated context, and injection of additional malicious content into the WordPress site.
Root Cause
The root cause is insufficient input sanitization combined with missing output escaping. In the saveorder() function within site/controller.php, the custmail value is retrieved through VikRequest::getString(), which applies only sanitize_text_field(). That WordPress helper strips tags and control characters but does not neutralize HTML attribute-breaking characters such as double quotes.
The stored value is later rendered in admin/views/editorder/tmpl/default.php inside the value attribute of an HTML <input> element, echoed directly without esc_attr(). An attacker can therefore break out of the attribute context and inject event handlers or script content.
Attack Vector
Exploitation is remote and requires no authentication or user interaction beyond an administrator later loading the order. The attacker submits a crafted email string through the public booking checkout form. When the order is opened in the WordPress admin editorder view, the payload escapes the value="..." context and executes in the administrator's browser.
The vulnerability manifests in the saveorder() controller and the editorder default template. See the WordPress Plugin Controller Code and the WordPress Plugin Default Template for the affected code paths.
Detection Methods for CVE-2026-16143
Indicators of Compromise
- Booking records containing unusual characters in the customer email field, particularly double quotes, angle brackets, or on*= event handler substrings.
- WordPress admin sessions initiating unexpected outbound requests immediately after opening an order in the editorder view.
- New administrator accounts, modified user roles, or unexpected plugin/theme installations following administrative access to booking records.
Detection Strategies
- Inspect the plugin's order database tables for custmail values that do not conform to standard email syntax (RFC 5322).
- Monitor web server logs for POST requests to the booking checkout endpoint containing script-like payloads or attribute-breaking characters.
- Deploy Content Security Policy (CSP) violation reporting to surface unexpected inline script execution in WordPress admin pages.
Monitoring Recommendations
- Alert on WordPress admin activity that follows a pattern of loading editorder views and issuing privileged actions in rapid succession.
- Track file integrity for WordPress core, plugin files, and the wp-config.php file to detect post-exploitation tampering.
- Correlate administrator browser telemetry with plugin usage to detect script execution originating from booking-related admin views.
How to Mitigate CVE-2026-16143
Immediate Actions Required
- Update the VikRentItems plugin to a version later than 1.2.1 as soon as the vendor releases a patched build. Review the WordPress Plugin Change Log for the fix commit.
- Audit existing booking records for injected payloads in the custmail field and sanitize or delete affected entries.
- Rotate WordPress administrator credentials and invalidate active sessions if suspicious admin activity is observed.
Patch Information
The vendor addressed the vulnerability by updating the editorder template to properly escape the stored email value before rendering it into the HTML value attribute. Details are documented in the Wordfence Vulnerability Report and the WordPress Plugin Change Log.
Workarounds
- Temporarily disable the VikRentItems plugin until a patched version is installed.
- Restrict access to the WordPress admin editorder view via IP allowlisting or additional authentication controls at the web server level.
- Deploy a Web Application Firewall (WAF) rule to block booking submissions containing HTML attribute-breaking characters such as double quotes and angle brackets in the email field.
# Example WAF rule (ModSecurity syntax) to block XSS-like payloads in the custmail field
SecRule ARGS:custmail "@rx (?i)(<script|onerror=|onload=|\"\s*on\w+=)" \
"id:1026161430,phase:2,deny,status:403,log,msg:'CVE-2026-16143 XSS attempt in VikRentItems custmail'"
Disclaimer: This content was generated using AI. While we strive for accuracy, please verify critical information with official sources.

