Description
ApostropheCMS is an open-source Node.js content management system, and sanitize-html provides a simple HTML sanitizer with a clear API. From sanitize-html 2.17.7 until 2.18.0, an application configuration that permits namespace-prefixed SVG animation elements and the relevant URL-targeting attributes can bypass the SMIL URL protection because prefixed tag names do not match the unprefixed animation-element check. The bypass can rewrite a link destination to an unsafe URI after the sanitized SVG is rendered, with script execution occurring when a user activates the affected link; the default sanitizer configuration is not unconditionally affected. This issue is fixed in sanitize-html 2.18.0.
References5
- github.com/apostrophecms/apostrophe/commit/9500b8b0e1d630d5e07f…
- github.com/apostrophecms/apostrophe/commit/f84fd41cbf6c22eb8d00…
- github.com/apostrophecms/apostrophe/releases/tag/sanitize-html@…
- github.com/apostrophecms/apostrophe/security/advisories/GHSA-37…
- github.com/apostrophecms/apostrophe/security/advisories/GHSA-37…
Metrics
- CVSS 3.1
-
3.7
LOW
Score source: CNA
CVSS:3.1/AV:N/AC:H/PR:L/UI:R/S:U/C:L/I:L/A:N - EPSS — exploit probability
- 0% percentile: 24 · as of 9 November 2026
- CWE
- CWE-79
Could this be exploited in your environment?
A patch closes the known hole. A penetration test shows what an attacker can still reach — with proof.