Executive Intelligence Brief
A critical vulnerability (CVE-2026-83627) with a CVSS score of 9.8 has been discovered in the Hummingbird Performance plugin for WordPress. This vulnerability allows unauthenticated attackers to execute arbitrary code on affected sites. The plugin, used for speed optimization, caching, minification, compression, and CDN integration, is vulnerable in all versions up to and including 3.21.0. Exploitation requires the site administrator to have enabled Page Caching with the Debug Log option. Immediate patching is recommended.
Threat Overview
The Hummingbird Performance plugin, developed by WPMU DEV, is a popular WordPress plugin used for optimizing website performance through features like caching, minification, compression, and content delivery networks (CDNs). The plugin is widely used across various WordPress deployments, making this vulnerability particularly concerning.
The vulnerability was discovered in the plugin's page caching functionality, specifically in the log_msg() function located in core/modules/class-page-cache.php. This function is responsible for writing debug logs to a file named page-caching-log.php located in the wp-content/wphb-logs/ directory. The log file is directly web-accessible and is intended to be protected by a <?php die(); ?> header. However, due to a namespace resolution issue with the class_exists() function, this protective header is omitted when the log file is created during a front-end request.
The vulnerability allows unauthenticated attackers to write arbitrary PHP code into the log file by sending a specially crafted request with a cookie matching the wphb_cache_ prefix. This code can then be executed by directly accessing the log file, leading to full remote code execution (RCE).
Technical Deep Dive
Vulnerability Classification
The vulnerability is classified as CWE-94: Improper Control of Generation of Code (Code Injection). This type of vulnerability occurs when an application generates code that is executed without proper controls, allowing an attacker to inject malicious code.
The CVSS vector for this vulnerability is CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H, indicating a critical severity with a base score of 9.8.
Root Cause Analysis
The root cause of this vulnerability lies in the way the protective header is guarded in the class-page-cache.php file. The class_exists() function is used to check if the Filesystem class exists, but this check is performed in the global namespace, which does not match the namespaced class Hummingbird\Core\Filesystem. As a result, the protective header is not added to the log file when it is created during a front-end request.
Additionally, the get_cookies() function writes the raw name of any cookie matching the wphb_cache_ prefix into the log file without proper sanitization, allowing an attacker to inject arbitrary PHP code.
Attack Vector & Chain
The attack vector for this vulnerability involves an unauthenticated attacker sending a specially crafted request with a malicious cookie to a vulnerable WordPress site. The request must be processed during a front-end request, and the site administrator must have enabled Page Caching with the Debug Log option.
The attack chain is as follows:
- Initial Access: The attacker sends a request with a malicious cookie to the vulnerable WordPress site.
- Code Injection: The
log_msg()function writes the malicious cookie value into the log file without sanitization. - Code Execution: The attacker requests the log file directly, executing the injected PHP code.
Exploitation Scenario Walkthrough
Scenario: Remote Code Execution via Malicious Cookie
Reconnaissance: An attacker discovers a vulnerable WordPress site with the Hummingbird Performance plugin installed and configured with Page Caching and Debug Log enabled.
Weaponization: The attacker prepares a malicious cookie with a PHP code snippet that, when injected into the log file, will allow them to execute arbitrary code on the site.
Delivery & Exploitation: The attacker sends a request to the vulnerable site with the malicious cookie. The log_msg() function writes the cookie value into the log file. The attacker then requests the log file directly, executing the injected PHP code and achieving remote code execution.
Post-Exploitation: The attacker may escalate privileges, move laterally within the network, or deploy malware to further compromise the site.
Impact Realization: The attacker achieves full remote code execution, allowing them to modify the site, extract sensitive data, or use the site as a pivot point for further attacks.
Exploitation in the Wild
There is no indication that this vulnerability is currently being actively exploited in the wild. However, given its critical severity and the potential for easy exploitation, it is likely that attackers will target vulnerable sites soon.
Impact Analysis
Direct Impact
The direct impact of this vulnerability is remote code execution (RCE) on affected WordPress sites. This can lead to full control of the site, allowing attackers to inject malware, deface the site, or use it for malicious activities.
Downstream & Cascading Effects
The downstream effects of this vulnerability can include:
- Supply Chain Risk: Compromised sites can be used to attack visitors or to distribute malware.
- Regulatory Implications: Breaches resulting from this vulnerability could lead to regulatory and compliance issues.
- Operational Disruption: Exploitation can lead to site downtime, impacting business operations.
Affected Products & Versions
The Hummingbird Performance plugin is affected in all versions up to and including 3.21.0. The vulnerability has been patched in version 3.21.2.
Detection & Threat Hunting
Indicators of Compromise
Indicators of compromise (IoCs) for this vulnerability may include:
- Unusual entries in the
page-caching-log.phpfile. - Suspicious requests with malicious cookies.
- Anomalous activity in the
wp-content/wphb-logs/directory.
Detection Rules & Signatures
Detection rules for this vulnerability may involve monitoring for:
- Requests to the
page-caching-log.phpfile. - Cookies matching the
wphb_cache_prefix. - Suspicious PHP code injection attempts.
Threat Hunting Queries
Threat hunting queries may include searching for:
- Logs of requests to the
page-caching-log.phpfile. - Anomalous cookie values.
- Unusual activity in the
wp-content/wphb-logs/directory.
Remediation & Hardening
Immediate Actions (0-24 hours)
Immediate actions to remediate this vulnerability include:
- Updating the Hummingbird Performance plugin to version 3.21.2 or later.
- Disabling the Page Caching with Debug Log option if not required.
Short-Term Hardening (1-7 days)
Short-term hardening measures may include:
- Monitoring for suspicious activity related to the
page-caching-log.phpfile. - Implementing additional security controls, such as web application firewalls (WAFs).
Strategic Recommendations
Strategic recommendations for preventing similar vulnerabilities include:
- Regularly updating plugins and themes.
- Implementing a robust security monitoring program.
- Conducting regular security audits and penetration testing.
Analyst Assessment
This vulnerability is considered critical due to its potential for remote code execution and the relatively low barriers to exploitation. Organizations using the Hummingbird Performance plugin should prioritize immediate patching and implement additional security measures to prevent similar vulnerabilities.
Sources
- National Vulnerability Database (NVD) - CVE-2026-83627
- Wordfence - CVE-2026-83627