Description
Cure53 DOMPurify before 2.0.17 allows mutation XSS. This occurs because a serialize-parse roundtrip does not necessarily return the original DOM tree, and a namespace can change from HTML to MathML, as demonstrated by nesting of FORM elements.
Fixed in Linux distributions
Distributions backport fixes, so the version that fixes this vulnerability differs per release — upgrade to at least the version shown. From the distributions' security trackers and advisories.
Debian
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Debian 9 | dompurify.js | 0.8.2~dfsg1-1+deb9u1 | DLA-2419-1 |
Ubuntu
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Ubuntu 18.04 LTS | dompurify.js | No fix yet | — |
| Ubuntu 16.04 LTS | dompurify.js | No fix yet | — |
Affected packages
| Ecosystem | Package | Affected | Fixed | Record |
|---|---|---|---|---|
| npm | dompurify | < 2.0.17 | 2.0.17 | GHSA-63q7-h895-m982 |
Advisories 2
- DLA-2419-1 dompurify.js - security update Debian Security (DSA / DLA) · Mar 9, 2026
- WID-SEC-2024-0117 Oracle Retail Applications: Mehrere Schwachstellen BSI CERT-Bund (WID) · Jan 16, 2024
References
- https://research.securitum.com/mutation-xss-via-mathml-mutation-dompurify-2-0-17-bypass/
- https://github.com/cure53/DOMPurify/commit/02724b8eb048dd219d6725b05c3000936f11d62d
- https://github.com/cure53/DOMPurify/compare/2.0.16...2.0.17
- [debian-lts-announce] 20201029 [SECURITY] [DLA 2419-1] dompurify.js security update mailing-list
- Visual Studio Remote Code Execution Vulnerability vendor-advisory
- https://www.oracle.com//security-alerts/cpujul2021.html