WPSpeed <= 2.6.10 - Authenticated (Subscriber+) Stored Cross-Site Scripting via User Nickname/Display Name
Default status is the baseline for the product, each version can override it (e.g. patched versions marked unaffected).
| Vendor | Product | Default status | Versions | ||||||
|---|---|---|---|---|---|---|---|---|---|
| john-dagelmore | WPSpeed – WordPress Speed, Cache & Performance Optimization (Core Web Vitals, PageSpeed 100) | unaffected |
|
No data.
No data.
| Vendor | Product | Versions | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|
| John-dagelmore | Wpspeed – Wordpress Speed, Cache & Performance Optimization (core Web Vitals, Pagespeed 100) |
|
||||||||
| Wordpress-extensions | Wpspeed |
|
No CVSS v4.0
No CVSS v3.0
No CVSS v2
This CVE is not in the KEV list.
Exploit prediction score: < 1% (0.297% probability within 30 days)
| Type | Values Removed | Values Added |
|---|---|---|
| First Time appeared |
John-dagelmore
John-dagelmore wpspeed – Wordpress Speed, Cache & Performance Optimization (core Web Vitals, Pagespeed 100) Wordpress-extensions Wordpress-extensions wpspeed |
|
| Vendors & Products |
John-dagelmore
John-dagelmore wpspeed – Wordpress Speed, Cache & Performance Optimization (core Web Vitals, Pagespeed 100) Wordpress-extensions Wordpress-extensions wpspeed |
| Type | Values Removed | Values Added |
|---|---|---|
| Metrics |
ssvc
|
| Type | Values Removed | Values Added |
|---|---|---|
| Description | The WPSpeed plugin for WordPress is vulnerable to Stored Cross-Site Scripting in versions up to, and including, 2.6.10 This is due to a combination of two issues in the LightImages HTML optimizer: (1) Dispatcher::runOptimize() decides whether the current request is the site's home page by comparing only the URL path from REQUEST_URI against the path of the home URL, so on a plain-permalinks install the author archive URL /?author=<ID> is treated as the home page and the LightImages optimizer runs on it; and (2) LightImages::optimize() calls html_entity_decode() across the entire serialized DOMDocument output under the default-enabled img_processing_entity_decode setting, converting any entity-encoded markup present as plain text in the page (including WordPress's rendered author title) into live HTML. This makes it possible for authenticated attackers, with Subscriber-level access and above, to store entity-encoded markup in their own nickname/display_name through the normal profile endpoint and have that markup rehydrated into executing script when any logged-out visitor loads their author archive. | |
| Title | WPSpeed <= 2.6.10 - Authenticated (Subscriber+) Stored Cross-Site Scripting via User Nickname/Display Name | |
| Weaknesses | CWE-79 | |
| References |
|
|
| Metrics |
cvssV3_1
|