DOMPurify contains a Cross-site Scripting vulnerability
Published 3 Mar 2026 · Updated 10 Sept 2026
Affected packages
- Affected
- >=3.1.3 <3.3.2
- Fixed in
- 3.3.2
npm install dompurify@3.3.2- Affected
- >=2.5.3 <2.5.9
- Fixed in
- 2.5.9
npm install dompurify@2.5.9Details
DOMPurify 3.1.3 through 3.3.1 and 2.5.3 through 2.5.8, fixed in 2.5.9 and 3.3.2, 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.
Is GHSA-v2wj-7wpq-c8vv in any of your client repos?
Checking one package by hand is fine. Checking it across forty client projects is not. NPMscan reads the lockfiles in every GitHub repo you pick, finds each project with an affected dompurify, and gives you the command that fixes it.
References
- Advisorynvd.nist.gov/vuln/detail/CVE-2026-0540
- Linkgithub.com/cure53/DOMPurify/commit/302b51de22535cc90235472c52e3401bedd46f80
- Linkgithub.com/cure53/DOMPurify/commit/fca0a938b4261ddc9c0293a289935a9029c049f5
- Linkfluidattacks.com/advisories/daft
- Packagegithub.com/cure53/DOMPurify
- Linkgithub.com/cure53/DOMPurify/releases/tag/3.3.2
- Linkwww.vulncheck.com/advisories/dompurify-xss-via-missing-rawtext-elements-in-safe-for-xml
Advisory data from OSV.dev (opens OSV.dev in a new tab), refreshed daily.