CVE-2026-83627: Hummingbird – Speed Optimization, Caching, Minify, Compress & CDN <= 3.21.0 - Unauthenticated Remote Code Execution via Cookie Name in Page Cache Debug Log
The Hummingbird – Speed Optimization, Caching, Minify, Compress & CDN plugin for WordPress is vulnerable to Remote Code Execution in all versions up to, and including, 3.21.0 via the log_msg() function in core/modules/class-page-cache.php. The page-cache debug log is written to wp-content/wphb-logs/page-caching-log.php, a directly web-accessible PHP file that is supposed to be protected by a leading '<?php die(); ?>' header. That header is guarded by class_exists( 'Filesystem' ), which can never match because class_exists() resolves string arguments in the global namespace while the class is Hummingbird\Core\Filesystem; when the log is created during a front-end request the header is therefore omitted entirely. get_cookies() then writes the raw name of any cookie matching the wphb_cache_ prefix into that file without sanitization. This makes it possible for unauthenticated attackers to write arbitrary PHP into the log file with a single anonymous request and execute it by requesting the file directly, resulting in full remote code execution. Exploitation requires the site administrator to have enabled Page Caching with the Debug Log option (non-default), and the log file to be created during a front-end request — a state reached by the plugin's own 'Clear logs' action, any cache flush, or unattended via the plugin's daily log-rotation cron, which can strip the protective header from an existing log file.
Security readout for executives and security teams
Plain-English summary
A configuration-dependent flaw in the WordPress Hummingbird plugin can let an unauthenticated internet visitor place executable PHP in a web-accessible debug log. Successful exploitation could give the attacker full control of the website and its data. Page Caching and its non-default Debug Log must be enabled, limiting exposure but not impact.
Executive priority
Prioritize same-day investigation and remediation for internet-facing sites meeting the configuration conditions. The prerequisite is non-default, but impact is complete server-side code execution without authentication. If exposure is confirmed, involve incident response because upgrading prevents future exploitation but does not remove an existing compromise.
Technical view
Through version 3.21.0, page-cache logging can omit its intended PHP termination header because a namespace-sensitive class check fails. The logger then records unsanitized cookie names beginning with wphb_cache_ into a directly accessible PHP file. An anonymous request can consequently introduce PHP content that executes when the log is requested.
Likely exposure
Internet-facing WordPress sites running Hummingbird 3.21.0 or earlier are exposed only when Page Caching and Debug Log are enabled. The vulnerable file must also be created or recreated by a front-end request, cache flush, log clearing, or daily rotation. Sites without that configuration are not shown as exploitable by the supplied evidence.
Exploitation context
The vulnerability is network-accessible, requires no account or user interaction, and carries CVSS 3.1 score 9.8. A successful attack could compromise confidentiality, integrity, and availability. The supplied record is not in KEV and provides no evidence of active exploitation; absence from KEV does not establish that exploitation has not occurred.
Researcher notes
CWE-94 applies. The supplied explanation ties exploitation to a failed global-namespace class_exists check, raw prefixed cookie names, and a PHP log beneath wp-content. Official WordPress source and changeset links support code review. Evidence does not establish active exploitation, affected hosting environments beyond WordPress, or whether every intermediate version after 3.21.0 is safe.
Mitigation direction
Upgrade to Hummingbird 3.21.2 or a newer vendor-supported release after confirming current vendor guidance.
Until upgraded, disable the Page Caching Debug Log.
Restrict direct web access to wp-content/wphb-logs after validating application compatibility.
Treat suspicious log content or access as a potential incident and follow established response procedures.
Validation and detection
Inventory WordPress sites and identify Hummingbird versions through 3.21.0.
Confirm whether Page Caching and its Debug Log are enabled.
Inspect page-caching-log.php safely on disk; do not request potentially malicious PHP through the web server.
Review web logs for requests involving page-caching-log.php and suspicious wphb_cache_ cookie names.
After remediation, verify the installed version and confirm the debug log is disabled or protected.
Generated from the cited source records. This long-tail analysis has not been individually reviewed by a named human.
Potential ATT&CK relevance
Conservative CVE-to-ATT&CK context
These mappings and lookup hints may be relevant to the vulnerability behavior, CWE, affected product, or exposure path. Glexia-inferred context is not an official MITRE, ATT&CK, CWE, or CVE Program mapping.
ATT&CK lookup starting points
Use these exact CWE pages and searches to review the Glexia ATT&CK library from this CVE's weakness and description context.
cwe · medium confidence lookup
CWE-94: Code execution behavior lookup
Code execution and unsafe deserialization weaknesses often justify reviewing execution behavior and process telemetry. Open the exact CWE lookup page first, then review the ATT&CK searches from that MITRE weakness context. This is a Glexia lookup hint, not an official ATT&CK mapping.
The CVE wording references code or command execution, so execution technique review may help defensive triage. This is a Glexia inferred lookup path, not an official MITRE, ATT&CK, or CVE Program mapping.
These fields come from the CVE record and ADP containers, not from Glexia's Take. They preserve time-varying source decisions such as CISA SSVC, KEV status, CVSS metrics, and provider references.
1CVSS vectors
5Timeline events
1ADP providers
6Source links
SSVC decision data
CISA-ADPCISA Coordinator
Timestamp
Version
2.0.3
Exploitation: noneAutomatable: yesTechnical Impact: total
CVSS vector scores
1 official score
We collect every scored CVSS vector available in the official CNA and ADP containers. When more than one version is present, the table keeps the source vectors side by side instead of collapsing them into the highest score.
CWE links open Glexia weakness intelligence pages with official CWE context, developer remediation guidance, and related CVE mappings.
CWE-94 · source CWE mapping
Improper Control of Generation of Code ('Code Injection')
Improper Control of Generation of Code ('Code Injection') represents a recurring weakness pattern that can create exploitable paths when design, validation, or implementation controls are missing.