Node.js Patches Multiple Vulnerabilities That Enable DoS Attacks and Process Crashes
The Node.js project released a security update on March 24, 2026, for the Long-Term Support (LTS) branch, marking version 20.20.2 'Iron' as a security release.
The Node.js project released a security update on March 24, 2026, for the Long-Term Support (LTS) branch, marking version 20.20.2 'Iron' as a security release.
The update addresses seven vulnerabilities affecting areas such as TLS error handling, HTTP/2 flow control, cryptographic timing leaks, permission model bypasses, and a V8 hash-table weakness. Some vulnerabilities can be triggered remotely without authentication.
The most severe issue is CVE-2026-21637, rated High. It involves a flaw in Node.js TLS error handling, where SNICallback invocations are unprotected against synchronous exceptions. This can lead to an unhandled exception and crash the Node.js process. The fix wraps SNICallback invocations in a try/catch block. Affected versions include 20.x, 22.x, 24.x, and 25.x.
CVE-2026-21714, rated Medium, affects Node.js HTTP/2 servers due to unhandled NGHTTP2_ERR_FLOW_CONTROL error codes. Malicious clients can exploit this to cause memory leaks, leading to potential denial-of-service. The fix involves explicit error handling in the Node.js source.
CVE-2026-21717, rated Medium, targets V8's string hashing mechanism. It can lead to predictable hash collisions, degrading Node.js performance through a HashDoS attack. The fix was applied across deps, build, and test layers.
CVE-2026-21713, rated Medium, introduces a timing side-channel in Node.js Web Cryptography HMAC verification. The flaw stems from using a non-constant-time memcmp() comparison. The fix involves using a timing-safe primitive.
Two low-severity bypasses were patched. CVE-2026-21715 allows code with restricted file read permissions to disclose file existence. CVE-2026-21716 extends this to lib/fs/promises . CVE-2026-21710 addresses HTTP header prototype pollution.
Some vulnerabilities can be triggered remotely without authentication.
CVE Severity Component Impact
CVE-2026-21637 High TLS / SNICallback Remote process crash
CVE-2026-21717 Medium V8 / JSON parsing HashDoS / CPU exhaustion
CVE-2026-21713 Medium Web Crypto / HMAC Timing oracle / MAC forgery
CVE-2026-21714 Medium HTTP/2 / nghttp2 Memory leak / DoS
CVE-2026-21710 Medium HTTP headers Prototype pollution
CVE-2026-21716 Low Permission Model (fs/promises) Filesystem path disclosure
CVE-2026-21715 Low Permission Model (realpath) Filesystem path disclosure
Upgrades are recommended for the patched releases: v20.20.2 , v22.22.2 , v24.14.1 , or v25.8.2 .
Particularly, CVE-2026-21637 necessitates immediate attention for environments hosting publicly accessible TLS servers. Installers and binaries are available for Windows, macOS, Linux, and AIX via the official Node.js distribution channel.
Based on reporting by Cyber Security News.
