Description
The PhastPress plugin for WordPress is vulnerable to Unauthenticated Arbitrary File Read via null byte injection in all versions up to, and including, 3.7. This is due to a discrepancy between the extension validation in `getExtensionForURL()` which operates on URL-decoded paths, and `appendNormalized()` which strips everything after a null byte before constructing the filesystem path. This makes it possible for unauthenticated attackers to read arbitrary files from the webroot, including wp-config.php, by appending a double URL-encoded null byte (%2500) followed by an allowed extension (.txt) to the file path.
References6
- plugins.trac.wordpress.org/browser/phastpress/tags/3.6/sdk/phas…
- plugins.trac.wordpress.org/browser/phastpress/tags/3.6/sdk/phas…
- plugins.trac.wordpress.org/browser/phastpress/tags/3.6/sdk/phas…
- plugins.trac.wordpress.org/browser/phastpress/tags/3.6/sdk/phas…
- plugins.trac.wordpress.org/changeset/3418139
- www.wordfence.com/threat-intel/vulnerabilities/id/eec9bbc0-5a68…
Metrics
- CVSS 3.1
-
9.8
CRITICAL
Score source: CNA
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H - EPSS — exploit probability
- 0% percentile: 42 · as of 11 November 2026
- CWE
- CWE-158
Could this be exploited in your environment?
A patch closes the known hole. A penetration test shows what an attacker can still reach — with proof.