Happy DOM Code Injection and Express XSS Sanitizer Bypass Patched
Two high-severity flaws were disclosed in widely used JavaScript ecosystem packages, including a remote code execution issue in Happy DOM tracked as CVE-2026-33943 and an XSS protection bypass in Express XSS Sanitizer tracked as CVE-2026-33979. In Happy DOM versions 15.10.0 through 20.8.7, unsanitized names inside export { } declarations in the ECMAScriptModuleCompiler could be interpolated into generated code and executed, allowing arbitrary JavaScript injection through ES module scripts. The flaw is classified as CWE-94 and was fixed in version 20.8.8.
Express XSS Sanitizer versions prior to 2.0.2 were found to mishandle restrictive allowedTags and allowedAttributes settings, causing explicitly empty configurations to be ignored and weakening intended sanitization controls. That behavior could leave applications exposed to cross-site scripting despite developers attempting to enforce strict filtering. The issue is tracked as CVE-2026-33979, mapped to CWE-79 and CWE-183, and was corrected in version 2.0.2 by ensuring user-supplied sanitization settings are passed through as intended.

Get ahead of threats like this
Mallory correlates global threat intelligence with your attack surface — know if you’re exposed before adversaries strike.
How this story unfolded
5 events from the most recent confirmed update back to the earliest known activity.
Express XSS Sanitizer fixes bypass in version 2.0.2
Version 2.0.2 changed validation logic so explicitly provided empty `allowedTags` or `allowedAttributes` values are respected and passed directly to sanitize-html. This fixed the permissive sanitization behavior that could increase XSS risk.
GitHub security advisories receives CVE-2026-33979 report
The CVE record states that security-advisories@github.com received the Express XSS Sanitizer vulnerability report on March 27, 2026. The issue was classified under CWE-79 and CWE-183.
Express XSS Sanitizer flaw found in versions prior to 2.0.2
A vulnerability in Express XSS Sanitizer caused explicitly restrictive `allowedTags` or `allowedAttributes` settings to be ignored, potentially weakening intended XSS protections. The issue affected versions before 2.0.2 across Express 4.x and 5.x middleware deployments.
Happy DOM fixes CVE-2026-33943 in version 20.8.8
Happy DOM addressed the ECMAScriptModuleCompiler code injection issue by releasing version 20.8.8. The fix closed the sanitization bypass that allowed executable code injection through crafted ES module exports.
Happy DOM code injection flaw affects versions 15.10.0 through 20.8.7
A code injection vulnerability in Happy DOM's ECMAScriptModuleCompiler allowed unsanitized export names in `export { }` declarations to be interpolated into generated code and executed. The flaw could enable remote code execution via injected JavaScript expressions, including template literal payloads using backticks.
Related entities
Vulnerabilities, threat actors, malware, products, organizations, and breaches Mallory has linked to this story.
Sources
2 references tracked. Mallory keeps watching after this page renders.
CVE-2026-33979 - Express XSS Sanitizer: allowedTags/allowedAttributes bypass leads to permissive sanitization (XSS risk)
cvefeed.io
Open sourceCVE-2026-33943 - Happy DOM ECMAScriptModuleCompiler: unsanitized export names are interpolated as executable code
cvefeed.io
Open sourceSee the full picture, correlated to your attack surface.
Map indicators from this story to your assets and identify affected systems in minutes.
Every observed campaign, victim, and pivot linked to actors named in this story.
Malware, exploits, and IOCs connected to the activity described here.
YARA, Sigma, and Snort rules deployed to your SIEM as soon as they’re published.
Get matching new stories delivered to your team as they break — not the next morning.
Ask questions about this story and take action on the answers.


