Critical Arbitrary File Upload in WordPress Extra Checkout Options Plugin Leads to RCE (CVE-2026-14270)
A critical arbitrary file upload vulnerability (CVE-2026-14270) in the Extra Checkout Options plugin for WordPress, affecting versions up to and including 2.3.2, allows low-privileged authenticated users to modify upload allowlists and upload malicious PHP files via an AJAX action, ultimately achieving remote code execution on the server.
A significant security vulnerability, CVE-2026-14270, has been identified in the Extra Checkout Options plugin for WordPress, affecting all versions up to and including 2.3.2. This flaw enables low-privileged authenticated users, specifically those with Subscriber-level access or higher, to achieve remote code execution (RCE) on affected WordPress installations. The vulnerability stems from a combination of missing authorization and inadequate nonce validation within the eco_save_settings() function, which allows attackers to modify the tc_eco_custom_file_types upload allowlist to include PHP files. This, coupled with insufficient authorization on the wc_eco_upload_file AJAX action, permits the upload of malicious PHP files using frontend nonces typically found on cart and checkout pages. Exploitation of this vulnerability grants attackers full control over the compromised WordPress site and potentially the underlying server.
Attack Chain
- An authenticated attacker with Subscriber-level privileges or higher logs into the vulnerable WordPress site.
- The attacker sends a crafted HTTP POST request to
wp-admin/admin-ajax.phpwith theaction=eco_save_settingsparameter, exploiting missing authorization and nonce validation to modify thetc_eco_custom_file_typesallowlist to include PHP file extensions. - The attacker navigates to a cart or checkout page on the WordPress site to obtain a valid frontend upload nonce.
- Using the acquired nonce, the attacker sends another crafted HTTP POST request to
wp-admin/admin-ajax.phpwithaction=wc_eco_upload_file, uploading a malicious PHP file (e.g., a web shell). - Due to insufficient authorization on the
wc_eco_upload_fileAJAX action, the plugin processes and saves the malicious PHP file to an accessible directory on the WordPress server. - The attacker then makes a direct HTTP request to the URL of the newly uploaded PHP file.
- The web server executes the malicious PHP file, granting the attacker remote code execution capabilities on the underlying system.
Impact
Successful exploitation of CVE-2026-14270 grants attackers remote code execution on the compromised WordPress server. This can lead to severe consequences, including complete takeover of the website, defacement, theft of sensitive data (such as customer information or payment details), installation of backdoors for persistent access, or using the compromised server as a platform for launching further attacks (e.g., botnet participation, phishing campaigns). The impact extends beyond the immediate website to potentially affecting customer trust and leading to significant financial and reputational damages for the affected organization.
Recommendation
- Immediately update the Extra Checkout Options plugin to a version patched against CVE-2026-14270.
- Deploy the provided Sigma rules to your webserver logs or WAF to detect attempts to exploit CVE-2026-14270.
- Monitor web server access logs for HTTP POST requests to
/wp-admin/admin-ajax.phpwithaction=eco_save_settingsandrequest_bodycontaining "php" withintc_eco_custom_file_types. - Monitor web server access logs for HTTP POST requests to
/wp-admin/admin-ajax.phpwithaction=wc_eco_upload_fileandrequest_bodyindicating a PHP file upload (e.g., containing<?phpor.phpin filenames). - Review file system integrity monitoring logs for unexpected PHP file creations in WordPress upload directories.
Detection coverage 2
Detect CVE-2026-14270 Pre-Exploitation - Extra Checkout Options Plugin File Type Allowlist Modification
highDetects attempts by low-privileged users to exploit CVE-2026-14270 by modifying the allowed file types in the Extra Checkout Options plugin to enable PHP uploads, a prerequisite for remote code execution.
Detect CVE-2026-14270 Exploitation - Extra Checkout Options Plugin PHP File Upload
criticalDetects the exploitation of CVE-2026-14270 by monitoring for POST requests to the wc_eco_upload_file AJAX action containing a PHP file, indicating a remote code execution attempt.
Detection queries are available on the platform. Get full rules →