{"id":"CVE-2026-53606","sourceIdentifier":"security-advisories@github.com","published":"2026-06-12T21:16:24.093","lastModified":"2026-10-25T23:10:00.167","vulnStatus":"Deferred","cveTags":[],"descriptions":[{"lang":"en","value":"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."},{"lang":"es","value":"ApostropheCMS es un sistema de gestión de contenido de código abierto basado en Node.js, y sanitize-html proporciona un saneador de HTML simple con una API clara. Las versiones de sanitize-html anteriores a la 2.17.5 usan ’allowedSchemesAppliedToAttributes’ (predeterminado: ’[’href’, ’src’, ’cite’]’) para controlar la función ’naughtyHref()’ que bloquea esquemas URI peligrosos como ’javascript_disabled: ’ y ’vbscript:’. La especificación HTML define más de 10 atributos que aceptan URIs (’action’, ’formaction’, ’data’, ’poster’, ’background’, ’ping’, ’xlink:href’, ’dynsrc’, ’lowsrc’), pero ninguno de estos está incluido en la lista de control predeterminada. Cuando un desarrollador permite cualquiera de estos atributos en su configuración, los URIs ’javascript_disabled: ’ pasan completamente sin modificar, lo que permite XSS. La versión 2.17.5 corrige el problema."}],"affected":[{"source":"security-advisories@github.com","affectedData":[{"vendor":"apostrophecms","product":"sanitize-html","versions":[{"version":"< 2.17.5","status":"affected"}]}]}],"metrics":{"cvssMetricV31":[{"source":"security-advisories@github.com","type":"Secondary","cvssData":{"version":"3.1","vectorString":"CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:L/I:L/A:N","baseScore":5.4,"baseSeverity":"MEDIUM","attackVector":"NETWORK","attackComplexity":"LOW","privilegesRequired":"LOW","userInteraction":"REQUIRED","scope":"CHANGED","confidentialityImpact":"LOW","integrityImpact":"LOW","availabilityImpact":"NONE"},"exploitabilityScore":2.3,"impactScore":2.7}],"ssvcV203":[{"source":"134c704f-9b21-4f2e-91b3-4a467353bcc0","ssvcData":{"timestamp":"2026-06-15T17:54:19.772501Z","id":"CVE-2026-53606","options":[{"exploitation":"poc"},{"automatable":"no"},{"technicalImpact":"partial"}],"role":"CISA Coordinator","version":"2.0.3"}}]},"weaknesses":[{"source":"security-advisories@github.com","type":"Secondary","description":[{"lang":"en","value":"CWE-79"}]}],"references":[{"url":"https://github.com/apostrophecms/apostrophe/security/advisories/GHSA-vccv-cmxp-4j9h","source":"security-advisories@github.com"},{"url":"https://github.com/apostrophecms/apostrophe/security/advisories/GHSA-vccv-cmxp-4j9h","source":"134c704f-9b21-4f2e-91b3-4a467353bcc0"}]}