CVE-2026-19089
WordPress vulnerability analysis and mitigation

Overview

CVE-2026-19089 is an unauthenticated arbitrary file upload vulnerability in the Product Input Fields for WooCommerce WordPress plugin that can lead to remote code execution (RCE). The flaw affects versions before 2.0.2 (specifically version 2.0.0 up to but not including 2.0.2). It was publicly disclosed on August 7, 2026, and added to the GitHub Advisory Database on August 10, 2026. The vulnerability carries a CVSS v3.1 base score of 9.8 (Critical) (GitHub Advisory, WPScan).

Technical details

The root cause is classified as CWE-434 (Unrestricted Upload of File with Dangerous Type). The plugin fails to validate uploaded file types when its accepted-types configuration setting is left empty — a state that the plugin's own documentation describes as intentionally accepting all file types. This design flaw means no server-side file type validation is enforced, allowing an unauthenticated attacker to upload arbitrary files (e.g., PHP web shells) via the plugin's file upload functionality. Exploitation succeeds on servers that do not independently enforce access restrictions (e.g., blocking script execution) on the upload directory (WPScan, GitHub Advisory). The vulnerability was discovered and reported by researcher Farid Narimanov (WPScan).

Impact

Successful exploitation grants an unauthenticated remote attacker full control over the affected web server, with high impact to confidentiality, integrity, and availability. An attacker can upload and execute a PHP web shell or other malicious script, enabling arbitrary command execution, data exfiltration, defacement, installation of backdoors, and lateral movement within the hosting environment. All WooCommerce stores running the affected plugin version with an empty accepted-types setting are at risk (GitHub Advisory, WPScan).

Exploitability

No public proof-of-concept (PoC) exploit code is currently available; WPScan has indicated the PoC will be published on September 7, 2026, to allow time for users to update (WPScan). There is no evidence of in-the-wild exploitation at this time, and no threat actor attribution has been reported (GitHub Advisory). The EPSS score is approximately 0.20% (Feedly data) to 0.46% (GitHub Advisory), placing it in the 38th percentile for exploitation likelihood within 30 days. The vulnerability is automatable and requires no privileges or user interaction, making it a high-priority patching target. It is not currently listed in the CISA Known Exploited Vulnerabilities (KEV) catalog.

Exploitation steps

  1. Reconnaissance: Identify WordPress sites running the Product Input Fields for WooCommerce plugin (versions 2.0.0–2.0.1) using tools like WPScan, Shodan, or by inspecting plugin directories (/wp-content/plugins/product-input-fields-for-woocommerce/).
  2. Verify vulnerable configuration: Confirm the plugin's accepted-types setting is empty (the default advertised behavior), which disables file type validation.
  3. Locate the file upload endpoint: Identify the WooCommerce product page or checkout form that exposes the plugin's file upload field to unauthenticated users.
  4. Craft malicious payload: Prepare a PHP web shell file (e.g., shell.php) containing code such as <?php system($_GET['cmd']); ?>.
  5. Upload the malicious file: Submit the PHP file via the plugin's file upload form field without authentication, bypassing any client-side restrictions.
  6. Locate the uploaded file: Determine the upload directory path (typically within wp-content/uploads/) by observing the server response or using directory enumeration.
  7. Execute remote code: Access the uploaded shell via a browser or curl (e.g., https://target.com/wp-content/uploads/shell.php?cmd=id) to achieve remote code execution on servers that do not restrict script execution in the upload directory (WPScan, GitHub Advisory).

Indicators of compromise

  • Network: Unexpected HTTP POST requests to WooCommerce product or checkout pages containing multipart file upload data with .php, .phtml, .phar, or other executable file extensions; outbound connections from the web server to unknown external IPs following file upload activity.
  • File System: Presence of PHP files (e.g., shell.php, cmd.php, *.phtml) in wp-content/uploads/ or plugin-specific upload subdirectories; newly created files with randomized names and .php extensions in upload directories.
  • Logs: Web server access logs showing POST requests to WooCommerce endpoints followed shortly by GET requests to files in wp-content/uploads/ with query parameters like cmd=, exec=, or c=; HTTP 200 responses to requests for PHP files in upload directories.
  • Process: Unusual child processes spawned by the web server process (e.g., Apache/Nginx/PHP-FPM) such as bash, sh, curl, wget, python, or nc; unexpected outbound network connections initiated by the web server user account.

Mitigation and workarounds

Upgrade immediately to Product Input Fields for WooCommerce version 2.0.2 or later, which includes proper file type validation (WPScan). As a temporary workaround, configure the plugin's accepted-types setting to explicitly list only safe, non-executable file types (e.g., jpg,png,pdf) rather than leaving it empty. Additionally, configure the web server (Apache/Nginx) to deny execution of scripts in the WordPress uploads directory (e.g., add an .htaccess rule with php_flag engine off or equivalent Nginx location block). Ensure upload directories do not have world-writable permissions beyond what is necessary.

Community reactions

The vulnerability was discovered and responsibly disclosed by security researcher Farid Narimanov, who submitted it to WPScan (WPScan). WPScan has adopted a coordinated disclosure approach, withholding the full PoC until September 7, 2026, to provide a remediation window for site administrators. No significant broader media coverage or notable social media commentary has been identified at this time.

Additional resources


SourceThis report was generated using AI

Related WordPress vulnerabilities:

CVE ID

Severity

Score

Technologies

Component name

CISA KEV exploit

Has fix

Published date

CVE-2026-19848MEDIUM6.5
  • wp-user-avatar
NoYesAug 21, 2026
CVE-2026-17559MEDIUM5.3
  • content-protector
NoYesAug 21, 2026
CVE-2026-16650MEDIUM5.3
  • charitable
NoYesAug 21, 2026
CVE-2026-15150MEDIUM5.3
  • mycred
NoYesAug 21, 2026
CVE-2026-18356LOW3.7
  • limit-login-attempts-reloaded
NoYesAug 21, 2026

Free Vulnerability Assessment

Benchmark your Cloud Security Posture

Evaluate your cloud security practices across 9 security domains to benchmark your risk level and identify gaps in your defenses.

Request assessment

Get a personalized demo

Ready to see Wiz in action?

"Best User Experience I have ever seen, provides full visibility to cloud workloads."
David EstlickCISO
"Wiz provides a single pane of glass to see what is going on in our cloud environments."
Adam FletcherChief Security Officer
"We know that if Wiz identifies something as critical, it actually is."
Greg PoniatowskiHead of Threat and Vulnerability Management