Improper Check for Unusual or Exceptional Conditions Affecting prism package, versions <5.14.3-r13


Severity

Recommended
low

Based on default assessment until relevant scores are available.

Threat Intelligence

EPSS
0.05% (17th percentile)

Do your applications use this vulnerable package?

In a few clicks we can analyze your entire application and see what components are vulnerable in your application, and suggest you quick fixes.

Test your applications
  • Snyk IDSNYK-CHAINGUARDLATEST-PRISM-15878785
  • published3 Apr 2026
  • disclosed27 Mar 2026

Introduced: 27 Mar 2026

CVE-2026-33939  (opens in a new tab)
CWE-754  (opens in a new tab)

How to fix?

Upgrade Chainguard prism to version 5.14.3-r13 or higher.

NVD Description

Note: Versions mentioned in the description apply only to the upstream prism package and not the prism package as distributed by Chainguard. See How to fix? for Chainguard relevant fixed versions and status.

Handlebars provides the power necessary to let users build semantic templates. In versions 4.0.0 through 4.7.8, when a Handlebars template contains decorator syntax referencing an unregistered decorator (e.g. {{*n}}), the compiled template calls lookupProperty(decorators, &#34;n&#34;), which returns undefined. The runtime then immediately invokes the result as a function, causing an unhandled TypeError: ... is not a function that crashes the Node.js process. Any application that compiles user-supplied templates without wrapping the call in a try/catch is vulnerable to a single-request Denial of Service. Version 4.7.9 fixes the issue. Some workarounds are available. Wrap compilation and rendering in try/catch. Validate template input before passing it to compile(); reject templates containing decorator syntax ({{*...}}) if decorators are not used in your application. Use the pre-compilation workflow; compile templates at build time and serve only pre-compiled templates; do not call compile() at request time.

CVSS Base Scores

version 3.1