CVE Catalog

CVE-2026-106445

CriticalCVSS 9.2
Published: Updated: Translated: NVD NIST

Exploitation Probability (EPSS)

Low risk
0.41%

33th percentile - higher than 33% of all known CVEs

Summary

Handlebars versions from 3.0.0 to 4.7.10 are vulnerable because lookupProperty returns Function.prototype.constructor before applying the prototype-access deny list. An attacker who can render a controlled template with allowProtoMethodsByDefault enabled can access the Function constructor via a bypass, allowing attacker-controlled JavaScript to execute with the server application's privileges.

Risk Assessment

An attacker could execute malicious code on the server, potentially leading to full application and data compromise, including server takeover.

Recommendation

Upgrade Handlebars to version 4.7.10 or later, which includes the fix. Additionally, restrict rendering of untrusted templates.

Other vulnerabilities in Handlebars

See all
Original NVD description (English source)

Handlebars provides the power necessary to let users build semantic templates. From 3.0.0 until 4.7.10, Handlebars lookupProperty returns Function.prototype.constructor before applying the prototype-access deny list because constructor is an own property of Function.prototype. When an attacker can render a controlled template with allowProtoMethodsByDefault enabled and an accessible function in the template context, the template can traverse from that function through its prototype to Function.prototype and then obtain the Function constructor through the own-property bypass. This permits attacker-controlled JavaScript to execute with the server application's privileges. This issue is fixed in version 4.7.10.

Vulnerability data from NVD (NIST) · CISA KEV · EPSS