{"id":"EUVD-2026-16849","revision":"29298168ed244f09a1bdad42e1d2c829","records":[{"revision":"29298168ed244f09a1bdad42e1d2c829","observedAt":"2026-10-30T05:49:05.984+00:00","statement":{"source":"euvd","id":"EUVD-2026-16849","aliases":["CVE-2026-33938","GHSA-3mfm-83xf-c92r"],"title":"Handlebars provides the power necessary to let users build semantic templates. In versions 4.0.0 through 4.7.8, the `@partial-block` special variable is stored in the template data context and is reachable and mutable from within a template…","description":"Handlebars provides the power necessary to let users build semantic templates. In versions 4.0.0 through 4.7.8, the `@partial-block` special variable is stored in the template data context and is reachable and mutable from within a template via helpers that accept arbitrary objects. When a helper overwrites `@partial-block` with a crafted Handlebars AST, a subsequent invocation of `{{> @partial-block}}` compiles and executes that AST, enabling arbitrary JavaScript execution on the server. Version 4.7.9 fixes the issue. Some workarounds are available. First, use the runtime-only build (`require('handlebars/runtime')`). The `compile()` method is  absent, eliminating the vulnerable fallback path. Second, audit registered helpers for any that write arbitrary values to context objects. Helpers  should treat context data as read-only. Third, avoid registering helpers from third-party packages (such as `handlebars-helpers`) in  contexts where templates or context data can be influenced by untrusted input.","state":0,"publishedAt":null,"modifiedAt":null,"affected":[],"metrics":[{"system":"EUVD CVSS 3.1","vector":"CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H","score":8.1,"severity":null}],"references":["https://github.com/handlebars-lang/handlebars.js/security/advisories/GHSA-3mfm-83xf-c92r","https://github.com/handlebars-lang/handlebars.js/commit/68d8df5a88e0a26fe9e6084c5c6aaebe67b07da2","https://github.com/handlebars-lang/handlebars.js/releases/tag/v4.7.9"],"sourceUrl":"https://euvd.enisa.europa.eu/vulnerability/EUVD-2026-16849","license":"ENISA EUVD · source terms and attribution apply","enrichment":{"sourceStatus":null,"weaknesses":[],"productCriteria":[],"sourceDates":{"datePublished":"Mar 27, 2026, 9:05:42 PM","dateUpdated":"Sep 4, 2026, 12:04:55 PM"},"relatedAdvisories":[{"id":"RHSA-2026:10175","title":"Red Hat Security Advisory: Red Hat OpenShift Dev Spaces 3.27.1 Release.","vulnerabilityIds":["CVE-2025-61728","CVE-2025-62718","CVE-2026-2332","CVE-2026-4800","CVE-2026-4926","CVE-2026-22731","CVE-2026-25679","CVE-2026-26999","CVE-2026-27137","CVE-2026-27606","CVE-2026-29054","CVE-2026-32305","CVE-2026-32695","CVE-2026-33186","CVE-2026-33433","CVE-2026-33805","CVE-2026-33870","CVE-2026-33871","CVE-2026-33937","CVE-2026-33938","CVE-2026-33939","CVE-2026-33940","CVE-2026-33941","CVE-2026-34986","CVE-2026-40175"]},{"id":"msrc_CVE-2026-33938","title":"Handlebars.js has JavaScript Injection via AST Type Confusion by tampering @partial-block","vulnerabilityIds":["CVE-2026-33938"]},{"id":"RHSA-2026:34342","title":"Red Hat Security Advisory: Cluster Observability Operator 1.5.0","vulnerabilityIds":["CVE-2020-7753","CVE-2021-33623","CVE-2024-4068","CVE-2024-45338","CVE-2024-52011","CVE-2025-22868","CVE-2025-22870","CVE-2025-22872","CVE-2025-47911","CVE-2025-58190","CVE-2026-1526","CVE-2026-1528","CVE-2026-2229","CVE-2026-4800","CVE-2026-4867","CVE-2026-6321","CVE-2026-6322","CVE-2026-6734","CVE-2026-9277","CVE-2026-9697","CVE-2026-12143","CVE-2026-12151","CVE-2026-25680","CVE-2026-25681","CVE-2026-29063","CVE-2026-32141","CVE-2026-33228","CVE-2026-33671","CVE-2026-33814","CVE-2026-33891","CVE-2026-33894","CVE-2026-33895","CVE-2026-33896","CVE-2026-33937","CVE-2026-33938","CVE-2026-33939","CVE-2026-33940","CVE-2026-33941","CVE-2026-39821","CVE-2026-42506","CVE-2026-48779"]}],"note":"EUVD source date text has no stated timezone and is retained without inventing a UTC instant. Related bulletin membership is not an alias, common cause or applicability claim. A missing vector with a zero score is treated as unrated. Complete vendor/product and underlying source evidence remains in the original JSON."},"key":"euvd:EUVD-2026-16849","identifiers":["EUVD-2026-16849","CVE-2026-33938","GHSA-3mfm-83xf-c92r"]},"retained":false,"historicalAffected":[]}],"coverage":[]}