Skip to main content
← All vulnerabilities
CVE-2026-106444GHSA-XW65-4HP5-5HC7

Handlebars: JavaScript Injection via Unsafe Inline Embedding of Precompiled Templates

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

Summary

Handlebars provides the power necessary to let users build semantic templates. From 4.0.0 until 4.7.10, Handlebars.precompile() uses quotedString() in lib/handlebars/compiler/code-gen.js to emit static template text into generated JavaScript without escaping sequences that terminate an enclosing HTML script element. When an application precompiles attacker-controlled template text and embeds the generated source directly in an inline script element, a closing script delimiter can end the element and cause following attacker-controlled markup to be parsed and executed. Ordinary server-side rendering and precompiled templates served as external JavaScript files are not affected. This issue is fixed in version 4.7.10.

Timeline

  1. CVE published
  2. CISA SSVC assessment

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

  3. Record last updated

Affected versions

  • handlebars-lang handlebars.js

    From 4.0.0 · fixed in 4.7.10

  • handlebarsnpm

    From 4.0.0 · fixed in 4.7.10

References 4

GitHub · handlebars-lang/handlebars.js