Skip to main content

CVE-2025-23085: Vulnerability in NodeJS Node

Medium
VulnerabilityCVE-2025-23085cvecve-2025-23085
Published: Fri Feb 07 2025 (02/07/2025, 07:09:25 UTC)
Source: CVE
Vendor/Project: NodeJS
Product: Node

Description

A memory leak could occur when a remote peer abruptly closes the socket without sending a GOAWAY notification. Additionally, if an invalid header was detected by nghttp2, causing the connection to be terminated by the peer, the same leak was triggered. This flaw could lead to increased memory consumption and potential denial of service under certain conditions. This vulnerability affects HTTP/2 Server users on Node.js v18.x, v20.x, v22.x and v23.x.

AI-Powered Analysis

AILast updated: 06/25/2025, 13:02:23 UTC

Technical Analysis

CVE-2025-23085 is a medium-severity vulnerability affecting the HTTP/2 server implementation in Node.js versions 18.x, 20.x, 22.x, and 23.x. The flaw arises from a memory leak condition triggered when a remote peer abruptly closes a socket connection without sending the expected GOAWAY HTTP/2 frame. Additionally, the vulnerability is also triggered if the nghttp2 library, which Node.js uses for HTTP/2 protocol handling, detects an invalid header and the connection is terminated by the peer. Under these circumstances, the server fails to properly release allocated memory resources, leading to increased memory consumption over time. This can degrade server performance and potentially cause denial of service (DoS) by exhausting available memory. The vulnerability is rooted in improper resource management (CWE-401: Improper Release of Memory Before Removing Last Reference) within the HTTP/2 connection lifecycle. Exploitation does not require authentication or user interaction and can be performed remotely over the network. The CVSS 3.0 base score is 5.3, reflecting a medium severity level, with attack vector as network (AV:N), low attack complexity (AC:L), no privileges required (PR:N), no user interaction (UI:N), and impact limited to availability (A:L) without affecting confidentiality or integrity. No known exploits are currently reported in the wild, and no patches have been published at the time of analysis. The vulnerability affects a broad range of Node.js versions, including long-term support (LTS) releases, indicating a wide potential impact on applications and services relying on Node.js HTTP/2 servers.

Potential Impact

European organizations using Node.js HTTP/2 servers, especially those running affected versions (18.x, 20.x, 22.x, 23.x), face risks of degraded service availability due to memory exhaustion from this leak. This can impact web services, APIs, and backend systems that rely on Node.js for HTTP/2 traffic handling. The gradual memory leak can lead to server crashes or forced restarts, causing downtime and potential disruption of business operations. Sectors with high reliance on Node.js-based microservices or real-time applications—such as financial services, e-commerce, telecommunications, and public sector digital services—may experience service interruptions. Although the vulnerability does not compromise data confidentiality or integrity, availability impacts can indirectly affect customer trust and regulatory compliance, particularly under GDPR mandates for service continuity and incident management. The lack of authentication or user interaction requirements means attackers can exploit this remotely and anonymously, increasing the threat surface. Given the widespread adoption of Node.js in European IT infrastructures, the vulnerability could have broad operational impacts if left unmitigated.

Mitigation Recommendations

1. Immediate mitigation involves upgrading Node.js HTTP/2 server instances to versions where this memory leak is fixed once patches are released. Until patches are available, organizations should monitor memory usage closely on affected servers to detect abnormal increases indicative of exploitation attempts. 2. Implement connection rate limiting and anomaly detection on HTTP/2 traffic to identify and throttle clients that abruptly close connections or send malformed headers repeatedly, reducing the risk of triggering the leak. 3. Deploy Web Application Firewalls (WAFs) or reverse proxies capable of HTTP/2 protocol validation to filter out invalid headers and abnormal connection behaviors before they reach Node.js servers. 4. Consider temporarily disabling HTTP/2 support on Node.js servers if feasible, reverting to HTTP/1.1 to eliminate exposure until a patch is applied. 5. Conduct thorough testing of Node.js applications for memory leaks and resource exhaustion under abnormal connection scenarios to identify and mitigate similar issues proactively. 6. Maintain up-to-date inventory of Node.js versions in use across the organization and enforce strict patch management policies to rapidly deploy fixes upon release. 7. Engage with Node.js community and security advisories for timely updates and best practices related to HTTP/2 server security.

Need more detailed analysis?Get Pro

Technical Details

Data Version
5.1
Assigner Short Name
hackerone
Date Reserved
2025-01-10T19:05:52.771Z
Cisa Enriched
true
Cvss Version
3.0
State
PUBLISHED

Threat ID: 682d983ac4522896dcbed62c

Added to database: 5/21/2025, 9:09:14 AM

Last enriched: 6/25/2025, 1:02:23 PM

Last updated: 8/13/2025, 11:12:26 PM

Views: 19

Actions

PRO

Updates to AI analysis are available only with a Pro account. Contact root@offseq.com for access.

Please log in to the Console to use AI analysis features.

Need enhanced features?

Contact root@offseq.com for Pro access with improved analysis and higher rate limits.

Latest Threats