# Easy Optimizer <= 2.7.5 - Unauthenticated Sensitive Information Exposure via Forged 'easyopt_user_role' Cookie

- **ID:** WPSEC-2026-2923
- **Plugin:** Easy Optimizer – Speed, Cache & Core Web Vitals for PageSpeed (Unused CSS, Delay JS) (`easy-optimizer`), https://wordpress.org/plugins/easy-optimizer/
- **Affected versions:** from 2.6.6 before 2.8.0
- **Fixed in:** 2.8.0 (Update to 2.8.0 or later.)
- **Severity:** Low 3.7 (CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:N/A:N)
- **Weakness:** CWE-565
- **Usage among sites WPSec scans:** plugin Low, affected versions Low (as of 2026-11-12)
- **Attack surface analysis:** https://attacksurface.wpsec.com/plugin/easy-optimizer
- **Fix released:** 2026-11-10
- **Published:** 2026-11-12
- **URL:** https://wpsec.com/vuln/WPSEC-2026-2923/

## Description

The Easy Optimizer plugin for WordPress is vulnerable to Sensitive Information Exposure via the page cache drop-in (advanced-cache.php) in all versions up to, and including, 2.7.5, due to the drop-in treating any request with a cookie whose name starts with 'wordpress_logged_in_' as logged in and then picking which logged-in cached copy to serve from the unsigned, client-controlled 'easyopt_user_role' cookie. This makes it possible for unauthenticated attackers to send a cookie with that name and any value, set 'easyopt_user_role' to another role (such as administrator) or per-user tag, and receive the page copy cached for that role or user, exposing content meant only for those users. Exploitation requires the non-default 'Cache for logged-in users' setting to be enabled.

## References

- https://wpsec.com/vuln/WPSEC-2026-2923/
- https://plugins.svn.wordpress.org/easy-optimizer/tags/2.8.0/
- https://wordpress.org/plugins/easy-optimizer/

Source: WPSec, https://wpsec.com/vuln/WPSEC-2026-2923/

License: CC BY 4.0 (https://creativecommons.org/licenses/by/4.0/). Free to use, share and adapt, also commercially, if you credit WPSec and link to this advisory.
