Skip to main content

Autoptimize CVE-2026-2352

| EUVDEUVD-2026-13838 MEDIUM
Cross-site Scripting (XSS) (CWE-79)
2026-03-20 Wordfence GHSA-jph4-mv6f-wg9x
6.4
CVSS 3.1 · NVD
View

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A05:2025 - Injection
ASVS 5.0
V1 - Encoding and Sanitization Output encoding, context-aware escaping
MITRE ATT&CK

2 techniques across 2 tactics: Initial Access, Execution

The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up.

Impact

The CVSS 3.1 score of 6.4 (CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:L/I:L/A:N) reflects medium severity with network accessibility, low attack complexity, and low privilege requirements, but the impact is scoped to confidentiality and integrity (no availability impact). The attack requires authenticated access at Contributor level or above, which substantially reduces the risk profile compared to unauthenticated XSS vulnerabilities. However, the UI:N (no user interaction required) factor increases practical risk once injected. The presence of a patched commit in the official GitHub repository and the detailed vulnerability disclosure via Wordfence indicate this is a mature, well-documented issue with available remediation. Real-world risk is moderate: the barrier to exploitation is authentication plus feature enablement, but the payload persists and affects all site visitors, making it suitable for targeted attacks against high-value WordPress installations rather than mass exploitation.

Exploit ScenarioDerived

A malicious Contributor-level user (e.g., a compromised or disgruntled guest author) accesses the WordPress post editor, injects a JavaScript payload into the 'ao_post_preload' meta field using the Autoptimize metabox interface, and saves the post. When any site visitor (including administrators) views the post and the Image optimization or Lazy-load images plugin feature is active, the unescaped payload executes in their browser, allowing cookie theft, admin account hijacking, or redirection to malware sites. A proof-of-concept payload structure is evident in the referenced source code locations (autoptimizeMetabox.php line 276 and autoptimizeImages.php lines 804/938), where meta retrieval and HTML rendering occur without sanitization or escaping.

This Month Plan within 30 days. Why: MEDIUM severity (CVSS 4.0-6.9).
No patch listed yet 0.0% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Mar 20, 2026

A Stored Cross-Site Scripting (XSS) vulnerability exists in the Autoptimize WordPress plugin through version 3.1.14, caused by insufficient input sanitization in the ao_metabox_save() function and missing output escaping when rendering the 'ao_post_preload' meta value into HTML link tags. Authenticated attackers with Contributor-level access or higher can inject arbitrary JavaScript that executes whenever users access pages with the Image optimization or Lazy-load images settings enabled, potentially affecting all users of compromised sites. The vulnerability has been patched and proof-of-concept code is available in the referenced GitHub commit.

RemediationAI

Immediately upgrade Autoptimize to a patched version released after 3.1.14; consult the plugin's official WordPress repository and GitHub project for the latest stable release. As a temporary mitigation pending patching, administrators should disable the Image optimization and Lazy-load images settings within the Autoptimize configuration to prevent payload execution, and restrict post editing capabilities to trusted administrative accounts only, reducing the attack surface from Contributor-level accounts. Monitor post revisions and meta values for suspicious preload directives, and consider using WordPress security plugins with XSS detection to alert on anomalous link injections in post meta data.

Affected VersionsENISA

Autoptimize * ≤3.1.14

Affected Packages

euvd autoptimize no fix

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 1 package in euvd

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

The Autoptimize plugin (CPE: cpe:2.3:a:optimizingmatters:autoptimize:*:*:*:*:*:*:*:*) is a WordPress optimization plugin that handles image optimization and lazy-loading. The vulnerability stems from a CWE-79 (Improper Neutralization of Input During Web Page Generation) defect affecting PHP code. Specifically, the ao_metabox_save() function in autoptimizeMetabox.php (line 276) fails to sanitize the 'ao_post_preload' post meta value during input handling, and the rendering code in autoptimizeImages.php (lines 804 and 938) fails to properly escape this value when constructing HTML link elements. This allows attacker-controlled data to reach the DOM without neutralization, enabling script injection.

