node-forge TLS: remote peer can crash Node.js process via many small records
A remote computer that connects to your app can send one burst of many tiny messages and make the program crash. The crash stops the service until it restarts.
| Severity | HighCVSS 7.5 of 10 |
|---|---|
| Being exploited? | UnclearNo reports either way yet |
| Fix available? | Yesnode-forge 1.4.1 · since 30 Oct 2026 |
| How sure is this? | Official, 2 sourcesBacked by an official source |
How the attack works simplified
- 1Malicious peerConnects without logging in
- 2Burst of recordsThousands of tiny TLS records in one chunk
- 3node-forge recursionOne stack frame added per record
- 4Stack overflowRangeError thrown, not caught
- 5Process crashesNode.js process terminates
- ResultService goes down until restarted
What happened
In node-forge's TLS connection code (forge.tls.createConnection), each received TLS record is handled through recursive calls, one stack frame per record. Sending thousands of small records in one chunk, such as heartbeat records accepted before the handshake, exhausts the JavaScript call stack and throws an uncaught RangeError.
Are you affected?
You are affected if you use node-forge 1.4.0 or earlier to create TLS connections with forge.tls.createConnection() and feed socket data into connection.process().
| Package / product | Affected versions | Fixed in |
|---|---|---|
| node-forge · npm | <= 1.4.0 | 1.4.1 |
What to do
- Update node-forge to version 1.4.1 or later
- Check whether your project uses forge.tls.createConnection() so you know which services are exposed
- If you cannot update yet, wrap every connection.process() call in try/catch and close the connection and socket on error
Timeline
- 29 Oct 2026, 20:17 UTCPublicly disclosed
- 29 Oct 2026, 20:17 UTCReported by NVD · NVD
- 29 Oct 2026, 20:21 UTCPicked up by Zero Radar
- 30 Oct 2026, 23:02 UTCGitHub Advisory reported on it · GitHub Advisory
- 30 Oct 2026, 23:02 UTCFixed version published: node-forge 1.4.1 · GitHub Advisory
Sources 2 reports, oldest first
Official vendor, government CERT or advisory database
- CVE-2026-119187NVD · 29 Oct 2026, 20:17 UTC
- Forge: Denial of service in TLS record processing via call stack exhaustionGitHub Advisory · 30 Oct 2026, 23:01 UTC
Technical details
- ID
- CVE-2026-119187 · GHSA-hqq3-7jhf-c5jx
- CVSS
- 7.5 / 10
- Disclosed
- 29 Oct 2026, 20:17 UTC
- On Zero Radar
- 29 Oct 2026, 20:21 UTC (4 min after disclosure)
- Last change
- 30 Oct 2026, 23:02 UTC
The plain-language parts and the attack diagram were written by an AI model (anthropic/claude-haiku-5.5) from the sources above. Facts like versions, exploitation and dates come from the sources themselves. How Zero Radar works