Skip to content
Laskyr

Plugins · w3-total-cache · data as of 2026-11-01

Is W3 Total Cache safe? Known vulnerabilities and latest version

No known unpatched vulnerabilities in the latest version (2.11.0)

As of 2026-11-01. 24 issues are on record for older versions; version 2.11.0 or newer fixes all of them that state a fix.

Latest version
2.11.0
Last updated
2026-10-20
Active installs
900,000+
Known issues on record
24
Unpatched in latest
0
Tested up to WP
7.1.4 · PHP 7.4+

Search Engine (SEO) & Performance Optimization (WPO) via caching. Integrated caching: CDN, Page, Minify, Object, Fragment, Database support. — by BoldGrid

What to do

  1. Update to the latest version (2.11.0). Anything older than 2.11.0 has at least one known issue listed below. Dashboard → Updates, or Plugins → “update now”.
  2. If you cannot update right away, deactivate it until you can.
  3. Turn on auto-updates for it: Plugins → “Enable auto-updates” on its row.
  4. If you ran a vulnerable version and something looks off (spam pages, strange admins, redirects), run the free scan.

With WP-CLI: wp plugin get w3-total-cache --field=version shows what you run; wp plugin update w3-total-cache updates it.

Check your version

Known vulnerabilities

24 on record, newest first. “Affected” is the version range the source gives; “fixed in” is the version the source names, or (marked *) the first wordpress.org release after the last affected version.

medium 5.4 CVE-2026-120019 · published 2026-10-31

Stored cross-site scripting (XSS) in W3 Total Cache (2.10.7 and older)

Affected
2.10.7 and older
Fixed in
2.11.0 *
Access needed (per CVSS)
No login needed
Range from
CVE record (the advisory publisher) · score by Wordfence
Details from the advisory

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.

NVD CVE-2026-120019Wordfence advisoryCode change (fix)github.comPlugin source

high 7.2 CVE-2026-111254 · published 2026-10-31

Stored cross-site scripting (XSS) in W3 Total Cache (2.10.7 and older)

Affected
2.10.7 and older
Fixed in
2.11.0 *
Access needed (per CVSS)
No login needed
Range from
CVE record (the advisory publisher) · score by Wordfence
Details from the advisory

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. Exploitation requires that a Pro license was previously active with REST caching enabled and has since become inactive while Disk Enhanced page caching remains configured, and that the attacker holds a previously approved commenter identity.

NVD CVE-2026-111254Wordfence advisoryCode change (fix)github.comPlugin source

high 7.1 CVE-2026-114178 · published 2026-10-24

Stored cross-site scripting (XSS) in W3 Total Cache (2.10.7 and older)

Affected
2.10.7 and older
Fixed in
2.11.0
Access needed (per CVSS)
No login needed; someone on the site has to click a link or open a page
Range from
CVE record (the advisory publisher) · score by Patchstack
Details from the advisory

Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting') vulnerability in Bold Grid W3 Total Cache w3-total-cache allows Stored XSS.This issue affects W3 Total Cache: from n/a through 2.10.7.

NVD CVE-2026-114178Patchstack advisory

medium 5.4 CVE-2026-107321 · published 2026-10-10

Path traversal / file read in W3 Total Cache (older than 2.10.6)

Affected
older than 2.10.6
Fixed in
2.10.6
Access needed (per CVSS)
Needs an admin-level account; someone on the site has to click a link or open a page
Range from
CVE record (the advisory publisher) · score by CISA ADP
Details from the advisory

The W3 Total Cache WordPress plugin before 2.10.6 does not confine a media-import file copy to the document root, nor enforce an effective file-type restriction on it, allowing users with the Author role or higher to plant content that, once an administrator runs the import, copies an arbitrary server-readable file into a publicly served directory, exposing it to unauthenticated retrieval.

NVD CVE-2026-107321WPScan advisory

high 7.2 CVE-2026-87920 · published 2026-10-02

Stored cross-site scripting (XSS) in W3 Total Cache (2.10.6 and older)

Affected
2.10.6 and older
Fixed in
2.10.7 *
Access needed (per CVSS)
No login needed
Range from
CVE record (the advisory publisher) · score by Wordfence
Details from the advisory

The W3 Total Cache plugin for WordPress is vulnerable to Stored Cross-Site Scripting via Comment Content via Output-Buffer Regex Rewrite in all versions up to, and including, 2.10.6 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 vulnerability is only exploitable when the 'Remove query strings from static resources' option is enabled in W3 Total Cache, as mutate_url() must strip the '?' delimiter and everything following it — including the closing quote of the outer attribute — to break the attribute boundary.

NVD CVE-2026-87920Wordfence advisoryCode change (fix)Plugin source

high 7.2 CVE-2026-78438 · published 2026-09-05

