Vulnerability · Published Oct 31, 2026 · Assigned by Wordfence
CVE-2026-88942Product Filter for WooCommerce by WBW <= 3.4.6 - Reflected Cross-Site Scripting via 'wpf_fid' JSON Parameter
Medium 6.1
In plain English
A medium-severity cross-site scripting in Product Filter for WooCommerce by WBW from woobewoo. There are no confirmed reports of exploitation so far. The chance it is exploited in the next 30 days is estimated at 0.3% (higher than 19% of all known vulnerabilities).
Official description
The Product Filter for WooCommerce by WBW plugin for WordPress is vulnerable to Reflected Cross-Site Scripting via 'wpf_fid' JSON Parameter in all versions up to, and including, 3.4.6 due to insufficient input sanitization and output escaping. This makes it possible for unauthenticated attackers to inject arbitrary web scripts in pages that execute if they can successfully trick a user into performing an action such as clicking on a link. The vulnerability persists in versions that received the 3.4.3 patch because absint() was applied only to the getVar() read path, leaving the wpf_fid value read from the JSON-decoded filterSettings payload entirely unsanitized.
Affected products (as reported)
| Vendor | Product | Versions |
|---|---|---|
| woobewoo | Product Filter for WooCommerce by WBW | 0 – through 3.4.6 |
Weakness: CWE-79 · Vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N
References
- https://www.wordfence.com/threat-intel/vulnerabilities/id/93f80f84-68b1-4c11-8bc8-19b78e253129?source=cve
- https://plugins.trac.wordpress.org/browser/woo-product-filter/tags/3.4.4/classes/class-woobewoo-pf-response.php#L82
- https://plugins.trac.wordpress.org/browser/woo-product-filter/tags/3.4.4/modules/woofilters/class-woobewoo-pf-woofilters-controller.php#L739
- https://plugins.trac.wordpress.org/browser/woo-product-filter/tags/3.4.4/modules/woofilters/class-woobewoo-pf-woofilters-controller.php#L513
- https://plugins.trac.wordpress.org/browser/woo-product-filter/tags/3.4.4/modules/woofilters/class-woobewoo-pf-woofilters-controller.php#L363
- https://plugins.trac.wordpress.org/browser/woo-product-filter/tags/3.4.4/modules/woofilters/class-woobewoo-pf-woofilters-controller.php#L359
- https://plugins.trac.wordpress.org/browser/woo-product-filter/tags/3.4.4/classes/class-woobewoo-pf-frame.php#L391
- https://plugins.trac.wordpress.org/browser/woo-product-filter/tags/3.4.3/classes/class-woobewoo-pf-response.php#L82
- https://plugins.trac.wordpress.org/browser/woo-product-filter/tags/3.4.3/modules/woofilters/class-woobewoo-pf-woofilters-controller.php#L739
- https://plugins.trac.wordpress.org/browser/woo-product-filter/tags/3.4.3/modules/woofilters/class-woobewoo-pf-woofilters-controller.php#L513
- https://plugins.trac.wordpress.org/browser/woo-product-filter/tags/3.4.3/modules/woofilters/class-woobewoo-pf-woofilters-controller.php#L363
- https://plugins.trac.wordpress.org/browser/woo-product-filter/tags/3.4.3/modules/woofilters/class-woobewoo-pf-woofilters-controller.php#L359
- https://plugins.trac.wordpress.org/browser/woo-product-filter/tags/3.4.3/classes/class-woobewoo-pf-frame.php#L391
- https://github.com/wpcodefactory/woo-product-filter
- https://plugins.trac.wordpress.org/changeset/3757178/woo-product-filter/trunk/classes/class-woobewoo-pf-response.php