| Name | CVE-2025-59466 |
| Description | We have identified a bug in Node.js error handling where "Maximum call stack size exceeded" errors become uncatchable when `async_hooks.createHook()` is enabled. Instead of reaching `process.on('uncaughtException')`, the process terminates, making the crash unrecoverable. Applications that rely on `AsyncLocalStorage` (v22, v20) or `async_hooks.createHook()` (v24, v22, v20) become vulnerable to denial-of-service crashes triggered by deep recursion under specific conditions. |
| Source | CVE (at NVD; CERT, ENISA, LWN, oss-sec, fulldisc, Debian ELTS, Red Hat, Ubuntu, Gentoo, SUSE bugzilla/CVE, GitHub advisories/code/issues, web search, more) |
| References | DSA-6166-1 |
The table below lists information on source packages.
| Source Package | Release | Version | Status |
|---|---|---|---|
| nodejs (PTS) | bullseye | 12.22.12~dfsg-1~deb11u4 | vulnerable |
| bullseye (security) | 12.22.12~dfsg-1~deb11u7 | vulnerable | |
| bookworm, bookworm (security) | 18.20.4+dfsg-1~deb12u1 | vulnerable | |
| trixie | 20.19.2+dfsg-1 | vulnerable | |
| trixie (security) | 20.19.2+dfsg-1+deb13u1 | fixed | |
| forky, sid | 22.22.1+dfsg+~cs22.19.15-1 | fixed |
The information below is based on the following data on fixed versions.
| Package | Type | Release | Fixed Version | Urgency | Origin | Debian Bugs |
|---|---|---|---|---|---|---|
| nodejs | source | trixie | 20.19.2+dfsg-1+deb13u1 | DSA-6166-1 | ||
| nodejs | source | (unstable) | 22.22.0+dfsg+~cs22.19.6-1 |
https://nodejs.org/en/blog/vulnerability/december-2025-security-releases#uncatchable-maximum-call-stack-size-exceeded-error-on-nodejs-via-async_hooks-leads-to-process-crashes-bypassing-error-handlers-cve-2025-59466---medium
Fixed by: https://github.com/nodejs/node/commit/d7a5c587c02ebe18f9fe4de986bac55d80c2868f (v20.20.0)