CVE-2026-65899: Protection Mechanism Failure in cure53 DOMPurify
DOMPurify 3.0.0 before 3.4.9 does not reset the retained Trusted Types policy when clearConfig() is called, so a DOMPurify instance reused across trust boundaries stays bound to a previously supplied TRUSTED_TYPES_POLICY. A later caller that requests RETURN_TRUSTED_TYPE output receives a TrustedHTML object created by the old (potentially unsafe) policy rather than a clean default, which can lead to script execution at a Trusted Types sink. Passing TRUSTED_TYPES_POLICY: null on the later call also does not clear the retained policy.
AI Analysis
Technical Summary
DOMPurify versions >=3.0.0 and <3.4.9 do not reset the retained Trusted Types policy upon calling clearConfig(). This means that if a DOMPurify instance is reused across different trust boundaries, it remains bound to a previously set TRUSTED_TYPES_POLICY. When a later caller requests RETURN_TRUSTED_TYPE output, the TrustedHTML object returned is created by the old policy rather than a clean default. Additionally, passing TRUSTED_TYPES_POLICY: null on the later call does not clear the retained policy. This behavior can result in script execution at a Trusted Types sink due to the use of an unsafe policy.
Potential Impact
The vulnerability allows script execution at a Trusted Types sink by returning TrustedHTML objects created by an old, potentially unsafe Trusted Types policy. This undermines the protection mechanism intended by Trusted Types policies, potentially enabling cross-site scripting (XSS) or similar script injection attacks when DOMPurify instances are reused across trust boundaries.
Mitigation Recommendations
Patch status is not yet confirmed — check the vendor advisory for current remediation guidance. Until an official fix is available, avoid reusing DOMPurify instances across different trust boundaries or explicitly ensure that the Trusted Types policy is properly reset. Passing TRUSTED_TYPES_POLICY: null does not clear the retained policy, so this approach is ineffective. Monitor vendor communications for updates and apply patches once released.
CVE-2026-65899: Protection Mechanism Failure in cure53 DOMPurify
Description
DOMPurify 3.0.0 before 3.4.9 does not reset the retained Trusted Types policy when clearConfig() is called, so a DOMPurify instance reused across trust boundaries stays bound to a previously supplied TRUSTED_TYPES_POLICY. A later caller that requests RETURN_TRUSTED_TYPE output receives a TrustedHTML object created by the old (potentially unsafe) policy rather than a clean default, which can lead to script execution at a Trusted Types sink. Passing TRUSTED_TYPES_POLICY: null on the later call also does not clear the retained policy.
CVSS v4.0
Score 5.1medium
Affected software
Run on your own infrastructure? Check whether these packages are installed with threat-finder — our free open-source scanner.
AI-Powered Analysis
Machine-generated threat intelligence
Technical Analysis
DOMPurify versions >=3.0.0 and <3.4.9 do not reset the retained Trusted Types policy upon calling clearConfig(). This means that if a DOMPurify instance is reused across different trust boundaries, it remains bound to a previously set TRUSTED_TYPES_POLICY. When a later caller requests RETURN_TRUSTED_TYPE output, the TrustedHTML object returned is created by the old policy rather than a clean default. Additionally, passing TRUSTED_TYPES_POLICY: null on the later call does not clear the retained policy. This behavior can result in script execution at a Trusted Types sink due to the use of an unsafe policy.
Potential Impact
The vulnerability allows script execution at a Trusted Types sink by returning TrustedHTML objects created by an old, potentially unsafe Trusted Types policy. This undermines the protection mechanism intended by Trusted Types policies, potentially enabling cross-site scripting (XSS) or similar script injection attacks when DOMPurify instances are reused across trust boundaries.
Mitigation Recommendations
Patch status is not yet confirmed — check the vendor advisory for current remediation guidance. Until an official fix is available, avoid reusing DOMPurify instances across different trust boundaries or explicitly ensure that the Trusted Types policy is properly reset. Passing TRUSTED_TYPES_POLICY: null does not clear the retained policy, so this approach is ineffective. Monitor vendor communications for updates and apply patches once released.
Technical Details
- Data Version
- 5.2
- Assigner Short Name
- VulnCheck
- Date Reserved
- 2026-07-23T11:03:13.092Z
- Cvss Version
- 4.0
- State
- PUBLISHED
- Remediation Level
- null
Threat ID: 6a6215a29c2644c7f82072cb
Added to database: 07/23/2026, 13:22:42 UTC
Last enriched: 07/23/2026, 14:07:05 UTC
Last updated: 07/24/2026, 03:43:25 UTC
Views: 8
Community Reviews
0 reviewsCrowdsource mitigation strategies, share intel context, and vote on the most helpful responses. Sign in to add your voice and help keep defenders ahead.
Want to contribute mitigation steps or threat intel context? Sign in or create an account to join the community discussion.
Actions
Updates to AI analysis require Pro Console access. Upgrade inside Console → Billing.
Need more coverage?
Upgrade to Pro Console for AI refresh and higher limits.
For incident response and remediation, OffSeq services can help resolve threats faster.
Latest Threats
Check if your credentials are on the dark web
Instant breach scanning across billions of leaked records. Free tier available.