CVE-2026-66010 DOMPurify before 3.4.12 Hook Bypass via CUSTOM_ELEMENT_HANDLING

Medium 5.1 Published Updated

Attackers can bypass DOMPurify hooks to preserve malicious attributes on custom elements, enabling second-order XSS in applications using this library.

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-66010?

CVE-2026-66010 is a medium-severity cross-site scripting vulnerability in cure53 DOMPurify, published on 24 Jul 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 before 3.4.12 fails to execute afterSanitizeElements hook for custom elements allowed via CUSTOM_ELEMENT_HANDLING.tagNameCheck, allowing attributes to bypass application security policies. Attackers can preserve sensitive attributes on custom elements that later re-inject them into innerHTML sinks, creating second-order XSS gadgets.

Weakness: CWE-79

Which versions are affected by CVE-2026-66010?

2 open source packages ship an affected version, including dompurify. It affects 1 product.

PackageAffectedFixed in
dompurify npmAll versions3.4.12
dompurify npmAll versions3.4.12

Products include Cure53 Dompurify.

How do I fix CVE-2026-66010?

Upgrade dompurify to 3.4.12 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-2026-66010 being exploited?

It is not confirmed as exploited in the wild, but public exploit code for CVE-2026-66010 exists.

Sources

Also known as CLEANSTART-2026-DT43318, CLSA-2026-1784769541, CLSA-2026-1784769611, CLSA-2026-1784943203, CLSA-2026-1784943304, CLSA-2026-1791798931 and 28 more.

Is CVE-2026-66010 in your software?

Upload an SBOM and sbomify checks it against every vulnerability here, every day.

Check your SBOMs for free