High severity · published Jun 12, 2026
CVE-2026-45011
Apostrophe has stored XSS via javascript: URL in Image Widget Link
7.3
CVSS
0.3%
EPSS
No
On KEV
Description
ApostropheCMS is an open-source Node.js content management system. Version 4.29.0 has a stored cross-site scripting vulnerability in the image widget functionality. A user with the Editor role can configure an image widget link to use a javascript: URL payload. Because editors have permission to publish pages, the malicious widget can be published to the live site. When another user, including an administrator or public visitor, clicks the affected image/link, arbitrary JavaScript executes in the victim’s browser. As of time of publication, no known patched versions are available.
CVSS vector
CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:U/C:H/I:H/A:N
Attack vector
Network
Complexity
Low
Privileges
Low
User interaction
Required
Confidentiality
High
Integrity
High
Availability
None
Scope
Unchanged
Exploitation
Is it being used?
Exploit prediction (EPSS)0.3% · higher than 19% of CVEs
Exploited in the wildNo evidence yet
CISA KEVNot listed
Ransomware campaign useNot known
Affected products
Which versions
AP
apostrophe · apostrophecms
= 4.29.0 · source: vendor
References
NVD
https://nvd.nist.gov/vuln/detail/CVE-2026-45011
CVE.org
https://www.cve.org/CVERecord?id=CVE-2026-45011
github.com
https://github.com/apostrophecms/apostrophe/releases/tag/apostrophe%404.29.0
github.com
https://github.com/apostrophecms/apostrophe/security/advisories/GHSA-5f64-7vfc-rcx6
More from apostrophe
9.1
CVE-2026-53609
Apostrophe has Server-Side Prototype Pollution in apos.util.set via patch operators that leads to process-wide authorization bypass
8.7
CVE-2026-35569
ApostropheCMS: Stored XSS in SEO Fields Leads to Authenticated API Data Exposure in ApostropheCMS
8.1
CVE-2026-45013
Apostrophe has a Weak Password Recovery Mechanism for Forgotten Password and Improper Input Validation
8.1
CVE-2026-32730
ApostropheCMS MFA/TOTP Bypass via Incorrect MongoDB Query in Bearer Token Middleware
7.6
CVE-2026-45012
Apostrophe has authenticated SSRF in rich-text widget import via @apostrophecms/area/validate-widget
