{"id":"CVE-2026-111737","kind":"vulnerability","aliases":["CVE-2026-111737"],"related":[],"title":"Speed Optimizer WordPress plugin: stored XSS via unescaped settings output","description":"The Speed Optimizer  WordPress plugin before 7.8.5 does not sanitise or escape some of its settings before outputting them in the head of front-end pages, which could allow high-privilege users such as admins to perform Stored Cross-Site Scripting attacks even when the unfiltered_html capability is disallowed (for example in a multisite setup).","summary":"The Speed Optimizer WordPress plugin before 7.8.5 outputs some of its settings into the page head without sanitising or escaping them. A high-privilege user such as an admin can store script that runs in visitors' browsers, even where unfiltered_html is disabled, as in a multisite setup.","severity":"low","cvss":3.5,"epss":0.00153,"exploited":false,"exploited_at":null,"products":[],"ecosystems":[],"tags":["multisite","package","wordpress","wordpress-plugin"],"not_affected_if":["plugin-not-installed","version-7.8.5-or-later"],"how_to_check":"- Check the installed Speed Optimizer plugin version in the WordPress admin Plugins screen, or with `wp plugin get speed-optimizer --field=version` (plugin slug assumed; unknown if the sources give it)\n- Review the plugin's settings that print into the page head for unescaped values","fix":"- Update the Speed Optimizer plugin to `7.8.5` or later\n- Until updated, limit who holds admin or editor roles on multisite installs","status":"open","published_at":"2026-10-23T06:17:05+00:00","first_seen_at":"2026-10-23T21:57:32+00:00","triaged_at":"2026-10-25T04:45:32+00:00","updated_at":"2026-10-25T04:45:32+00:00","category":"package","confidence":0.7,"triage":{"at":"2026-10-25T04:45:32Z","model":"claude-haiku-5-5","output":{"fix":"- Update the Speed Optimizer plugin to `7.8.5` or later\n- Until updated, limit who holds admin or editor roles on multisite installs","reach":"network","title":"Speed Optimizer WordPress plugin: stored XSS via unescaped settings output","impact":"medium","summary":"The Speed Optimizer WordPress plugin before 7.8.5 outputs some of its settings into the page head without sanitising or escaping them. A high-privilege user such as an admin can store script that runs in visitors' browsers, even where unfiltered_html is disabled, as in a multisite setup.","category":"package","nicknames":[],"who_cares":["wordpress","wordpress-plugin","multisite"],"confidence":0.7,"needs_auth":"yes","worst_case":"Stored script runs in visitors' browsers via plugin settings","analyst_note":"","how_to_check":"- Check the installed Speed Optimizer plugin version in the WordPress admin Plugins screen, or with `wp plugin get speed-optimizer --field=version` (plugin slug assumed; unknown if the sources give it)\n- Review the plugin's settings that print into the page head for unescaped values","needs_analyst":false,"not_affected_if":["plugin-not-installed","version-7.8.5-or-later"],"who_is_affected":"Sites running the Speed Optimizer WordPress plugin before 7.8.5, especially multisite networks where administrators lack the unfiltered_html capability. Exploitation needs an account with high privileges, so sites with few trusted admins carry less risk. Sites not running this plugin can skip it.","user_interaction":"unknown","needs_special_setup":"no","severity_if_unknown":"low"},"cost_usd":0.000632,"input_tokens":3377,"output_tokens":588,"severity_before":"low"},"analyst_status":null,"analyst_note":null,"search":"'-111737':13A,16A '-2026':12A,15A '7.8.5':29B,78C 'admin':52B,108C 'allow':101C 'attack':116C 'browser':60B 'capabl':122C 'could':100C 'cross':113C 'cross-sit':112C 'cve':11A,14A 'disabl':66B 'disallow':124C 'end':97C 'escap':42B,83C 'even':61B,117C 'exampl':126C 'front':96C 'front-end':95C 'head':38B,93C 'high':46B,103C 'high-privileg':45B,102C 'html':64B,121C 'multisit':17B,70B,129C 'optim':2A,25B,74C 'output':10A,30B,89C 'packag':18B 'page':37B,98C 'perform':110C 'plugin':4A,22B,27B,76C 'privileg':47B,104C 'run':57B 'sanitis':40B,81C 'script':55B,115C 'set':9A,34B,87C 'setup':71B,130C 'site':114C 'speed':1A,24B,73C 'store':5A,54B,111C 'unescap':8A 'unfilt':63B,120C 'user':48B,105C 'via':7A 'visitor':59B 'without':39B 'wordpress':3A,19B,21B,26B,75C 'wordpress-plugin':20B 'xss':6A","nicknames":[],"mitigations":[],"who_affected":"Sites running the Speed Optimizer WordPress plugin before 7.8.5, especially multisite networks where administrators lack the unfiltered_html capability. Exploitation needs an account with high privileges, so sites with few trusted admins carry less risk. Sites not running this plugin can skip it.","tier":"C","verified":{},"analyst_revisit_at":null,"first_public_at":"2026-10-23T06:17:05+00:00","kev":null,"cvss_vector":"CVSS:3.1/AV:N/AC:L/PR:H/UI:R/S:U/C:L/I:L/A:N","cvss_by":"134c704f-9b21-4f2e-91b3-4a467353bcc0","poc_count":0,"sources":[{"source":"nvd","external_id":"CVE-2026-111737","url":"https://nvd.nist.gov/vuln/detail/CVE-2026-111737","severity":null,"published_at":"2026-10-23T06:17:05+00:00","modified_at":"2026-10-23T14:20:57+00:00","first_seen_at":"2026-10-23T21:57:32+00:00","fetched_at":"2026-10-23T22:29:03+00:00","note":null},{"source":"epss","external_id":"CVE-2026-111737","url":"https://api.first.org/data/v1/epss?cve=CVE-2026-111737","severity":null,"published_at":null,"modified_at":null,"first_seen_at":"2026-10-24T07:15:51+00:00","fetched_at":"2026-10-24T07:15:51+00:00","note":null}],"documents":[],"notice":"Free to read at a human pace. An API with keys and an MCP server are in preparation; early access: hello@infrastack.ai"}