CVE-2026-0540 DOMPurify XSS via Missing Rawtext Elements in SAFE_FOR_XML
Attackers can execute arbitrary JavaScript by bypassing DOMPurify sanitization via missing rawtext elements in SAFE_FOR_XML mode.
- 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-2026-0540?
CVE-2026-0540 is a medium-severity cross-site scripting vulnerability in cure53 DOMPurify, published on 3 Mar 2026. 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 3.1.3 through 3.3.1 and 2.5.3 through 2.5.8, fixed in commit 2726c74, 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.
Weakness: CWE-79
Which versions are affected by CVE-2026-0540?
4 open source packages ship an affected version, including dompurify. It affects 1 product.
| Package | Affected | Fixed in |
|---|---|---|
dompurify npm | From 2.5.3 | 2.5.9 |
dompurify npm | From 2.5.3 | 2.5.9 |
dompurify npm | From 3.1.3 | 3.3.2 |
dompurify npm | From 3.1.3 | 3.3.2 |
Linux distribution packages (1)
cacti openSUSE:Tumbleweed | All versions | 1.2.30+git306.82d5aef5-1.1 |
Products include Cure53 Dompurify.
How do I fix CVE-2026-0540?
Upgrade dompurify to a fixed version for your release line: 2.5.9 or 3.3.2.
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-2026-0540 being exploited?
There is no known exploitation of CVE-2026-0540 in the wild and no public exploit code.
Other vulnerabilities in cure53 DOMPurify
- 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 CLEANSTART-2026-LL84916, CLEANSTART-2026-PI18727, DEBIAN-CVE-2026-0540, ECHO-c8de-3322-06e5, GHSA-v2wj-7wpq-c8vv, MINI-cj56-cg85-3fvm and 11 more.