WordPress security changelog
HIGH CVE-2026-14785 Deferred

Web Directory Free exposes unauthenticated SQL injection through listing levels

Web Directory Free through 1.7.13 registers the public w2dc_controller_request AJAX action. A request to /wp-admin/admin-ajax.php with action=w2dc_controller_request copies attacker-controlled POST values into shortcode attributes; supplying levels as an array bypasses wp_parse_id_list(), receives only trim(), and reaches w2dc_frontend_controller::where_levels_ids(), which concatenates the values into the w2dc_levels.id IN (...) SQL clause. An unauthenticated attacker can consequently alter the query and extract sensitive database information. No fixed public release is identified, and the WordPress.org plugin entry is closed.

CVE / CNA score 7.5 CVSS 3.1 · security@wordfence.com
NVD score Pending NVD has not published its own CVSS assessment.
Component
Web Directory Free
Plugin slug
web-directory-free
Affected
<= 1.7.13
Safe version
See mitigation notes
Published
Jul 28, 2026
Weakness
CWE-89 — Improper Neutralization of Special Elements used in an SQL Command ('SQL Injection')

This CVE was published Jul 28, 2026 and is one of 10 known issues for this plugin.

Update, patch or deactivate.

No fixed public release is currently available. Deactivate and replace Web Directory Free. If maintaining a private application patch, cast every levels value to an integer before constructing the query and use a safely prepared SQL expression.

No confirmed safe version is listed. Consider a vendor-supported patch or temporarily restricting the affected functionality while you assess the risk.

Deactivate only when warranted by your risk profile, or when advised by your hosting provider in the limited circumstances where the vulnerability cannot otherwise be mitigated. If you’re unsure which action is appropriate, contact Fused or your hosting provider for guidance.

Technical description

The Web Directory Free plugin for WordPress is vulnerable to generic SQL Injection via the 'levels' parameter in all versions up to, and including, 1.7.13 due to insufficient escaping on the user supplied parameter and lack of sufficient preparation on the existing SQL query. This makes it possible for unauthenticated attackers to append additional SQL queries into already existing queries that can be used to extract sensitive information from the database.

CVE / CNA vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N

Primary and upstream sources