Automated Threat Modeling

Brief Summary: CVE-2026-3396 Unauthenticated SQL Injection in WCAPF WooCommerce Ajax Product Filter Plugin

A short review of CVE-2026-3396, a high-severity, unauthenticated, time-based SQL injection in the WCAPF WooCommerce Ajax Product Filter plugin. It affects all versions up to and including 4.2.3.

CVE Analysis

5 min read

ZeroPath CVE Analysis
ZeroPath CVE Analysis

2026-04-08

Brief Summary: CVE-2026-3396 Unauthenticated SQL Injection in WCAPF WooCommerce Ajax Product Filter Plugin
Experimental AI-Generated Content

This CVE analysis is an experimental publication that is completely AI-generated. The content may contain errors or inaccuracies and is subject to change as more information becomes available. We are continuously refining our process.

If you have feedback, questions, or notice any errors, please reach out to us.

[email protected]

Introduction

An unauthenticated time-based SQL injection in the WCAPF WooCommerce Ajax Product Filter plugin lets remote attackers extract sensitive database contents from any affected WooCommerce store without logging in. The plugin has over 9,000 active installations, and the technical details are now public, so WooCommerce site operators need to address this promptly.

WCAPF (Ajax Product Filter for WooCommerce) is a WordPress plugin that adds AJAX-powered product filtering to WooCommerce storefronts. Customers use it to narrow product listings by attributes such as price, category, and author. It is not among the largest WooCommerce extensions, but 9,000+ active installations still means a meaningful number of e-commerce sites may be exposed. A single developer, Mainul Hassan, maintains the plugin, and it is listed on the official WordPress plugin repository.

Technical information

CVE-2026-3396 is classified under CWE-89 (Improper Neutralization of Special Elements used in an SQL Command). The root cause is simple. The plugin does not properly escape user-supplied input, and it does not use prepared statements when it builds SQL queries that include the post-author filter parameter.

Vulnerable code path

The vulnerability is in class-wcapf-product-filter.php. The plugin reads filter parameters by calling parse_str on the raw $_SERVER['QUERY_STRING'], which populates variables directly from the URL with no sanitization layer in between. When the filter_type is post-author, the extracted value reaches SQL query construction at several points in the file. The advisory references lines 65, 81, 689, and 739.

Because the value is neither escaped nor passed through WordPress's $wpdb->prepare() method, an attacker can inject arbitrary SQL fragments into the query.

Attack flow

An attack runs in four steps:

  1. The attacker finds a WooCommerce site running WCAPF version 4.2.3 or earlier. Detecting the plugin is trivial with standard WordPress fingerprinting techniques.

  2. The attacker sends an HTTP request to the site's product filter endpoint with a time-based blind SQL injection payload in the post-author query string parameter. The request needs no authentication cookies or tokens.

  3. The plugin's class-wcapf-product-filter.php parses the query string and passes the tainted post-author value directly into a SQL query. The injected SQL is appended to the existing query and executed against the WordPress database.

  4. The attacker measures differences in response time, the hallmark of time-based blind SQLi, and can infer database contents one character at a time. Targets include the wp_users table (usernames, password hashes, email addresses), WooCommerce order tables (customer names, addresses, order details), and any other data stored in the WordPress database.

CVSS breakdown

The CVSS 3.1 score is 7.5, with the vector AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N.

MetricValueDescription
Attack VectorNetworkExploitable remotely over the internet
Attack ComplexityLowNo specialized conditions required
Privileges RequiredNoneUnauthenticated exploitation
User InteractionNoneNo victim interaction needed
ScopeUnchangedConfined to the vulnerable component
ConfidentialityHighFull database extraction possible
IntegrityNoneNo direct data modification
AvailabilityNoneNo denial of service impact

Confidentiality is the only impact the score records, and for e-commerce databases that hold customer PII and payment metadata, it is a serious one.

Affected systems and versions

All versions of the WCAPF (WooCommerce Ajax Product Filter) plugin up to and including version 4.2.3 are vulnerable. Version 4.3.0, released on March 16, 2026, patched the vulnerability. The latest available version at the time of writing is 4.4.0.

For quick reference:

  • Vulnerable: WCAPF versions <= 4.2.3
  • Patched: WCAPF version 4.3.0 and later
  • Recommended: WCAPF version 4.4.0 (latest, includes additional escaping and coding standards improvements)
  • Platform: WordPress sites running WooCommerce with the WCAPF plugin active
  • Tested compatibility: WordPress up to version 6.9.4

Vendor security history

CVE-2026-3396 is the only cataloged vulnerability for the WCAPF plugin in the Wordfence threat intelligence database, which suggests a generally clean security record. The vendor handled this disclosure well. The patch in version 4.3.0 shipped about three weeks before Wordfence publicly disclosed the vulnerability on April 7, 2026, which points to responsible coordination between the researcher and the maintainer.

The plugin does still have a single maintainer. That is common in the WordPress ecosystem, and it warrants extra caution. Organizations that rely on single-maintainer plugins should have automated updates or monitoring in place.

References

Detect & fix
what others miss

Works with
  • GitHub
  • GitLab
  • Bitbucket
  • Azure DevOps Services
  • Gerrit
  • CVS
  • Jira
  • Linear
  • Slack
  • Security Compass
Explore integrations
Security magnifying glass visualization