Description
DOMPurify 3.1.3 through 3.3.1 and 2.5.3 through 2.5.8, fixed in commit 729097f, contain a cross-site scripting vulnerability that allows attackers to bypass attribute sanitization by exploiting five missing rawtext elements (noscript, xmp, noembed, noframes, iframe) in the SAFE_FOR_XML regex. Attackers can include payloads like </noscript><img src=x onerror=alert(1)> in attribute values to execute JavaScript when sanitized output is placed inside these unprotected rawtext contexts.
Problem types
Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting')
Product status
2.5.3 (semver)
Credits
Scott Moore - VulnCheck
References
github.com/cure53/DOMPurify (DOMPurify GitHub Repository)
github.com/...ommit/fca0a938b4261ddc9c0293a289935a9029c049f5
www.vulncheck.com/...issing-rawtext-elements-in-safe-for-xml (VulnCheck Advisory: DOMPurify XSS via Missing Rawtext Elements in SAFE_FOR_XML)