CVE-2019-16728 Cross-Site Scripting in dompurify
An attacker can execute arbitrary JavaScript via mutation XSS in DOMPurify when sanitizing SVG or MATH elements.
- Exploited in the wild
- Not known
- Login needed
- Not needed
- Attackable
- Over the internet
- Victim action needed
- A user has to click or open something
- Fix
- Available
What is CVE-2019-16728?
CVE-2019-16728 is a medium-severity cross-site scripting vulnerability in Debian Debian Linux, published on 24 Sep 2019. An attacker can exploit it over the internet without logging in, and only if a user opens a file or follows a link.
Official description
DOMPurify before 2.0.1 allows XSS because of innerHTML mutation XSS (mXSS) for an SVG element or a MATH element, as demonstrated by Chrome and Safari.
Weakness: CWE-79
Which versions are affected by CVE-2019-16728?
2 open source packages ship an affected version, including dompurify. It affects 2 products.
| Package | Affected | Fixed in |
|---|---|---|
dompurify npm | All versions | 2.0.3 |
dompurify npm | All versions | 2.0.3 |
Products include Cure53 Dompurify, Debian Debian Linux.
How do I fix CVE-2019-16728?
Upgrade dompurify to 2.0.3 or later.
Escape output for the context it lands in and set a strict Content Security Policy. Upgrading the affected component is the real fix. More about Cross-site scripting.
Is CVE-2019-16728 being exploited?
There is no known exploitation of CVE-2019-16728 in the wild and no public exploit code.
Other vulnerabilities in Debian Debian Linux
- CVE-2024-47875 DOMPurify nesting-based mXSS
- CVE-2024-48910 DOMPurify vulnerable to tampering by prototype polution
- CVE-2026-47423 DOMPurify XSS via `selectedcontent` re-clone
- CVE-2024-45801 Tampering by prototype polution in DOMPurify
- CVE-2026-49978 DOMPurify IN_PLACE Sanitization Bypass via Attached Shadow Root Inside <template>.content
Sources
Also known as GHSA-chqj-j4fh-rw7m, UBUNTU-CVE-2019-16728.