CVE-2026-65911 DOMPurify vulnerability
In DOMPurify through 3.3.3, function predicates supplied via ADD_ATTR or ADD_TAGS to DOMPurify.sanitize() persist in internal state (EXTRA_ELEMENT_HANDLING) across subsequent sanitize() calls on the same instance. If a later call on the same instance provides ADD_ATTR or ADD_TAGS as an array rather than a function, the previously set function handler is neither cleared nor overwritten, so it continues to approve attacker-controlled attributes or tags. This can allow dangerous event-handler attributes or forbidden tags (bypassing FORBID_TAGS) to survive sanitization, resulting in cross-site scripting. The vendor (Cure53) considers this an edge case outside DOMPurify's threat model; the referenced advisory lists 3.4.0 as the patched version.
Browse Cross-site Scripting security risksQuick answer
cure53 DOMPurify should be reviewed and updated if it matches the affected versions. The recommended fix is to apply the vendor-supported patched version or the mitigation steps below, then retest the public website with Fixnx.
Who is affected
Affected versions
- < 3.4.0
Fixed versions
- 3.4.0
How to fix it
CVE-2026-65911 affects DOMPurify and involves cross-site scripting. Successful exploitation may run attacker-controlled script in a trusted user's browser and expose session or application data. Prioritize deployments that process untrusted input, expose the affected feature, or hold sensitive data. Upgrade DOMPurify to 3.4.0 or a later vendor-supported fixed release.
- Inventory every deployment, device, package, plugin, container, build, and environment that uses DOMPurify.
- Compare the installed version with the recorded affected range: < 3.4.0.
- Upgrade DOMPurify to 3.4.0 or a later vendor-supported fixed release.
- Until patched, reduce public exposure, disable the affected workflow where practical, and allow access only from trusted users and systems.
- Review configuration, roles, tokens, network paths, and exposed endpoints connected to DOMPurify; remove access that is not required.
- Review submissions, stored content, administrator activity, CSP reports, and web logs for script payloads or suspicious browser requests.
- If exploitation is suspected, isolate affected assets, preserve evidence, rotate exposed credentials or keys, restore trusted data, and rebuild compromised systems before returning them to service.
Scan now. Google sign-in is only needed to unlock fix guidance.
Verify the fix
- Confirm every affected asset now runs the fixed vendor-supported release or has the documented mitigation for CVE-2026-65911 in place.
- Use a safe regression test to confirm the affected cross-site scripting path no longer produces the vulnerable behavior.
- Confirm temporary access controls, endpoint restrictions, network blocks, and least-privilege settings remain effective after the update.
- Review post-remediation logs and rerun Fixnx plus the relevant package, dependency, firmware, browser, or product-specific security check.
- Document affected assets, versions, changes, validation evidence, reviewed logs, and any credential rotation, cleanup, or replacement completed.
Related categories
Related security risks
More published guidance from the same primary category.
Trusted references
FAQ
What is affected by CVE-2026-65911?
cure53 DOMPurify versions listed as affected should be reviewed: < 3.4.0.
What should I fix first?
Start with internet-facing sites, admin panels, login flows, plugins, themes, modules, packages, and systems that process user-controlled input or sensitive data.
How do I confirm the fix worked?
Apply the patched version or mitigation, clear caches where relevant, retest the affected workflow, and run a new Fixnx scan to verify public website exposure signals.
How are Fixnx security risk categories chosen?
Fixnx keeps one canonical risk page and assigns only broad, relevant categories such as ecosystem, technology area, or vulnerability class.