Know when Autoptimize gets its next vulnerability

  • Watch products and get an email when something new is published
  • Check this CVE against your own stack and servers
  • Exploit and PoC references, threat intelligence from 22 sources

No credit card · 7-day full trial

Severity by source

NVD PRIMARY 6.4 MEDIUM
AV:N/AC:L/PR:L/UI:N/S:C/C:L/I:L/A:N

Primary rating from NVD · only source for this CVE.

CVSS VectorNVD

Attack Vector
Network
Attack Complexity
Low
Privileges Required
Low
User Interaction
None
Scope
Changed
Confidentiality
Low
Integrity
Low
Availability
None

DescriptionCVE.org

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.

Executive ViewAI

Why It Matters

Organizations using all should be aware of moderate risk from CVE-2026-2352, a cross-site scripting vulnerability rated CVSS 6.4. Attackers could inject scripts to steal sessions or perform actions as authenticated users. Organizations should apply vendor updates when available and monitor for exploitation.

Business Impact: Low
Compensating Controls

Apply vendor patch. If patching is delayed: implement CSP headers, enable HttpOnly cookies, deploy WAF XSS rules.

Threat Intelligence Overview

EPSS Score
0.0%
Top 87% exploitable
Data Quality
6 sources
Confidence: High
EUVD NVD CVE.org EPSS Vulnrichment GitHub VulDB

How this decision was reached

The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.

SignalValue
Severity MEDIUM
CISA KEV No
Public POC No
EPSS 0.0%
Patch available No
Active threat No
Deciding rule
MEDIUM severity (CVSS 4.0-6.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision
Defer
Exploitation
None
System Exposure· derived
Open
Automatable
No
Human Impact
Low
Technical Impact
Partial

Priority Score

32
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +32
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Cross-Site Scripting occurs when an application accepts untrusted data and sends it to a web browser without proper validation or encoding.

CVE-2021-24376 CRITICAL POC
9.8 Jun 21

The Autoptimize WordPress plugin before 2.7.8 attempts to delete malicious files (such as .php) form the uploaded archiv

CVE-2026-3220 HIGH POC
8.8 May 18

Unauthenticated stored cross-site scripting affects the Autoptimize (before 3.1.15), Clearfy Cache (before 2.4.2), and S

CVE-2021-24377 HIGH POC
8.1 Jun 21

The Autoptimize WordPress plugin before 2.7.8 attempts to remove potential malicious files from the extracted archive up

CVE-2020-24948 HIGH POC
7.2 Sep 03

The ao_ccss_import AJAX call in Autoptimize Wordpress Plugin 2.7.6 does not ensure that the file provided is a legitimat

CVE-2023-2113 MEDIUM POC
4.8 May 30

The Autoptimize WordPress plugin before 3.1.7 does not sanitise and escape the settings imported from a previous export,

CVE-2022-2635 MEDIUM POC
4.8 Sep 16

The Autoptimize WordPress plugin before 3.1.1 does not sanitise and escape some of its settings, which could allow high

CVE-2021-24378 MEDIUM POC
4.8 Jun 21

The Autoptimize WordPress plugin before 2.7.8 does not check for malicious files such as .html in the archive uploaded v

CVE-2021-24332 MEDIUM POC
4.8 May 24

The Autoptimize WordPress plugin before 2.8.4 was missing proper escaping and sanitisation in some of its settings, allo

CVE-2026-14995 HIGH
7.2 Oct 01

Stored cross-site scripting in the Autoptimize WordPress plugin (all versions up to and including 3.1.15.1) lets an unau

CVE-2026-2430 MEDIUM
6.4 Mar 20

The Autoptimize WordPress plugin contains a Stored Cross-Site Scripting (XSS) vulnerability in the lazy-loading image pr

CVE-2026-78471 MEDIUM
5.4 Oct 02

Stored cross-site scripting in the Autoptimize WordPress plugin (all versions up to and including 3.1.15.1) allows unaut

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy