Description
The Autoptimize plugin for WordPress is vulnerable to Stored Cross-Site Scripting via the 'ao_post_preload' meta value in all versions up to, and including, 3.1.14. This is due to insufficient input sanitization in the `ao_metabox_save()` function and missing output escaping when the value is rendered into a `<link>` tag in `autoptimizeImages.php`. This makes it possible for authenticated attackers, with Contributor-level access and above, to inject arbitrary web scripts in pages that will execute whenever a user accesses an injected page, granted the "Image optimization" or "Lazy-load images" setting is enabled in the plugin configuration.
Published: 2026-03-20
Score: 6.4 Medium
EPSS: < 1% Very Low
KEV: No
Impact: Stored Cross‑Site Scripting
Action: Immediate Patch
AI Analysis

Impact

The Autoptimize plugin for WordPress is vulnerable to Stored Cross‑Site Scripting because it fails to sanitize the "ao_post_preload" meta value and does not escape it when rendering a <link> tag. Authenticated users with Contributor level access or higher can inject arbitrary JavaScript that will run in the browser when any visitor loads a page that includes the injected value. This attack can compromise the confidentiality, integrity, and availability of the affected website’s data and user sessions. The weakness is a classic input validation flaw (CWE‑79).

Affected Systems

WordPress sites that use the Autoptimize plugin version 3.1.14 or earlier are affected. The vulnerability exists in all releases up to and including 3.1.14. Any site with the plugin installed and configured for "Image optimization" or "Lazy‑load images" is at risk.

Risk and Exploitability

The CVSS score of 6.4 indicates a moderate severity. EPSS and KEV information are not available, so the likelihood of widespread exploitation cannot be quantified, but the vulnerability requires only Contributor‑level credentials, which many sites grant to content editors. Because the attacker’s injected script runs in the context of the site’s pages, the impact can be severe, especially if the site handles sensitive user data. Sites that have disabled the affected plugin or its image optimization features will not be vulnerable. However, sites enabled for image optimization or lazy‑loading remain at risk until mitigated.

Generated by OpenCVE AI on March 21, 2026 at 06:42 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Upgrade Autoptimize to the latest available version (greater than 3.1.14).
  • If an upgrade is unavailable, immediately disable the Image optimization and Lazy‑load images settings in the plugin configuration.
  • If disabling the plugin is not feasible, remove any content containing the "ao_post_preload" meta value or manually escape it before output.
  • Consider implementing a Content Security Policy that restricts the execution of inline scripts and comma‑detection.

Generated by OpenCVE AI on March 21, 2026 at 06:42 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Wed, 25 Mar 2026 14:15:00 +0000

Type Values Removed Values Added
Metrics ssvc

{'options': {'Automatable': 'no', 'Exploitation': 'none', 'Technical Impact': 'partial'}, 'version': '2.0.3'}


Mon, 23 Mar 2026 10:00:00 +0000

Type Values Removed Values Added
First Time appeared Optimizingmatters
Optimizingmatters autooptimize
Wordpress
Wordpress wordpress
Vendors & Products Optimizingmatters
Optimizingmatters autooptimize
Wordpress
Wordpress wordpress

Sat, 21 Mar 2026 05:30:00 +0000

Type Values Removed Values Added
Description The Autoptimize plugin for WordPress is vulnerable to Stored Cross-Site Scripting via the 'ao_post_preload' meta value in all versions up to, and including, 3.1.14. This is due to insufficient input sanitization in the `ao_metabox_save()` function and missing output escaping when the value is rendered into a `<link>` tag in `autoptimizeImages.php`. This makes it possible for authenticated attackers, with Contributor-level access and above, to inject arbitrary web scripts in pages that will execute whenever a user accesses an injected page, granted the "Image optimization" or "Lazy-load images" setting is enabled in the plugin configuration.
Title Autoptimize <= 3.1.14 - Authenticated (Contributor+) Stored Cross-Site Scripting via 'ao_post_preload' Meta Value
Weaknesses CWE-79
References
Metrics cvssV3_1

{'score': 6.4, 'vector': 'CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:L/I:L/A:N'}


Subscriptions

Optimizingmatters Autooptimize
Wordpress Wordpress
cve-icon MITRE

Status: PUBLISHED

Assigner: Wordfence

Published:

Updated: 2026-04-08T16:56:20.012Z

Reserved: 2026-02-11T16:37:03.973Z

Link: CVE-2026-2352

cve-icon Vulnrichment

Updated: 2026-03-25T13:42:25.778Z

cve-icon NVD

Status : Awaiting Analysis

Published: 2026-03-21T00:16:25.873

Modified: 2026-03-23T14:32:02.800

Link: CVE-2026-2352

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-03-25T14:33:38Z

Weaknesses