Stored cross-site scripting (XSS) in W3 Total Cache (2.10.5 and older)

Affected
2.10.5 and older
Fixed in
2.10.6 *
Access needed (per CVSS)
No login needed
Range from
CVE record (the advisory publisher) · score by Wordfence
Details from the advisory

The W3 Total Cache plugin for WordPress is vulnerable to Stored Cross-Site Scripting via Comment Content via LazyLoad Background Mutator in all versions up to, and including, 2.10.5 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 the "Lazy Load Images" feature with "Process background images" to be enabled, and the malicious comment to be approved by a moderator before execution is triggered.

NVD CVE-2026-78438Wordfence advisoryCode change (fix)Plugin source

critical 10.0 CVE-2026-18051 · published 2026-08-19

Path traversal / file read in W3 Total Cache (older than 2.10.5)

Affected
older than 2.10.5
Fixed in
2.10.5
Access needed (per CVSS)
No login needed
Range from
CVE record (the advisory publisher) · score by CISA ADP
Details from the advisory

The W3 Total Cache WordPress plugin before 2.10.5 does not properly validate the request path it uses to build cache file names, allowing unauthenticated attackers to write a file into any existing directory on the server, inside or outside the web root, overwriting whatever occupies the target name. On Apache, the same flaw overwrites the site's .htaccess files, which breaks the site and can strip hardening rules that other security measures rely on.

NVD CVE-2026-18051WPScan advisory

high 7.2 CVE-2026-18109 · published 2026-08-14

Stored cross-site scripting (XSS) in W3 Total Cache (2.10.3 and older)

Affected
2.10.3 and older
Fixed in
2.10.4 *
Access needed (per CVSS)
No login needed
Range from
CVE record (the advisory publisher) · score by Wordfence
Details from the advisory

The W3 Total Cache plugin for WordPress is vulnerable to Stored Cross-Site Scripting via Comment Author Name in all versions up to, and including, 2.10.3 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 vulnerability is only exploitable when the Lazy Load Images feature of W3 Total Cache is enabled, as the unsafe re-emission occurs exclusively within the LazyLoad mutator's img tag rewriting step.

NVD CVE-2026-18109Wordfence advisoryCode change (fix)Plugin source

medium 6.5 CVE-2026-66695 · published 2026-08-06

Path traversal / file read in W3 Total Cache (2.10.2 and older)

Affected
2.10.2 and older
Fixed in
2.10.3
Access needed (per CVSS)
No login needed
Range from
CVE record (the advisory publisher) · score by Patchstack
Details from the advisory

Unauthenticated Path Traversal in W3 Total Cache <= 2.10.2 versions.

NVD CVE-2026-66695Patchstack advisory

high 7.5 CVE-2026-9282 · published 2026-07-11

Path traversal / file read in W3 Total Cache (2.9.4 and older)

Affected
2.9.4 and older
Fixed in
2.10.0 *
Access needed (per CVSS)
No login needed
Range from
CVE record (the advisory publisher) · score by Wordfence
Details from the advisory

The W3 Total Cache plugin for WordPress is vulnerable to Directory Traversal in all versions up to, and including, 2.9.4 via the setupSources function. This makes it possible for unauthenticated attackers to read the contents of arbitrary files on the server, which can contain sensitive information. Exploitation requires enabling manual minify mode and supplying a manual-format minify filename so that the hash is empty and the f_array[] entries are not overwritten before reaching setupSources().

NVD CVE-2026-9282Wordfence advisoryCode change (fix)Plugin source

critical 9.0 CVE-2026-57623 · published 2026-07-02

Remote code execution in W3 Total Cache (2.9.4 and older)

Affected
2.9.4 and older
Fixed in
2.10.0
Access needed (per CVSS)
No login needed
Range from
CVE record (the advisory publisher) · score by Patchstack
Details from the advisory

Unauthenticated Arbitrary Code Execution in W3 Total Cache <= 2.9.4 versions.

NVD CVE-2026-57623Patchstack advisory

medium 4.7 CVE-2026-39595 · published 2026-06-17

Missing authorization check in W3 Total Cache (2.9.1 and older)

Affected
2.9.1 and older
Fixed in
2.9.2
Access needed (per CVSS)
Needs an admin-level account
Range from
CVE record (the advisory publisher) · score by Patchstack
Details from the advisory

Author Broken Access Control in W3 Total Cache <= 2.9.1 versions.

NVD CVE-2026-39595Patchstack advisory

high 7.5 CVE-2026-5032 · published 2026-04-02

Remote code execution in W3 Total Cache (2.9.3 and older)

Affected
2.9.3 and older
Fixed in
2.9.4-beta.1 *
Access needed (per CVSS)
No login needed
Range from
CVE record (the advisory publisher) · score by Wordfence
Details from the advisory

