CVE-2026-2352

Autoptimize <= 3.1.14 - Authenticated (Contributor+) Stored Cross-Site Scripting via 'ao_post_preload' Meta Value

Published Mar 20, 2026 CVSS 3.1 · 6.4 Medium EPSS < 1% KEV · Not listed
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.

Analysis

AI-generated

Technical 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.

Remediation

No solution or workaround provided in the CVE record.

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 available
History
Type Values Removed Values Added
Metrics ssvc

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

Type Values Removed Values Added
First Time appeared Optimizingmatters
Optimizingmatters autooptimize
Wordpress
Wordpress wordpress
Vendors & Products Optimizingmatters
Optimizingmatters autooptimize
Wordpress
Wordpress wordpress
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'}

Weaknesses
  • CWE-79

    Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting')

Sources

Status
PUBLISHED
Assigner
Wordfence
Published
Updated
Apr 8, 2026, 4:56 PM
Reserved
Feb 11, 2026, 4:37 PM
Status
Deferred
Published
Mar 21, 2026, 12:16 AM
Modified
Jun 17, 2026, 10:30 AM