The PhastPress plugin for WordPress is vulnerable to Unauthenticated Arbitrary File Read via null byte injection in all versions up to, and including,...
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.
AI Analyst Comment
Remediation
Update The PhastPress plugin for WordPress is vulnerable to Unauthenticated Arbitrary File Read via null byte injection in all versions up Multiple Products to the latest version. Monitor for exploitation attempts and review access logs.
Executive Summary:
A critical vulnerability exists in the PhastPress plugin for WordPress, allowing unauthenticated attackers to read any file on the web server. By exploiting this flaw, an attacker could access highly sensitive information, such as the
wp-config.phpfile containing database credentials, which could lead to a complete compromise of the website and its data.Vulnerability Details
CVE-ID: CVE-2025-14388
Affected Software: PhastPress plugin for WordPress
Affected Versions: All versions up to, and including, 3.7
Vulnerability: The vulnerability is an Unauthenticated Arbitrary File Read caused by a null byte injection flaw. The plugin validates file extensions on a URL-decoded path but builds the final file system path using a different function that truncates the string at a null byte. An unauthenticated attacker can craft a special request for a sensitive file (e.g.,
wp-config.php), append a double URL-encoded null byte (%2500), and then add a permitted extension like.txt. The extension check passes, but the file path processing stops at the null byte, causing the server to read and return the contents of the sensitivewp-config.phpfile instead of the non-existent.txtfile.Business Impact
This vulnerability is rated as critical with a CVSS score of 9.8, reflecting the ease of exploitation and the severity of its impact. Successful exploitation allows an attacker to read sensitive configuration files, most notably
wp-config.php. This file contains the database username, password, and host, which an attacker can use to gain direct access to the website's database. The potential consequences include theft of all website data (including user information), data modification or deletion, and a complete site takeover, leading to significant reputational damage, financial loss, and potential regulatory fines.Remediation Plan
Immediate Action: Immediately update the PhastPress plugin for WordPress to the latest patched version (greater than 3.7). After patching, thoroughly review web server access logs for any signs of past exploitation attempts.
Proactive Monitoring: System administrators should actively monitor web server logs (e.g., Apache, Nginx) for suspicious requests. Specifically, look for GET requests containing double URL-encoded null bytes (
%2500) in the URI, especially those targeting sensitive files likewp-config.php,.htaccess, or other critical server configuration files.Compensating Controls: If immediate patching is not feasible, consider the following mitigating actions:
%00or%2500).wp-config.phpare not readable by the web server process if possible, although this may impact site functionality.Exploitation Status
Public Exploit Available: False
Analyst Notes: As of Dec 23, 2025, there is no known public exploit code for this vulnerability. However, the vulnerability is a classic null byte injection, and the detailed public description provides a clear roadmap for attackers to develop an exploit. Organizations should assume that exploitation will occur in the near future.
Analyst Recommendation
Given the critical severity (CVSS 9.8), the lack of authentication required for exploitation, and the high-value target of WordPress configuration files, this vulnerability poses an immediate and severe threat to affected organizations. We strongly recommend that all users of the PhastPress plugin apply the vendor-supplied patch immediately. Do not wait for evidence of active exploitation or for this CVE to be added to the CISA KEV list; the risk of a full site compromise is too high to delay action.