8.2High

Handlebarsjs Handlebars

CVE-2026-33941

Handlebars provides the power necessary to let users build semantic templates. In versions 4.0.0 through 4.7.8, the Handlebars CLI precompiler (`bin/handlebars` / `lib/precompiler.js`) concatenates user-controlled strings — template file names and several CLI options — directly into the JavaScript it emits, without any escaping or sanitization. An attacker who can influence template filenames or CLI arguments can inject arbitrary JavaScript that executes when the generated bundle is loaded in Node.js or a browser. Version 4.7.9 fixes the issue. Some workarounds are available. First, validate all CLI inputs before invoking the precompiler. Reject filenames and option values that contain characters with JavaScript string-escaping significance (`"`, `'`, `;`, etc.). Second, use a fixed, trusted namespace string passed via a configuration file rather than command-line arguments in automated pipelines. Third, run the precompiler in a sandboxed environment (container with no write access to sensitive paths) to limit the impact of successful exploitation. Fourth, audit template filenames in any repository or package that is consumed by an automated build pipeline.

What this means for your business

  • It affects Handlebarsjs Handlebars. It matters if your company, or a supplier that handles your data, runs it.
  • Code showing how to exploit it has been published, but real attacks have not been confirmed.
  • An attacker can use it only with access to the machine itself, with an ordinary user login, but only after tricking someone into an action such as opening a file or a link.
  • FIRST's prediction model gives it a 0.3% chance of attack attempts being seen in the next 30 days, ranking above 21% of all known flaws.

What to do

  1. 1Check whether your company or your suppliers run Handlebarsjs Handlebars, and which version. The affected versions are listed further down this page.
  2. 2If you do, apply the vendor's fix. A patch or vendor advisory has been published.

Not sure if your company is exposed?

Fastnexa’s certified penetration testers can check whether attackers could use this flaw, or others like it, against your websites, apps and network. The full test is free for our first 10 founding clients until 31 December 2026.

Scoring

CVSS
8.2 (v3.1)
Vector
CVSS:3.1/AV:L/AC:L/PR:L/UI:R/S:C/C:H/I:H/A:H
Weakness
CWE-79
Assigned by
security-advisories@github.com

Dates

Published
2026-03-27
Last modified
2026-09-04
Sources
NVD

Affected products

  • Handlebarsjs Handlebars4.0.0 - 4.7.9

As listed in the NVD configuration data. Not a statement about your estate.

References