Zero Day MonitorZDM
DashboardVulnerabilitiesTrendingZero-DaysNews
Login
ImpressumPrivacy Policy
Zero Day Monitor © 2026
2329 articles · 106042 vulns · 38/41 feeds (7d)
← Back to list
4.7
CVE-2026-33916PATCHED
handlebars-lang · handlebars.js

Handlebars.js has Prototype Pollution Leading to XSS through Partial Template Injection

Description

Handlebars provides the power necessary to let users build semantic templates. In versions 4.0.0 through 4.7.8, `resolvePartial()` in the Handlebars runtime resolves partial names via a plain property lookup on `options.partials` without guarding against prototype-chain traversal. When `Object.prototype` has been polluted with a string value whose key matches a partial reference in a template, the polluted string is used as the partial body and rendered without HTML escaping, resulting in reflected or stored XSS. Version 4.7.9 fixes the issue. Some workarounds are available. Apply `Object.freeze(Object.prototype)` early in application startup to prevent prototype pollution. Note: this may break other libraries, and/or use the Handlebars runtime-only build (`handlebars/runtime`), which does not compile templates and reduces the attack surface.

Affected Products

VendorProductVersions
handlebars-langhandlebars.js>= 4.0.0, < 4.7.9

References

  • https://github.com/handlebars-lang/handlebars.js/security/advisories/GHSA-2qvq-rjwj-gvw9(x_refsource_CONFIRM)
  • https://github.com/handlebars-lang/handlebars.js/commit/68d8df5a88e0a26fe9e6084c5c6aaebe67b07da2(x_refsource_MISC)
  • https://github.com/handlebars-lang/handlebars.js/releases/tag/v4.7.9(x_refsource_MISC)

Related News (2 articles)

Tier A
Microsoft MSRC4h ago
CVE-2026-33916 Handlebars.js has Prototype Pollution Leading to XSS through Partial Template Injection
→ No new info (linked only)
Tier C
VulDB4d ago
CVE-2026-33916 | Handlebars up to 4.7.7 cross site scripting
→ No new info (linked only)
CVSS 3.14.7 MEDIUM
VectorCVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:C/C:L/I:L/A:N
CISA KEV❌ No
Actively exploited❌ No
Patch availablenull
CWECWE-79, CWE-1321
PublishedMar 26, 2026
Last enriched4d agov2
Tags
GHSA-2qvq-rjwj-gvw9npm
Trending Score42
Source articles2
Independent2
Info Completeness9/14
Missing: epss, kev, exploit, iocs, mitre_attack

Community Vote

0
Login to vote
0 upvotes0 downvotes
No votes yet

Related CVEs (5)

HIGHCVE-2026-33939EXP
Handlebars.js has Denial of Service via Malformed Decorator Syntax in Template Compilation
Trending: 76
CRITICALCVE-2026-33938EXP
Handlebars.js has JavaScript Injection via AST Type Confusion by tampering @partial-block
Trending: 61
HIGHCVE-2026-33940
Handlebars.js has JavaScript Injection via AST Type Confusion when passing an object as dynamic partial
Trending: 52
CRITICALCVE-2026-33937
Handlebars.js has JavaScript Injection via AST Type Confusion
Trending: 42
HIGHCVE-2026-33941
Handlebars.js has JavaScript Injection in CLI Precompiler via Unescaped Names and Options
Trending: 39

Pin to Dashboard

Verification

State: unverified
Confidence: 0%

Vulnerability Timeline

CVE Published
Mar 26, 2026
Discovered by ZDM
Mar 26, 2026
Updated: affectedVersions, severity, patchAvailable
Mar 27, 2026
Patch Available
Mar 30, 2026

Version History

v2
Last enriched 4d ago
v2Tier C4d ago

Updated affected versions to < 4.7.8 and changed severity to HIGH.

affectedVersionsseveritypatchAvailable
via VulDB
v14d ago

Initial creation