CVE-2026-33889
CVE-2026-33889 is a medium-severity vulnerability in Apostrophecms with a CVSS 3.x base score of 5.4. It is not currently listed as actively exploited by CISA, and its EPSS exploit-prediction score is low. The underlying weakness is classified as CWE-79.
Key facts
- Severity: Medium (CVSS 3.x base score 5.4)
- EPSS exploit prediction: 0% (11th percentile)
- Actively exploited: Not listed in CISA KEV
- EU (EUVD) id: EUVD-2026-23104
- Weakness: CWE-79
- Affected product: Apostrophecms
- Published:
- Last modified:
Description
ApostropheCMS is an open-source Node.js content management system. Versions 4.28.0 and prior contain a stored cross-site scripting vulnerability in the @apostrophecms/color-field module, where color values prefixed with -- bypass TinyColor validation intended for CSS custom properties, and the launder.string() call performs only type coercion without stripping HTML metacharacters. These unsanitized values are then concatenated directly into <style> tags both in per-widget style elements rendered for all visitors and in the global stylesheet rendered for editors, with the output marked as safe HTML. An editor can inject a value which closes the style tag and executes arbitrary JavaScript in the browser of every visitor to any page containing the affected widget. This enables mass session hijacking, cookie theft, and privilege escalation to administrative control if an admin views draft content. This issue has been fixed in version 4.29.0.
Frequently asked questions
- What is CVE-2026-33889?
- ApostropheCMS is an open-source Node.js content management system. Versions 4.28.0 and prior contain a stored cross-site scripting vulnerability in the @apostrophecms/color-field module, where color values prefixed with -- bypass TinyColor validation intended for CSS custom properties, and the launder.string() call performs only type coercion without stripping HTML metacharacters. These unsanitized values are then concatenated directly into <style> tags both in per-widget style elements rendered for all visitors and in the global stylesheet rendered for editors, with the output marked as safe HTML. An editor can inject a value which closes the style tag and executes arbitrary JavaScript in the browser of every visitor to any page containing the affected widget. This enables mass session hijacking, cookie theft, and privilege escalation to administrative control if an admin views draft content. This issue has been fixed in version 4.29.0.
- How severe is CVE-2026-33889?
- CVE-2026-33889 has a CVSS 3.x base score of 5.4, rated medium severity. It is exploitable over network with low attack complexity, requires low privileges and user interaction. Impact on confidentiality is low, integrity low, and availability none.
- Is CVE-2026-33889 being actively exploited?
- It is not currently listed in CISA's KEV catalog. Its EPSS exploit-prediction score is 0% (11th percentile), an estimate of the probability of exploitation in the next 30 days.
- What products are affected by CVE-2026-33889?
- CVE-2026-33889 affects Apostrophecms. See the affected-products list for the exact vulnerable versions.
- How do I fix CVE-2026-33889?
- Review the linked vendor and NVD advisories for patched versions and mitigations, then upgrade or apply the recommended workaround.
- Does CVE-2026-33889 have an EU (EUVD) identifier?
- Yes. CVE-2026-33889 is tracked in the ENISA EU Vulnerability Database (EUVD) as EUVD-2026-23104.
- When was CVE-2026-33889 published?
- CVE-2026-33889 was published on 2026-04-15 and last updated on 2026-06-17.
References
- https://github.com/apostrophecms/apostrophe/commit/6a89bdb7acdb2e1e9bf1429961a6ba7f99410481
- https://github.com/apostrophecms/apostrophe/security/advisories/GHSA-97v6-998m-fp4g
Affected products (1)
- cpe:2.3:a:apostrophecms:apostrophecms:*:*:*:*:*:*:*:*
More vulnerabilities in Apostrophecms
- CVE-2021-25979 — Critical (CVSS 9.8): Apostrophe CMS versions prior to 3.3.1 did not invalidate existing login sessions when disabling a user account or…
- CVE-2026-35569 — High (CVSS 8.7): ApostropheCMS is an open-source Node.js content management system. Versions 4.28.0 and prior contain a stored…
- CVE-2026-32730 — High (CVSS 8.1): ApostropheCMS is an open-source content management framework. Prior to version 4.28.0, the bearer token authentication…
- CVE-2026-40186 — Medium (CVSS 6.1): ApostropheCMS is an open-source Node.js content management system. A regression introduced in commit 49d0bb7, included…
- CVE-2021-25978 — Medium (CVSS 5.4): Apostrophe CMS versions between 2.63.0 to 3.3.1 are vulnerable to Stored XSS where an editor uploads an SVG file that…
- CVE-2026-39857 — Medium (CVSS 5.3): ApostropheCMS is an open-source Node.js content management system. Versions 4.28.0 and prior contain an authorization…
All CVEs affecting Apostrophecms →
Other CWE-79 (Cross-site Scripting (XSS)) vulnerabilities
- CVE-2025-49410 — Critical (CVSS 10.0): Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting') vulnerability in Imran Emu TC…
- CVE-2024-47875 — Critical (CVSS 10.0): DOMPurify is a DOM-only, super-fast, uber-tolerant XSS sanitizer for HTML, MathML and SVG. DOMpurify was vulnerable to…
- CVE-2024-6886 — Critical (CVSS 10.0): Improper Neutralization of Input During Web Page Generation (XSS or 'Cross-site Scripting') vulnerability in Gitea…
- CVE-2023-45144 — Critical (CVSS 10.0): com.xwiki.identity-oauth:identity-oauth-ui is a package to aid in building identity and service providers based on…
- CVE-2023-45138 — Critical (CVSS 10.0): Change Request is an pplication allowing users to request changes on a wiki without publishing the changes directly.…
- CVE-2022-4361 — Critical (CVSS 10.0): Keycloak, an open-source identity and access management solution, has a cross-site scripting (XSS) vulnerability in the…
Browse all CWE-79 (Cross-site Scripting (XSS)) vulnerabilities →