Home

Description

DOMPurify is a DOM-only cross-site scripting sanitizer for HTML, MathML, and SVG. Versions 3.0.1 through 3.3.3 are vulnerable to a prototype pollution-based XSS bypass. When an application uses `DOMPurify.sanitize()` with the default configuration (no `CUSTOM_ELEMENT_HANDLING` option), a prior prototype pollution gadget can inject permissive `tagNameCheck` and `attributeNameCheck` regex values into `Object.prototype`, causing DOMPurify to allow arbitrary custom elements with arbitrary attributes — including event handlers — through sanitization. Version 3.4.0 fixes the issue.

PUBLISHED Reserved 2026-04-18 | Published 2026-04-23 | Updated 2026-04-23 | Assigner GitHub_M




MEDIUM: 6.9CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:C/C:H/I:L/A:N

Problem types

CWE-79: Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting')

CWE-1321: Improperly Controlled Modification of Object Prototype Attributes ('Prototype Pollution')

Product status

>= 3.0.1, < 3.4.0
affected

References

github.com/...Purify/security/advisories/GHSA-v9jr-rg53-9pgp exploit

github.com/...Purify/security/advisories/GHSA-v9jr-rg53-9pgp

github.com/cure53/DOMPurify/releases/tag/3.4.0

cve.org (CVE-2026-41238)

nvd.nist.gov (CVE-2026-41238)

Download JSON