Skip to main content
← All vulnerabilities
CVE-2026-33943GHSA-6Q6H-J7HJ-3R64

Happy DOM ECMAScriptModuleCompiler: unsanitized export names are interpolated as executable code

Published
Last modified
published
Not listed in CISA KEV
Fix
Fixed in 20.8.8
None on Exploit-DB, Metasploit or GitHub
  • Exploitation: poc
  • Automatable: no
  • Technical impact: total

Summary

Happy DOM is a JavaScript implementation of a web browser without its graphical user interface. In versions 15.10.0 through 20.8.7, a code injection vulnerability in `ECMAScriptModuleCompiler` allows an attacker to achieve Remote Code Execution (RCE) by injecting arbitrary JavaScript expressions inside `export { }` declarations in ES module scripts processed by happy-dom. The compiler directly interpolates unsanitized content into generated code as an executable expression, and the quote filter does not strip backticks, allowing template literal-based payloads to bypass sanitization. Version 20.8.8 fixes the issue.

Timeline

  1. CVE published
  2. CISA SSVC assessment

    Exploitation: poc · Automatable: no · Technical impact: total

  3. Record last updated

Affected versions

  • capricorn86 happy-dom

    From 15.10.0 · fixed in 20.8.8

  • happy-domnpm

    From 15.10.0 · fixed in 20.8.8

References 3

GitHub · capricorn86/happy-dom