CVE-2025-59465·Node.js vulnerability
A malformed `HTTP/2 HEADERS` frame with oversized, invalid `HPACK` data can cause Node.js to crash by triggering an unhandled `TLSSocket` error `ECONNRESET`. Instead of safely closing the connection, the process crashes, enabling a remote denial of service. This primarily affects applications that do not attach explicit error handlers to secure sockets, for example: ``` server.on('secureConnection', socket => { socket.on('error', err => { console.log(err) }) }) ```
- Severity
- high
- Software
- Node.js
- Fixed in
- 25.3.0
- Published
- 2026-01-20
Affected versions
From: 25.0.0
Until: 25.3.0
Fixed in: 25.3.0
How to fix this CVE
Update Node.js to version 25.3.0 or later to patch a critical HTTP/2 vulnerability that allows remote attackers to crash the process via malformed HEADERS frames. Applications running Node.js 25.0.0–25.3.0 should prioritize this update, especially those serving HTTP/2 traffic without explicit socket error handlers. After patching, verify the fix by restarting services and monitoring for connection reset errors in logs.
sudo dnf update nodejsDefensia detects this vulnerability
What an exploitation attempt looks like
Sample log line indicative of exploitation attempts:
Malformed HTTP/2 HEADERS frame with oversized HPACK encoding followed by ECONNRESET; log pattern: "TLSSocket error ECONNRESET" or "Error: socket hang up" appearing without explicit socket.on('error') handler in application codeWAF mitigation (if patching is not yet possible)
Add this rule to your WAF to block exploitation attempts while you schedule the patch.
Implement HTTP/2 frame validation at the ingress layer to reject HEADERS frames with invalid or oversized HPACK data before they reach the Node.js process; enforce maximum frame size limits and validate HPACK compression ratiosHow to check if you are affected
- Check installed Node.js version: node --version or nodejs --version
- Confirm if your application handles HTTP/2 connections: grep -r 'http2\|secureConnection' /path/to/app --include='*.js'
- Search application logs for ECONNRESET errors paired with TLSSocket: grep -i 'ECONNRESET\|TLSSocket' /var/log/app.log /var/log/nodejs.log 2>/dev/null
- Verify the patch by checking the updated version: node --version and confirm output shows 25.3.0 or higher
FAQ
What is CVE-2025-59465?
This is a denial-of-service vulnerability in Node.js where attackers send specially crafted HTTP/2 frames with invalid HPACK data to trigger an unhandled TLSSocket error that crashes the entire process, rather than gracefully closing the connection.
Is CVE-2025-59465 being actively exploited?
No, this vulnerability is not currently listed in the CISA KEV catalog and has no public exploits available, though the network-accessible nature of the flaw makes it a realistic target for opportunistic attackers.
What versions of Node.js are affected by CVE-2025-59465?
Versions 25.0.0 through 25.3.0 are vulnerable. Version 25.3.0 and later include the fix.
How do I check if my server is vulnerable to CVE-2025-59465?
Run `node --version` and confirm the output is between 25.0.0 and 25.3.0. If so, your server requires the patch. Additionally, check if your application uses HTTP/2 without explicit error handlers on secure sockets.
Does Defensia detect CVE-2025-59465?
Yes — Defensia's CVE advisory scanner compares installed package versions against the NVD database. If Node.js is installed on a monitored server, CVE-2025-59465 will appear in your dashboard with remediation steps.
Related Node.js CVEs
References
Track CVEs across your fleet automatically
Defensia scans your Linux servers and tells you exactly which ones are running vulnerable versions — including CVE-2025-59465. Free for 1 server.
Get started free