Radar sectionsDatabase
Check my site
WordPress plugin

Optimole <= 4.2.2 — Unauthenticated Stored Cross-Site Scripting via Srcset Descriptor Parameter

CVE-2026-5217Published · Updated

Action summary

Affected: ≤4.2.2Update to 4.2.3 or newer

All remediation steps
Severity
High7.2
CVSS
7.2
CVSS 3.1 · CNA (Wordfence)
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:L/I:L/A:N
What does this vector mean?
AV:N Attack vector
Network
AC:L Attack complexity
Low
PR:N Privileges required
None
UI:N User interaction
None
S:C Scope
Changed
C:L Confidentiality
Low
I:L Integrity
Low
A:N Availability
None
Weakness
CWE-79 Cross-Site Scripting
Required access
No account needed
Exploit prediction (EPSS)
No score
CISA KEV
Not listed

Am I affected?

Optimole – Optimize Images | Convert WebP & AVIF | CDN & Lazy Load | Image Optimization optimole-wp

  1. Affected≤ 4.2.2
  2. Patched in4.2.3

Update to 4.2.3 or newer.

You are affected if you run ≤ 4.2.2. Version 4.2.3 and later are not affected by this issue.

  • Check your version: in wp-admin go to Plugins → Installed Plugins and read the version under Optimole – Optimize Images | Convert WebP & AVIF | CDN & Lazy Load | Image Optimization.
  • No admin access? Run a passive check of your site. It reads public files only.
  • No account is needed to exploit this. Treat any exposed site on an affected version as at risk.

What to do

  1. Update to version 4.2.3, or a newer patched version
  2. Rotate administrator passwords and application secrets if the site ran a vulnerable version while publicly reachable.
  3. Watch Optimole – Optimize Images | Convert WebP & AVIF | CDN & Lazy Load | Image Optimization to get an email when the next vulnerability is published.

Advisory

Source description from Wordfence Intelligence, credited to Quốc Huy (jtwings).

The Optimole – Optimize Images | Convert WebP & AVIF | CDN & Lazy Load | Image Optimization plugin for WordPress is vulnerable to Stored Cross-Site Scripting in all versions up to, and including, 4.2.2. This is due to insufficient input sanitization and output escaping on the user-supplied 's' parameter (srcset descriptor) in the unauthenticated /wp-json/optimole/v1/optimizations REST endpoint. The endpoint validates requests using an HMAC signature and timestamp, but these values are exposed directly in the frontend HTML making them accessible to any visitor. The plugin uses sanitize_text_field() on the descriptor value of rest.php, which strips HTML tags but does not escape double quotes. The poisoned descriptor is then stored via transients (backed by the WordPress options table) and later retrieved and injected verbatim into the srcset attribute of tag_replacer.php without proper escaping. This makes it possible for unauthenticated attackers to inject arbitrary web scripts into pages that will execute whenever a user accesses the injected page.

Exploits & references

Proof-of-concept & detection

No public proof-of-concept or detection template is known for this vulnerability.

Advisories & patches

More in Optimole – Optimize Images | Convert WebP & AVIF | CDN & Lazy Load | Image Optimization

All 16
More vulnerabilities in Optimole – Optimize Images | Convert WebP & AVIF | CDN & Lazy Load | Image Optimization
SeverityVulnerabilityCVEPublished
High7.2Unauthenticated Stored Cross-Site Scripting via Page Profiler srcset Descriptor
≤4.2.18Update to 4.2.19
CVE-2026-120739
High7.2Unauthenticated Stored Cross-Site Scripting via Comment Content
≤4.2.18Update to 4.2.19
CVE-2026-120677
High7.2Unauthenticated Stored Cross-Site Scripting via Comment Content via Backslash-Escaped Unicode in URL Replacer
≤4.2.17Update to 4.2.18
CVE-2026-119070
Medium4.34.2.14 - Authenticated (Subscriber+) Information Exposure
4.0.0 – 4.2.14Update to 4.2.15
CVE-2026-96530
Medium4.3Missing Authorization
≤4.2.14Update to 4.2.15
CVE-2026-102375

Same weakness (Cross-Site Scripting)

All Cross-Site Scripting
Other Cross-Site Scripting vulnerabilities
SeverityVulnerabilityCVEPublished
High7.2Unauthenticated Stored Cross-Site Scripting via Comment User-Agent HeaderCVE-2026-120688
Critical9.8Unauthenticated Arbitrary File Upload via File Upload via Public Form SubmissionCVE-2026-125055
Critical9.8Unauthenticated PHP Object Injection to Remote Code Execution via 'form' ParameterCVE-2026-119077
Medium5.3Unauthenticated Sensitive Information Exposure in 'search' Parameter
Customer Reviews for WooCommerce≤5.127.0Update to 5.128.0
CVE-2026-121518

Timeline

  1. CVE published

    Severity high, CVSS 7.2

  2. Record last updated

Sources & licenses

Wordfence record
Vulnerability data
Wordfence Intelligence. [object Object] Licensed under the CC BY-SA 4.0.
CVE® identifiers
[object Object]. Used under the CVE Program. CVE® is a registered trademark of The MITRE Corporation.
CVSS / CWE
National Vulnerability Database (NVD), shown unmodified. This product uses the NVD API but is not endorsed or certified by the NVD.
VulnCrest content
Summary, remediation guidance and page layout © VulnCrest. Not sourced from NVD.

How we use these sources

Search VulnCrest Radar

Are you sure?