The W3 Total Cache plugin for WordPress is vulnerable to information exposure in all versions up to, and including, 2.9.3. This is due to the plugin bypassing its entire output buffering and processing pipeline when the request's User-Agent header contains "W3 Total Cache", which causes raw mfunc/mclude dynamic fragment HTML comments — including the W3TC_DYNAMIC_SECURITY security token — to be rendered in the page source. This makes it possible for unauthenticated attackers to discover the value of the W3TC_DYNAMIC_SECURITY constant by sending a crafted User-Agent header to any page that contains developer-placed dynamic fragment tags, granted the site has the fragment caching feature enabled. With the leaked W3TC_DYNAMIC_SECURITY token, an attacker can craft valid mfunc tags to execute arbitrary PHP code on the server, achieving remote code execution.

NVD CVE-2026-5032Wordfence advisoryCode change (fix)Plugin source

critical 9.0 CVE-2026-27384 · published 2026-03-05

Security issue in W3 Total Cache (2.9.1 and older)

Affected
2.9.1 and older
Fixed in
2.9.2
Access needed (per CVSS)
No login needed
Range from
CVE record (the advisory publisher) · score by Patchstack
Details from the advisory

Improper Validation of Specified Quantity in Input vulnerability in BoldGrid W3 Total Cache w3-total-cache allows Accessing Functionality Not Properly Constrained by ACLs.This issue affects W3 Total Cache: from n/a through <= 2.9.1.

NVD CVE-2026-27384Patchstack advisory

critical 9.0 CVE-2025-9501 · published 2025-11-17

Command injection in W3 Total Cache (older than 2.8.13)

Affected
older than 2.8.13
Fixed in
2.8.13
Access needed (per CVSS)
No login needed
Range from
CVE record (the advisory publisher) · score by CISA ADP
Details from the advisory

The W3 Total Cache WordPress plugin before 2.8.13 is vulnerable to command injection via the _parse_dynamic_mfunc function, allowing unauthenticated users to execute PHP commands by submitting a comment with a malicious payload to a post.

NVD CVE-2025-9501WPScan advisory

high 8.5 CVE-2024-12365 · published 2025-01-14

Missing authorization check in W3 Total Cache (2.8.1 and older)

Affected
2.8.1 and older
Fixed in
2.8.2 *
Access needed (per CVSS)
Needs a low-level account (e.g. subscriber)
Range from
CVE record (the advisory publisher) · score by Wordfence
Details from the advisory

The W3 Total Cache plugin for WordPress is vulnerable to unauthorized access of data due to a missing capability check on the is_w3tc_admin_page function in all versions up to, and including, 2.8.1. This makes it possible for authenticated attackers, with Subscriber-level access and above, to obtain the plugin's nonce value and perform unauthorized actions, resulting in information disclosure, service plan limits consumption as well as making web requests to arbitrary locations originating from the web application that can be used to query information from internal services, including instance metadata on cloud-based applications.

NVD CVE-2024-12365Wordfence advisoryPlugin source

medium 5.3 CVE-2024-12006 · published 2025-01-14

Missing authorization check in W3 Total Cache (2.8.1 and older)

Affected
2.8.1 and older
Fixed in
2.8.2 *
Access needed (per CVSS)
No login needed
Range from
CVE record (the advisory publisher) · score by Wordfence
Details from the advisory

The W3 Total Cache plugin for WordPress is vulnerable to unauthorized modification of data due to a missing capability check on several functions in all versions up to, and including, 2.8.1. This makes it possible for unauthenticated attackers to deactivate the plugin as well as activate and deactivate plugin extensions.

NVD CVE-2024-12006Wordfence advisoryPlugin source

high 7.5 CVE-2024-12008 · published 2025-01-14

Cross-site request forgery (CSRF) in W3 Total Cache (2.8.1 and older)

Affected
2.8.1 and older
Fixed in
2.8.2 *
Access needed (per CVSS)
No login needed
Range from
CVE record (the advisory publisher) · score by NVD
Details from the advisory

The W3 Total Cache plugin for WordPress is vulnerable to Information Exposure in all versions up to, and including, 2.8.1 through the publicly exposed debug log file. This makes it possible for unauthenticated attackers to view potentially sensitive information in the exposed log file. For example, the log file may contain nonce values that can be used in further CSRF attacks. Note: the debug feature must be enabled for this to be a concern, and it is disabled by default.

NVD CVE-2024-12008Wordfence advisoryPlugin source

high 7.5 CVE-2023-5359 · published 2024-09-25

Information disclosure in W3 Total Cache (2.7.5 and older)

Affected
2.7.5 and older
Fixed in
2.7.6 *
Access needed (per CVSS)
No login needed
Range from
CVE record (the advisory publisher) · score by NVD
Details from the advisory

The W3 Total Cache plugin for WordPress is vulnerable to Sensitive Information Exposure in versions up to, and including, 2.7.5 via Google OAuth API secrets stored in plaintext in the publicly visible plugin source. This can allow unauthenticated attackers to impersonate W3 Total Cache and gain access to user account information in successful conditions. This would not impact the WordPress users site in any way.

NVD CVE-2023-5359Wordfence advisoryCode change (fix)Plugin source

medium 6.1 CVE-2021-24436 · published 2021-07-19

Reflected cross-site scripting (XSS) in W3 Total Cache (older than 2.1.4)

Affected
older than 2.1.4
Fixed in
2.1.4
Access needed (per CVSS)
No login needed; someone on the site has to click a link or open a page
Range from
NVD analysis · score by NVD
Details from the advisory

The W3 Total Cache WordPress plugin before 2.1.4 was vulnerable to a reflected Cross-Site Scripting (XSS) security vulnerability within the "extension" parameter in the Extensions dashboard, which is output in an attribute without being escaped first. This could allow an attacker, who can convince an authenticated admin into clicking a link, to run malicious JavaScript within the user's web browser, which could lead to full site compromise.

NVD CVE-2021-24436WPScan advisory

medium 6.1 CVE-2021-24452 · published 2021-07-19

Reflected cross-site scripting (XSS) in W3 Total Cache (older than 2.1.5)

Affected
older than 2.1.5
Fixed in
2.1.5
Access needed (per CVSS)
No login needed; someone on the site has to click a link or open a page
Range from
NVD analysis · score by NVD
Details from the advisory

The W3 Total Cache WordPress plugin before 2.1.5 was affected by a reflected Cross-Site Scripting (XSS) issue within the "extension" parameter in the Extensions dashboard, when the 'Anonymously track usage to improve product quality' setting is enabled, as the parameter is output in a JavaScript context without proper escaping. This could allow an attacker, who can convince an authenticated admin into clicking a link, to run malicious JavaScript within the user's web browser, which could lead to full site compromise.

NVD CVE-2021-24452WPScan advisory

medium 4.8 CVE-2021-24427 · published 2021-07-12

Stored cross-site scripting (XSS) in W3 Total Cache (older than 2.1.3)

Affected
older than 2.1.3
Fixed in
2.1.3
Access needed (per CVSS)
Needs an admin-level account; someone on the site has to click a link or open a page
Range from
NVD analysis · score by NVD
Details from the advisory

The W3 Total Cache WordPress plugin before 2.1.3 did not sanitise or escape some of its CDN settings, allowing high privilege users to use JavaScript in them, which will be output in the page, leading to an authenticated Stored Cross-Site Scripting issue

NVD CVE-2021-24427WPScan advisorym0ze.ru

medium 6.8 CVE-2014-9414 · published 2014-12-24

Cross-site request forgery (CSRF) in W3 Total Cache (0.9.4 and older)

Affected
0.9.4 and older
Fixed in
0.9.4.1 *
Range from
NVD analysis · score by NVD
Details from the advisory

The W3 Total Cache plugin before 0.9.4.1 for WordPress does not properly handle empty nonces, which allows remote attackers to conduct cross-site request forgery (CSRF) attacks and hijack the authentication of administrators for requests that change the mobile site redirect URI via the mobile_groups[*][redirect] parameter and an empty _wpnonce parameter in the w3tc_mobile page to wp-admin/admin.php.

NVD CVE-2014-9414wordpress.orgmazinahmed1.blogspot.compacketstormsecurity.comseclists.orgsecunia.comsecurityfocus.com

medium 4.3 CVE-2014-8724 · published 2014-12-19

Cross-site scripting (XSS) in W3 Total Cache (0.9.4 and older)

Affected
0.9.4 and older
Fixed in
0.9.4.1 *
Range from
NVD analysis · score by NVD
Details from the advisory

Cross-site scripting (XSS) vulnerability in the W3 Total Cache plugin before 0.9.4.1 for WordPress, when debug mode is enabled, allows remote attackers to inject arbitrary web script or HTML via the "Cache key" in the HTML-Comments, as demonstrated by the PATH_INFO to the default URI.

NVD CVE-2014-8724wordpress.orgpacketstormsecurity.comsecurityfocus.comsecuvera.de

Recent activity

Where this data comes from

Badge for your site or docs (states facts with a date, not a verdict):
W3 Total Cache vulnerability status badge
<a href="https://laskyr.com/plugins/w3-total-cache"><img src="https://laskyr.com/plugins/w3-total-cache/badge.svg" alt="W3 Total Cache vulnerability status"></a>

← Check another plugin · Free hacked-site scan

Site hacked? Get help now
Run free scan Fix it now ($499) Send a message

First hour checklist

If the site was just hacked, read the emergency kit before you delete files. The page is free. Email is optional.

Read the emergency kit