WordPress Core < 4.5.3 - Bypass sanitize_file_name Protection
Strategic Overview
- Status
- Patched in 3.7.15
- Affected Core
- WordPress 4.5
- Affected Version
3.7 – 4.5.2 · 10 branches- CVSS
- 7.3High
- Weakness type
- CWE-434 · Unrestricted Upload of File with Dangerous Type
- CVE
CVE-2016-5839
At a glance
CVE-2016-5839 is a high-severity Unrestricted Upload of File with Dangerous Type vulnerability in the WordPress 4.5 WordPress release line, affecting 3.7 – 4.5.2 · 10 branches. It carries a CVSS score of 7.3 (reachable over the network; low attack complexity). Exploitation requires no authentication. The issue is fixed in version 3.7.15; sites on affected versions should update now. Disclosed June 2016, reported by Peter Westwood.
Vulnerability Overview
WordPress before 4.5.3 allows remote attackers to bypass the sanitize_file_name protection mechanism via unspecified vectors.
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.
CWE-434: Unrestricted Upload of File with Dangerous Type
Reaching this weakness in WordPress 4.5 3.7 – 4.5.2 · 10 branches takes a caller who can reach the endpoint. An unrestricted file upload lets a caller store a file whose type or destination the application does not properly constrain.
If an uploaded file lands anywhere the server will execute, the flaw becomes remote code execution and the site should be treated as fully compromised. For WordPress 4.5 the fix is 3.7.15: builds 3.7 – 4.5.2 · 10 branches are affected, anything from 3.7.15 onward is not.
Remediation
Update to one of the following versions, or a newer patched version: 3.7.15, 3.8.15, 3.9.13, 4.0.12, 4.1.12, 4.2.9, 4.3.5, 4.4.4, 4.5.3
How does WordSec protect against this?
The attempt arrives as an ordinary request to WordPress 4.5: WordSec's web application firewall inspects request payloads before WordPress loads them. Classes like this one can leave something behind, so the staged malware scanner is the second half: it looks for dropped files and modified code rather than for the request that created them. None of that substitutes for the fix: updating to 3.7.15 is the step that ends it.
- Firewall
- Scanner
- Alerts
External References
Related records
Same weakness class
- 8.8CVE-2011-3129: WordPress Core <= 3.1.2 Arbitrary File Upload
CVE-2011-3129 - 8.8CVE-2009-3890: WordPress Core <= 2.8.5 Arbitrary File Upload
CVE-2009-3890 - 8.8CVE-2007-3544: WordPress Core <= 2.2.1 Arbitrary File Upload
CVE-2007-3544 - 8.8CVE-2007-3543: WordPress Core <= 2.2 Arbitrary File Upload
CVE-2007-3543
Other vulnerabilities in WordPress 4.5
- 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.8WordPress Core < 6.0.3 SQL Injection via WP_Date_Query
- 9.8CVE-2021-29476: WordPress Core < 5.5.3 PHP Object Injection Gadget
CVE-2021-29476 - 9.8CVE-2017-16510: WordPress Core SQL Injection
CVE-2017-16510 - 9.8CVE-2017-14723: WordPress Core < 4.8.2 SQL Injection
CVE-2017-14723 - 9.8CVE-2007-6013: WordPress Core 1.5 - 2.3.1 Authorization Bypass
CVE-2007-6013 - 9.8CVE-2007-6318: WordPress Core < 2.3.2 SQL Injection
CVE-2007-6318
Vulnerability data © Defiant, Inc., provided under the Wordfence Intelligence T&C