Node.js is vulnerable to cross-connection memory disclosure via TLS write re-entrancy in the HTTPS request parser
Default status is the baseline for the product, each version can override it (e.g. patched versions marked unaffected).
| Vendor | Product | Default status | Versions | ||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| nodejs | node | unaffected |
|
No data.
No data.
| Vendor | Product | Versions | ||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Nodejs | Nodejs |
|
No CVSS v4.0
No CVSS v2
This CVE is not in the KEV list.
Exploit prediction score: < 1% (0.333% probability within 30 days)
Key SSVC decision points have not yet been added.
| Type | Values Removed | Values Added |
|---|---|---|
| First Time appeared |
Nodejs
Nodejs nodejs |
|
| Vendors & Products |
Nodejs
Nodejs nodejs |
| Type | Values Removed | Values Added |
|---|---|---|
| Weaknesses | CWE-1265 | |
| References |
| |
| Metrics |
threat_severity
|
cvssV3_1
|
| Type | Values Removed | Values Added |
|---|---|---|
| Description | A re-entrancy flaw in Node.js HTTPS lets an unauthenticated client read memory belonging to other connections, including TLS private keys and other users' requests. TLSWrap::DoWrite() calls ClearOut() directly when asked to write zero bytes; if that write is issued from JavaScript running inside the HTTP parser's on_body callback, ClearOut() decrypts the next TLS record while the parser is still mid-body, re-entering llhttp_execute() and causing a use-after-free and an out-of-bounds heap read. The server then copies that freed or unrelated heap memory into the response for the request body. Triggering it requires a handler that calls res.flushHeaders() before the request body ends and later calls res.end() with a non-empty chunk, and reading the leaked memory requires any ordinary route that echoes or stores a request body. Cleartext node:http is not affected. This vulnerability affects Node.js 26.x, 24.x, and 22.x. | |
| Title | Node.js is vulnerable to cross-connection memory disclosure via TLS write re-entrancy in the HTTPS request parser | |
| Weaknesses | CWE-416 | |
| References |
| |
| Metrics |
cvssV3_0
|