CVE-2025-59466: Vulnerability in nodejs node
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.
AI Analysis
Technical Summary
CVE-2025-59466 is a vulnerability in Node.js's error handling mechanism related to asynchronous hooks. When async_hooks.createHook() is enabled, errors caused by exceeding the maximum call stack size ('Maximum call stack size exceeded') become uncatchable by the usual process-level exception handlers like process.on('uncaughtException'). Instead of allowing the application to handle or recover from such errors, the Node.js process terminates immediately, causing an unrecoverable crash. This behavior affects Node.js versions 8.0 through 25.2.1, including versions 20.19.6, 22.21.1, 24.12.0, and 25.2.1. Applications that utilize AsyncLocalStorage (introduced in Node.js v20 and v22) or directly use async_hooks.createHook() (in v20, v22, and v24) are vulnerable. The vulnerability can be triggered by deep recursion scenarios that cause the call stack to overflow. Because the error bypasses the uncaughtException event, typical error recovery or graceful shutdown procedures cannot be executed, leading to denial-of-service conditions. The CVSS 3.0 score is 5.9 (medium), reflecting network attack vector, high attack complexity, no privileges or user interaction required, and impact limited to availability (denial of service). No known exploits have been reported in the wild, but the vulnerability poses a risk to Node.js applications that rely heavily on asynchronous context tracking and error handling.
Potential Impact
For European organizations, this vulnerability poses a risk primarily to availability. Node.js is widely used in backend services, microservices, and serverless functions across Europe, especially in technology, finance, and e-commerce sectors. Applications using AsyncLocalStorage or async_hooks for context propagation or instrumentation are at risk of sudden crashes when subjected to deep recursion or malformed inputs triggering stack overflow errors. Such crashes can cause service outages, disrupt business operations, and degrade user experience. In critical infrastructure or high-availability environments, this could lead to significant operational impact. Since the vulnerability does not affect confidentiality or integrity, data breaches are unlikely, but denial-of-service conditions could be exploited by attackers to cause downtime. The medium CVSS score reflects the moderate ease of exploitation and limited scope of impact, but the broad usage of Node.js in Europe amplifies the potential operational risks.
Mitigation Recommendations
1. Upgrade Node.js to the latest patched versions once official fixes are released by the Node.js project. Monitor Node.js security advisories for patch availability. 2. Until patches are available, audit and limit the use of async_hooks.createHook() and AsyncLocalStorage in applications, especially in code paths that may involve deep recursion or unbounded call stacks. 3. Implement application-level recursion depth checks or stack size monitoring to prevent triggering the vulnerability. 4. Use process monitoring and automated restarts to minimize downtime in case of crashes. 5. Employ defensive coding practices to avoid unbounded recursion and validate inputs that could cause stack overflows. 6. Consider isolating critical services using containerization or microservice architectures to limit the blast radius of crashes. 7. Review and enhance logging and alerting around process crashes to enable rapid detection and response. 8. Engage with Node.js community and security channels for updates and best practices related to async_hooks usage.
Affected Countries
Germany, United Kingdom, France, Netherlands, Sweden, Ireland, Italy
CVE-2025-59466: Vulnerability in nodejs node
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.
AI-Powered Analysis
Technical Analysis
CVE-2025-59466 is a vulnerability in Node.js's error handling mechanism related to asynchronous hooks. When async_hooks.createHook() is enabled, errors caused by exceeding the maximum call stack size ('Maximum call stack size exceeded') become uncatchable by the usual process-level exception handlers like process.on('uncaughtException'). Instead of allowing the application to handle or recover from such errors, the Node.js process terminates immediately, causing an unrecoverable crash. This behavior affects Node.js versions 8.0 through 25.2.1, including versions 20.19.6, 22.21.1, 24.12.0, and 25.2.1. Applications that utilize AsyncLocalStorage (introduced in Node.js v20 and v22) or directly use async_hooks.createHook() (in v20, v22, and v24) are vulnerable. The vulnerability can be triggered by deep recursion scenarios that cause the call stack to overflow. Because the error bypasses the uncaughtException event, typical error recovery or graceful shutdown procedures cannot be executed, leading to denial-of-service conditions. The CVSS 3.0 score is 5.9 (medium), reflecting network attack vector, high attack complexity, no privileges or user interaction required, and impact limited to availability (denial of service). No known exploits have been reported in the wild, but the vulnerability poses a risk to Node.js applications that rely heavily on asynchronous context tracking and error handling.
Potential Impact
For European organizations, this vulnerability poses a risk primarily to availability. Node.js is widely used in backend services, microservices, and serverless functions across Europe, especially in technology, finance, and e-commerce sectors. Applications using AsyncLocalStorage or async_hooks for context propagation or instrumentation are at risk of sudden crashes when subjected to deep recursion or malformed inputs triggering stack overflow errors. Such crashes can cause service outages, disrupt business operations, and degrade user experience. In critical infrastructure or high-availability environments, this could lead to significant operational impact. Since the vulnerability does not affect confidentiality or integrity, data breaches are unlikely, but denial-of-service conditions could be exploited by attackers to cause downtime. The medium CVSS score reflects the moderate ease of exploitation and limited scope of impact, but the broad usage of Node.js in Europe amplifies the potential operational risks.
Mitigation Recommendations
1. Upgrade Node.js to the latest patched versions once official fixes are released by the Node.js project. Monitor Node.js security advisories for patch availability. 2. Until patches are available, audit and limit the use of async_hooks.createHook() and AsyncLocalStorage in applications, especially in code paths that may involve deep recursion or unbounded call stacks. 3. Implement application-level recursion depth checks or stack size monitoring to prevent triggering the vulnerability. 4. Use process monitoring and automated restarts to minimize downtime in case of crashes. 5. Employ defensive coding practices to avoid unbounded recursion and validate inputs that could cause stack overflows. 6. Consider isolating critical services using containerization or microservice architectures to limit the blast radius of crashes. 7. Review and enhance logging and alerting around process crashes to enable rapid detection and response. 8. Engage with Node.js community and security channels for updates and best practices related to async_hooks usage.
Affected Countries
Technical Details
- Data Version
- 5.2
- Assigner Short Name
- hackerone
- Date Reserved
- 2025-09-16T15:00:07.876Z
- Cvss Version
- 3.0
- State
- PUBLISHED
Threat ID: 696feab04623b1157c4e3b7b
Added to database: 1/20/2026, 8:50:56 PM
Last enriched: 1/20/2026, 9:07:24 PM
Last updated: 2/7/2026, 4:30:22 AM
Views: 106
Community Reviews
0 reviewsCrowdsource mitigation strategies, share intel context, and vote on the most helpful responses. Sign in to add your voice and help keep defenders ahead.
Want to contribute mitigation steps or threat intel context? Sign in or create an account to join the community discussion.
Actions
Updates to AI analysis require Pro Console access. Upgrade inside Console → Billing.
External Links
Need more coverage?
Upgrade to Pro Console in Console -> Billing for AI refresh and higher limits.
For incident response and remediation, OffSeq services can help resolve threats faster.