CVE-2025-59465 - A malformed HTTP/2 HEADERS frame with oversized, invalid HPACK data can cause Node.js to crash by triggeri
CVE-2025-59465 + A malformed HTTP/2 HEADERS frame with oversized, invalid HPACK data can cause Node.js to crash by triggeri + High + 2026-01-20
One-sentence business risk
A small malicious input can exhaust workers or crash services, creating a customer-visible availability incident.
Research notes
- Root cause: A malformed
HTTP/2 HEADERSframe with oversized, invalidHPACKdata can cause Node.js to crash by triggering an unhandledTLSSocketerrorECONNRESET. - Affected versions: affects applications that do not attach explicit error handlers to secure sockets, for example:
server.
- Fixed / safe versions: Vendor-fixed release or mitigation named by the upstream advisory.
- Public exploit / PoC signal: the consulted NVD/GHSA/vendor sources describe the trigger class; treat it as reproducible until patched.
- CVSS: 7.5 CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H.
## Exact vulnerable code pattern
```text
parse_or_buffer(untrusted_payload) # unbounded size, time, or concurrency
Fixed / mitigated code pattern
enforce max bytes, frame counts, parser depth, request timeouts, and worker limits
Dependency or runtime update:
npm ls node || true
npm install node@latest --save-exact
npm audit --omit=dev
Step-by-step integration guide
- Inventory
nodeacross source, lockfiles, SBOMs, container images, CI images, and deployment manifests. - Upgrade to
Vendor-fixed release or mitigation named by the upstream advisoryor apply the exact vendor patch referenced below. - Replace the vulnerable
dospattern with the fixed pattern and fail closed on malformed input. - Add a regression test that exercises the advisory trigger and proves the request is rejected, bounded, or authorized.
- Deploy through canary, monitor security logs and resource metrics, then remove temporary edge blocks only after all runtimes are fixed.
Alternative mitigations
- Disable the vulnerable feature path while the package/runtime update rolls out.
- Add WAF or reverse-proxy rules for traversal tokens, prototype-polluting keys, oversized frames, shell metacharacters, or unauthenticated tool calls matching the trigger class.
- Restrict internal egress, rotate exposed secrets, and revoke affected tokens/keys if the vulnerability can disclose config, logs, JWT secrets, proxy credentials, or PKI material.
- For admin/API authorization issues, temporarily require elevated roles and explicit ownership checks at the gateway.
Detection signature
id: cve-2025-59465-a-malformed-http-2-headers-frame-with-oversized-
source: NVD bulk JSON feed
dependency_or_product: "node"
affected: "affects applications that do not attach explicit error handlers to secure sockets, for example:
server" fixed: “Vendor-fixed release or mitigation named by the upstream advisory” signals:
- “dos”
- “…/”
- “proto”
- “tools/call”
- “wp_ajax_nopriv”
- “pickle.loads”
- “shell command construction” action: “upgrade, add regression test, and verify deploy artifact”
## Copy-paste skill
~~~markdown
You are remediating CVE-2025-59465 (A malformed HTTP/2 HEADERS frame with oversized, invalid HPACK data can cause Node.js to crash by triggeri) in this repository.
Find every affected dependency, runtime, image, service configuration, and reachable code path. Upgrade or patch to Vendor-fixed release or mitigation named by the upstream advisory. Replace the vulnerable dos pattern with a fail-closed implementation, add a regression test for the trigger shape, and update deployment/SBOM artifacts. If this repository does not control the affected runtime, create TRIAGE.md naming the owner, affected version, fixed version, and blocking decision.
~~~
## Keywords, affected tech stack, and revenue tags
- Keywords: `CVE-2025-59465`, `dos`, `node`, `NVD bulk JSON feed`.
- Affected tech stack: `javascript/npm`.
- Revenue tags: `sellable_to_fintech`, `enterprise_blocker`, `high_priority_sla`.
## References
- https://access.redhat.com/errata/RHSA-2026:1842
- https://access.redhat.com/errata/RHSA-2026:1843
- https://access.redhat.com/errata/RHSA-2026:2420
- https://access.redhat.com/errata/RHSA-2026:2421
- https://access.redhat.com/errata/RHSA-2026:2422
- https://access.redhat.com/errata/RHSA-2026:2767
- https://access.redhat.com/errata/RHSA-2026:2768
- https://access.redhat.com/errata/RHSA-2026:2781
- https://access.redhat.com/errata/RHSA-2026:2782
- https://access.redhat.com/errata/RHSA-2026:2783
- https://access.redhat.com/errata/RHSA-2026:2864
- https://access.redhat.com/errata/RHSA-2026:2899
- https://access.redhat.com/errata/RHSA-2026:6402
- https://access.redhat.com/errata/RHSA-2026:6431
- https://access.redhat.com/errata/RHSA-2026:7386
- https://access.redhat.com/errata/RHSA-2026:7387
- https://access.redhat.com/security/cve/CVE-2025-59465
- https://bugzilla.redhat.com/show_bug.cgi?id=2431349
- https://nodejs.org/en/blog/vulnerability/december-2025-security-releases
- https://nvd.nist.gov/vuln/detail/CVE-2025-59465
- https://security.access.redhat.com/data/csaf/v2/vex/2025/cve-2025-59465.json