CVE-2026-87123
Received Received - Intake

Remote Process Crash via Uncallable toHTML in hbs

Vulnerability report for CVE-2026-87123, including description, CVSS score, EPSS score, affected products, exploitability, helpful resources, and attack-flow context.

Publication date: 2026-09-11

Last updated on: 2026-09-11

Assigner: openjs

Description

hbs is an Express view engine wrapper for Handlebars. Version 4.3.0 can crash the Node.js process during output escaping when an async helper, registered with registerAsyncHelper, resolves to an object whose toHTML property is truthy but not callable. Handlebars escapeExpression calls the toHTML method on any value that has a truthy toHTML, so such a value throws a TypeError, and because the async substitution runs on a later tick outside the render function's try/catch, the throw is an uncaught exception that terminates the process without sending a response. Only version 4.3.0 is affected, since the throwing escape was introduced by the fix for CVE-2026-16231 and earlier versions do not escape async helper values. It can be triggered remotely when an async helper resolves to an externally influenced object such as parsed JSON. The issue is fixed in hbs 4.3.1, and users should upgrade to hbs 4.3.1 or later.

CVSS Scores

EPSS Scores

Probability:
Percentile:

Meta Information

Published
2026-09-11
Last Modified
2026-09-11
Generated
2026-09-11
AI Q&A
2026-09-11
EPSS Evaluated
N/A
NVD
EUVD

Affected Vendors & Products

Currently, no data is known.

Helpful Resources

Exploitability

CWE
CWE Icon
KEV
KEV Icon
CWE ID Description
CWE-248 An exception is thrown from a function, but it is not caught.

Attack-Flow Graph

AI Quick Actions

Instant insights powered by AI
Executive Summary

This vulnerability affects hbs version 4.3.0, an Express view engine wrapper for Handlebars. It causes a Denial of Service (DoS) by crashing the Node.js process when an async helper resolves to an object with a truthy but non-callable toHTML property. During output escaping, Handlebars calls this property, throwing a TypeError that terminates the process without sending a response.

Detection Guidance

To detect this vulnerability, check if your system is running hbs version 4.3.0. Run: npm list hbs. If version 4.3.0 is installed, the system is vulnerable.

Impact Analysis

This vulnerability can crash your Node.js application remotely if an async helper resolves to an externally influenced object like parsed JSON. The crash terminates the process without sending an HTTP response, disrupting service and potentially causing downtime.

Mitigation Strategies

Immediately upgrade hbs to version 4.3.1 or later using: npm update hbs. Avoid passing untrusted or externally parsed values into async helpers until upgrading.

Chat Assistant

Ask questions about this CVE
Hi! I’m here to help you understand CVE-2026-87123. Ask me anything about the vulnerability, its impact, or mitigation strategies.
0/70

EPSS Chart