Arbitrary translation-file loading via unsanitized locale path
Published May 17, 2023 · Updated Apr 8, 2026
Path traversal in WordPress 6.2 and earlier allows remote attackers to load arbitrary translation files through the wp_lang parameter. The locale-selection code passes GET or cookie wp_lang values through sanitize_text_field, which preserves path separators before locale file lookup. No authentication is required; cross-site scripting additionally requires a crafted translation file already uploadable to the site and user interaction to render it.
Summary
What happened
Path traversal in WordPress 6.2 and earlier allows remote attackers to load arbitrary translation files through the wp_lang parameter. The locale-selection code passes GET or cookie wp_lang values through sanitize_text_field, which preserves path separators before locale file lookup. No authentication is required; cross-site scripting additionally requires a crafted translation file already uploadable to the site and user interaction to render it.
The record
- CVE
- CVE-2023-2745
- Published
- May 17, 2023
- Updated
- Apr 8, 2026
- Vendor
- WordPress.org
- Product
- WordPress
- Classifications
- CWE-22, T1190
- Attack vector
- network
- Privileges
- unauthenticated
Timeline
How it unfolded
- May 17, 2023CVE publishedPublication date reported by the CVE source.
- Apr 8, 2026Record updatedLatest update available in the CVE record.
Exploitability
Present is not the same as exploitable
Compare your product and version with the public record. A matching version still requires validation against your environment.
Is a vulnerable build present?
Compare these published version ranges with your installed build and any vendor patches.
- Affected versionversion=0 <4.1.38
- Affected versionversion=4.2 <4.2.35
- Affected versionversion=4.3 <4.3.31
- Affected versionversion=4.4 <4.4.30
- Affected versionversion=4.5 <4.5.29
- Affected versionversion=4.6 <4.6.26
- Affected versionversion=4.7 <4.7.26
- Affected versionversion=4.8 <4.8.22
- Affected versionversion=4.9 <4.9.23
- Affected versionversion=5.0 <5.0.19
- Affected versionversion=5.1 <5.1.16
- Affected versionversion=5.2 <5.2.18
- Affected versionversion=5.3 <5.3.15
- Affected versionversion=5.4 <5.4.13
- Affected versionversion=5.5 <5.5.12
- Affected versionversion=5.6 <5.6.11
- Affected versionversion=5.7 <5.7.9
- Affected versionversion=5.8 <5.8.7
- Affected versionversion=5.9 <5.9.6
- Affected versionversion=6.0 <6.0.4
- Affected versionversion=6.1 <6.1.2
- Affected versionversion=6.2 <6.2.1
What conditions does exploitation require?
What is affected?
Attacks
What attackers are doing with it
Daily unique IPs observed by Shadowserver honeypots for known exploited vulnerabilities (KEVs). Missing observations do not establish an absence of attacks.
Weakness, pattern, technique
Public exploit references
- WordPress Core 6.2 - Directory Traversalproof of concept · unverified
Labels summarize the accepted research assessment. They do not indicate a test against your environment.
Technologies
Your stack
See the directory against your own environment.
Your stack
Check the software in your environment
Book a demo to see how Hinoki identifies affected software and validates exploitability in your environment.
Book a demo