{"id":"CVE-2025-15599","published":"2026-03-03T17:26:05Z","modified":"2026-10-08T15:21:15Z","title":"DOMPurify XSS via Textarea Rawtext Bypass in SAFE_FOR_XML","vendor":"cure53","product":"DOMPurify","tier":"tail","description":{"text":"DOMPurify 3.1.3 through 3.2.6 and 2.5.3 through 2.5.8 contain a cross-site scripting vulnerability that allows attackers to bypass attribute sanitization by exploiting missing textarea rawtext element validation in the SAFE_FOR_XML regex. Attackers can include closing rawtext tags like </textarea> in attribute values to break out of rawtext contexts and execute JavaScript when sanitized output is placed inside rawtext elements. The 3.x branch was fixed in 3.2.7; the 2.x branch was never patched.","provenance":"source","from":"CVE.org"},"cvss":{"score":6.1,"severity":"MEDIUM","version":"3.1","vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N","provenance":"source","from":"CVE.org CNA"},"epss":{"score":0.00289,"percentile":0.2145,"provenance":"source"},"cwes":[{"id":"CWE-79","name":"Improper Neutralization of Input During Web Page Generation"}],"references":[{"url":"https://github.com/cure53/DOMPurify","tags":["product"]},{"url":"https://github.com/cure53/DOMPurify/commit/c861f5a83fb8d90800f1680f855fee551161ac2b","tags":["patch"]},{"url":"https://www.vulncheck.com/advisories/dompurify-xss-via-textarea-rawtext-bypass-in-safe-for-xml","tags":["third-party-advisory"]}],"priority":{"score":8.6,"factors":[{"name":"EPSS percentile","points":4.29},{"name":"CVSS severity","points":4.27}]},"vendorSlug":"cure53","affectedVersions":[{"vendor":"cure53","product":"DOMPurify","versions":[">= 3.1.3, <= 3.2.6",">= 2.5.3, <= 2.5.8"]}],"affected":[{"ecosystem":"npm","package":"dompurify","vulnerableRanges":[">=3.1.3, <3.2.7",">=2.5.3, <=2.5.8"],"patched":["3.2.7"],"from":["GHSA-v8jm-5vwx-cfxm"],"provenance":"source"}],"euvd":{"id":"EUVD-2025-208240","exploited":false,"provenance":"source"},"lineage":{"packageHistory":[{"cve":"CVE-2024-45801","published":"2024-09-16","fixed":"3.1.3","kev":false},{"cve":"CVE-2024-47875","published":"2024-10-11","fixed":"3.1.3","kev":false},{"cve":"CVE-2025-26791","published":"2025-02-14","fixed":"3.2.4","kev":false,"link":{"from":"CVE-2025-26791","to":"CVE-2025-15599","relation":"successor","confidence":"low","kind":"sequence","evidence":[{"kind":"version-step","provenance":"source","package":"npm:dompurify","fromFixed":"3.2.4","toFixed":"3.2.7","daysApart":382}]}},{"cve":"CVE-2025-15599","published":"2026-03-03","fixed":"3.2.7","kev":false},{"cve":"CVE-2026-0540","published":"2026-03-03","fixed":"3.3.2","kev":false},{"cve":"CVE-2026-65912","published":"2026-07-23","fixed":"3.3.2","kev":false},{"cve":"CVE-2026-65913","published":"2026-07-23","fixed":"3.3.2","kev":false}],"package":"npm:dompurify"}}