Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessRead HTTP Date header to time server clock
-
DeliveryPredict md5(time()) placeholder namespace
-
ExploitSubmit crafted 'comment' payload
-
ExecutionPayload preserved through HTML Minify
-
PersistStored script served in page
-
ImpactExecutes in visitor browser (scope change)
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A05:2025 - Injection
ASVS 5.0
V1 - Encoding and Sanitization Output encoding, context-aware escaping
MITRE ATT&CK
2 techniques across 2 tactics: Initial Access, Execution The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | Exploitation requires HTML Minify to be enabled AND the default 'mfunc' entry to be present in the ignored-comment stems list; both conditions must hold for the injected 'comment' content to survive minification. Additionally, the attacker must successfully predict the md5(time()) placeholder namespace, which they derive by reading the server clock from the HTTP Date response header, and the prediction only succeeds within the applicable time window. Limiting factors: HTML Minify is a non-default-on feature, the timing/namespace-prediction requirement (reflected as AC:H) reduces reliability, and impact is realized only when a user subsequently loads the injected page. No authentication is required (PR:N). |
| Impact | This is a genuine but conditional, moderate-severity issue rather than a top-tier emergency. The provided CVSS 3.1 vector (AV:N/AC:H/PR:N/UI:N/S:C/C:L/I:L/A:N, base 5.4) shows an unauthenticated (PR:N) network-reachable stored XSS with only Low confidentiality and integrity impact and a scope change, but crucially carries AC:H - and the description tells us exactly why: exploitation depends on the attacker predicting the md5(time()) placeholder namespace by reading the server clock from the HTTP Date response header within a limited time window, and on a specific feature state (HTML Minify enabled with the default 'mfunc' entry in the ignored-comment stems list). vuln.today assigns a 'this_month' decision label, consistent with a real-but-not-urgent priority. No EPSS score, no CISA KEV listing, and no SSVC decision record were supplied, so exploitation probability and automatability cannot be quantified from this input. No working exploit is referenced - the links are the Wordfence advisory and source/patch artifacts, not exploit code. Net: a legitimately exploitable unauthenticated stored XSS in a very widely deployed plugin, but the AC:H timing/prediction requirement and the feature-state precondition meaningfully reduce real-world likelihood versus the raw 'unauthenticated network' framing; patch on a normal priority cycle rather than as a drop-everything emergency. |
| Exploit ScenarioDerived | On a site running W3 Total Cache (<=2.10.7) with HTML Minify enabled and the default 'mfunc' ignored-comment stem present, an unauthenticated attacker submits a crafted 'comment' value and reads the server's HTTP Date response header to predict the md5(time()) placeholder namespace used by the minifier within the applicable window. If the prediction lands, the attacker's script is stored and preserved through minification so it executes in the browser of any user who later loads the injected page. No public exploit code is referenced; the AC:H timing-prediction step makes reliable exploitation non-trivial. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Oct 31, 2026
Stored cross-site scripting in the WordPress plugin W3 Total Cache (all versions up to and including 2.10.7) lets unauthenticated attackers inject arbitrary web scripts through the 'comment' parameter, which then execute when a user loads the injected page. The flaw is not unconditional: HTML Minify must be enabled, the default 'mfunc' entry must remain in the ignored-comment stems list, and the attacker must predict the md5(time()) placeholder namespace by reading the server clock from the HTTP Date response header within the applicable time window, which is why the assessed vector carries AC:H. No public exploit code or confirmed active exploitation was identified at time of analysis, and the vendor has published an upstream fix commit plus a changeset for the affected IgnoredCommentPreserver code; this is a genuine but conditional, moderate-severity issue rather than a top-tier emergency.
RemediationAI
Upstream fix available (PR/commit); released patched version not independently confirmed - the referenced remediation is the GitHub commit 35c6896332aff6b41888db0595cf09b4c98c814c in BoldGrid/w3-total-cache and the accompanying changeset https://plugins.trac.wordpress.org/changeset/3757452/w3-total-cache/trunk/lib/Minify/Minify/IgnoredCommentPreserver.php, so administrators should update to a W3 Total Cache release that includes those changes once it is confirmed available from the plugin repository. Where updating is not immediately possible, the exposure can be removed by disabling HTML Minify in the plugin's Minify settings, with the trade-off that page HTML is no longer minified and delivered page size and request counts increase, and by removing the default 'mfunc' entry from the ignored-comment stems list, with the trade-off that dynamic mfunc-style comment markers used by the minifier will no longer be preserved and may break that functionality. Both conditions must hold for the injection to survive minification, so removing either one closes this path; consult the Wordfence advisory for the official guidance.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 1 package in euvd
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
W3 Total Cache implements its own HTML/CSS/JS minifier under lib/Minify, which preserves comments that match configured 'ignored comment stems' so that dynamic markers survive minification. The 'mfunc' stem is in that default list, and IgnoredCommentPreserver.php is the component responsible for stashing and restoring those comments; the vulnerability is a CWE-79 improper neutralization of input during web page generation that arises because the 'comment' parameter content is insufficiently sanitized on input and insufficiently escaped on output when it passes through that preservation path and is later rendered. The source commit referenced in the advisory touches Minify_Plugin.php and Minify_MinifiedFileRequestHandler.php, adding a routine that materializes missing disk-based minify artifacts before rewrite URLs are emitted, alongside the changeset to IgnoredCommentPreserver.php, indicating the fix hardens how preserved comment content and minify placeholders are handled. Because injection only survives when HTML Minify is active and the 'mfunc' stem is present, and because the placeholder namespace is derived from md5(time()), the payload's placement depends on an attacker reading the HTTP Date header to approximate server time - reflected in the CVSS:3.1 vector AV:N/AC:H/PR:N/UI:N/S:C/C:L/I:L/A:N. The scope change (S:C) captures that the injected script executes in the context of pages served by the affected site rather than staying confined to the vulnerable component.
Know when W3 Total Cache gets its next vulnerability
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
Severity by source
AV:N/AC:H/PR:N/UI:N/S:C/C:L/I:L/A:N
Unauthenticated and network-reachable (PR:N/AV:N), but the md5(time()) namespace-prediction/timing window justifies AC:H; stored XSS executing in other users' browsers gives S:C with C:L/I:L and no availability impact.
Primary rating from Vendor (Wordfence).
CVSS VectorNVD
DescriptionNVD
The W3 Total Cache plugin for WordPress is vulnerable to Stored Cross-Site Scripting via the 'comment' parameter in all versions up to, and including, 2.10.7 due to insufficient input sanitization and output escaping. This makes it possible for unauthenticated attackers to inject arbitrary web scripts in pages that will execute whenever a user accesses an injected page. This requires HTML Minify to be enabled with the default 'mfunc' entry present in the ignored-comment stems list, and exploitation depends on the attacker predicting the md5(time()) placeholder namespace by reading the server clock via the HTTP Date response header within the applicable time window.
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Cross-Site Scripting occurs when an application accepts untrusted data and sends it to a web browser without proper validation or encoding.
More in W3 Total Cache
View allThe W3 Total Cache plugin for WordPress is vulnerable to Information Exposure in all versions up to, and including, 2.8.
W3 Total Cache plugin for WordPress exposes security tokens to unauthenticated remote attackers through User-Agent heade
pub/sns.php in the W3 Total Cache plugin before 0.9.4 for WordPress allows remote attackers to read arbitrary files via
The W3 Total Cache plugin before 0.9.4.1 for WordPress does not properly handle empty nonces, which allows remote attack
The W3 Total Cache WordPress plugin before 2.1.5 was affected by a reflected Cross-Site Scripting (XSS) issue within the
The W3 Total Cache WordPress plugin before 2.1.4 was vulnerable to a reflected Cross-Site Scripting (XSS) security vulne
Unauthenticated arbitrary code execution affects the W3 Total Cache WordPress caching plugin in all versions up to and i
The W3 Total Cache WordPress plugin before 2.1.3 did not sanitise or escape some of its CDN settings, allowing high priv
Cross-site scripting (XSS) vulnerability in the W3 Total Cache plugin before 0.9.4.1 for WordPress, when debug mode is e
Stored cross-site scripting in the W3 Total Cache plugin for WordPress (all versions up to and including 2.10.6) lets un
Stored cross-site scripting in the W3 Total Cache WordPress plugin, affecting all versions up to and including 2.10.7, a
Stored Cross-Site Scripting in W3 Total Cache (WordPress plugin) versions up to and including 2.10.5 allows unauthentica
EUVD-2026-114597
GHSA-59h3-w5qx-76fv
NVD
CVE.org
EPSS
Exploit-DB