Highlights
Reflected XSS: 72 prior fixes. Scrutinize any change in this area.
src/purify.js: most-fixed (188 issues). Treat as high-risk during review.
194 high-severity fixes in this history; regressions here are high-impact.
Recurring patterns
The bug types that recur here, drawn from past fixes, not open vulnerabilities.
mXSS / Mutation XSS: Dominant vulnerability class with dozens of fixes targeting parser-differential behavior in SVG/MathML, template, and rawtext elements. Recurring bypasses via namespace confusion, nested templates, and forbidden content elements.
DOM Clobbering: Frequent bypasses by clobbering DOM properties (nodeName, parentNode, childNodes, hasChildNodes, remove) to evade sanitization walks or cause runtime errors. Requires prototype-bound getters and cached references.
Prototype Pollution: Configuration cloning and property lookups repeatedly vulnerable to prototype pollution, enabling tampering with allowlists, hooks, and internal state. Requires hasOwnProperty checks and null-prototype objects.