XSS in Apostrophecms Sanitize-Html
CVE-2026-53606
ApostropheCMS is an open-source Node.js content management system, and sanitize-html provides a simple HTML sanitizer with a clear API. Versions of sanitize-html prior to 2.17.5 use `allowedSchemesAppliedToAttributes` (default: `['href', 'src', 'cite']`) to gate the `naughtyHref()` function that blocks dangerous URI schemes like `javascript:` and `vbscript:`. The HTML specification defines 10+ attributes that accept URIs (`action`, `formaction`, `data`, `poster`, `background`, `ping`, `xlink:href`, `dynsrc`, `lowsrc`), but none of these are included in the default gate list. When a developer allows any of these attributes in their configuration, `javascript:` URIs pass through completely unmodified, enabling XSS. Version 2.17.5 patches the issue.
Vulnerability class: XSS (Cross-Site Scripting)
EPSS: 0.002 (7.3th percentile) — read the EPSS interpretation.
CVSS v3 metric
CVSS v3 base score 5.4 (Medium). Vector: CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:L/I:L/A:N.
Affected products
- Apostrophecms Sanitize-html — versions < 2.17.5
Weakness classification (CWE)
References
- security-advisories@github.com (x_refsource_CONFIRM)
Frequently asked questions
- What is CVE-2026-53606?
- CVE-2026-53606 is a medium-severity vulnerability in Apostrophecms Sanitize-Html, classified under Cross-site Scripting. CVSS score: 5.4/10. Published 2026-06-12.
- How severe is CVE-2026-53606?
- Medium severity. CVSS v3 base score is 5.4 out of 10.