Forge (node-forge): TLS client crash on handshake record without session
Summary
Forge (node-forge) is a JavaScript TLS library. Before version 1.4.3, a forge.tls client that receives a handshake record while it has no session, for example before handshake() is called or after close_notify or close(), throws an uncaught TypeError. A malicious server or an on-path attacker can use this to terminate a Node.js process that does not catch the exception. Confidentiality and integrity are not affected, and forge.tls servers are not affected.
Affected
- Forge (node-forge) versions before 1.4.3
Fixed in
- Version 1.4.3
Workaround
- Unknown. Upgrading to 1.4.3 is the vendor fix.
- As an interim measure, catching exceptions around connection.process() limits the impact (not vendor guidance).
Exploitation
- No exploitation in the wild found in research (CISA KEV not directly verified).
- A public proof of concept is in the advisory repository.
Our recommendation
- Find all node-forge versions in lockfiles and SBOMs, including transitive dependencies.
- Upgrade to 1.4.3, testing in development first because the same release changes certificate name constraint validation (GHSA-3cc4-3294-vgjf).
- Prioritise production Node.js services that use forge.tls as a client and process network data.
- Lower priority for dev tooling and build pipelines, where the impact is limited to a crashed process.
Public exploits
PoC-in-GitHub, Metasploit and Exploit-DB list nothing for this CVE.
Research sources
- CVE Record CVE-2026-125334 www.cve.org
- GitHub Security Advisory GHSA-j8rw-jp99-435v github.com
- OSV GHSA-j8rw-jp99-435v osv.dev
- Fix commit 2cfaeb5 github.com
- Forge release v1.4.3 github.com
- Forge changelog github.com
- Pull request #1169 Release 1.4.3 github.com
Researched and written up in English and German by an AI (Claude by Anthropic) based on NVD, CISA, EPSS and the sources listed. The vendor information is authoritative. Researched on 11 Nov 2026, 15:08.
Original description (NVD)
Forge (also called node-forge) is a native implementation of Transport Layer Security in JavaScript. Prior to 1.4.3, a forge.tls client can pass a handshake record to tls.handleHandshake() while the connection has no session, including after a close_notify alert, after the application calls close(), or before handshake() is called. The handler dereferences c.session.md5 before dispatching the message, causing a TypeError to propagate from connection.process(). A malicious server or on-path attacker can deliver the record, including after a reset when the connection uses no encryption, and terminate a Node.js process if the application does not catch the exception. forge.tls servers are not affected, and there is no confidentiality or integrity impact. This issue is fixed in version 1.4.3.
NVD references (5)
- https://github.com/digitalbazaar/forge/commit/2cfaeb516cb3d4aff1c0569d39394df41c5cb17c
- https://github.com/digitalbazaar/forge/pull/1169
- https://github.com/digitalbazaar/forge/releases/tag/v1.4.3
- https://github.com/digitalbazaar/forge/security/advisories/GHSA-j8rw-jp99-435v
- https://github.com/digitalbazaar/forge/security/advisories/GHSA-j8rw-jp99-435v
Sources
The tracker combines official, freely usable data sources – updated continuously:
- NVD (NIST) – CVEs, rating (CVSS), affected products
- CISA KEV – vulnerabilities confirmed by CISA as actively exploited
- CISA Vulnrichment – CISA assessment (SSVC) in the official CVE record
- FIRST EPSS – probability of exploitation
- Microsoft MSRC – Patch Tuesday: vulnerabilities, severity, updates
- PoC-in-GitHub – public proof-of-concept repositories
- Metasploit (Rapid7) – modules of the Metasploit Framework
- Exploit-DB (OffSec) – archive of public exploits (links only)
- Patch days: official vendor pages (linked per vendor) (Vendor patch days)
This product uses data from the NVD API but is not endorsed or certified by the NVD. EPSS data © FIRST.org.
Affected? We can help.
We check whether your systems are affected, install updates and close the gap – continuously with the System Health Checker if you wish.
