WordPress Core < 6.0.3 - SQL Injection via WP_Date_Query
Strategic Overview
- Status
- Patched in 3.7.40
- Affected Core
- WordPress 6.0
- Affected Version
3.6.1 – 6.0.2 · 25 branches- CVSS
- 9.8Critical
- Weakness type
- CWE-89 · Improper Neutralization of Special Elements used in an SQL Command ('SQL Injection')
- CVE
CVE pending
At a glance
This record tracks a critical-severity Improper Neutralization of Special Elements used in an SQL Command ('SQL Injection') vulnerability in the WordPress 6.0 WordPress release line, affecting 3.6.1 – 6.0.2 · 25 branches. It carries a CVSS score of 9.8 (reachable over the network; low attack complexity; high confidentiality, integrity, availability impact). Exploitation requires no authentication. The issue is fixed in version 3.7.40; sites on affected versions should update now. Disclosed October 2022, reported by mikemyers.
Vulnerability Overview
WordPress Core is vulnerable to SQL Injection in versions up to 6.0.3. This is due to insufficient escaping on where “AND” and “OR” present in the query. This may make it possible for attackers to achieve SQL Injection when another plugin or theme is installed on the site that allows WP_Date_Query to be used insecurely.
Technical Analysis
The vector marks this flaw as remotely reachable over the network, with low attack complexity — no special timing or configuration is needed, and no privileges on the target site, and no interaction from a victim user. A successful exploit has high impact on confidentiality, integrity, availability — full site compromise territory.
CWE-89: Improper Neutralization of Special Elements used in an SQL Command ('SQL Injection')
WordPress 6.0 3.6.1 – 6.0.2 · 25 branches carries this weakness at AND, and reaching it takes a caller who can reach the endpoint. SQL injection happens when request data is concatenated into a query instead of being bound as a parameter, letting an attacker change the structure of the statement rather than just its values.
A working injection can read any table the database user can see, which on a WordPress install means user records, password hashes and session or API secrets stored in options. For WordPress 6.0 the fix is 3.7.40: builds 3.6.1 – 6.0.2 · 25 branches are affected, anything from 3.7.40 onward is not.
Remediation
Update to one of the following versions, or a newer patched version: 3.7.40, 3.8.40, 3.9.38, 4.0.37, 4.1.37, 4.2.34, 4.3.30, 4.4.29, 4.5.28, 4.6.25, 4.7.25, 4.8.21, 4.9.22, 5.0.18, 5.1.15, 5.2.17, 5.3.14, 5.4.12, 5.5.11, 5.6.10, 5.7.8, 5.8.6, 5.9.5, 6.0.3
How does WordSec protect against this?
The attempt arrives as an ordinary request to WordPress 6.0: WordSec's web application firewall inspects request payloads before WordPress loads them. None of that substitutes for the fix: updating to 3.7.40 is the step that ends it.
- Firewall
- Alerts
External References
Related records
Same weakness class
Other vulnerabilities in WordPress 6.0
- 9.8CVE-2026-63030: WordPress Core 6.9 - 7.0.1 Remote Code Execution
CVE-2026-63030 - 9.8CVE-2024-31211: WordPress Core 6.4.0 - 6.4.1 RCE POP Chain
CVE-2024-31211 - 9.8CVE-2021-29476: WordPress Core < 5.5.3 PHP Object Injection Gadget
CVE-2021-29476 - 9.8CVE-2007-6013: WordPress Core 1.5 - 2.3.1 Authorization Bypass
CVE-2007-6013 - 9.8CVE-2007-1277: WordPress Core 2.2.1 Backdoor
CVE-2007-1277 - 9.8WordPress Core 2.1.1 Supply Chain Compromise
- 9.8CVE-2007-0107: WordPress Core <= 2.0.5 SQL Injection
CVE-2007-0107 - 9.8CVE-2006-4028: WordPress Core < 2.0.4 Privilege Escalation
CVE-2006-4028
Vulnerability data © Defiant, Inc., provided under the Wordfence Intelligence T&C