Skip to main content
← All vulnerabilities
CVE-2025-23167

A flaw in Node.js 20's HTTP parser allows improper termination of HTTP/1 headers using `\r\n\rX` instead of the required `\r\n\r\n`.

Published
Last modified
published
Not listed in CISA KEV
1 proof of concept on GitHub
  • Exploitation: none
  • Automatable: yes
  • Technical impact: partial

Summary

A flaw in Node.js 20's HTTP parser allows improper termination of HTTP/1 headers using `\r\n\rX` instead of the required `\r\n\r\n`. This inconsistency enables request smuggling, allowing attackers to bypass proxy-based access controls and submit unauthorized requests. The issue was resolved by upgrading `llhttp` to version 9, which enforces correct header termination. Impact: • This vulnerability affects only Node.js 20.x users prior to the `llhttp` v9 upgrade.

Timeline

  1. CVE published
  2. CISA SSVC assessment

    Exploitation: none · Automatable: yes · Technical impact: partial

  3. Record last updated

Affected versions

  • nodejs node

    From 4.0; From 5.0; From 6.0; From 7.0; From 8.0; From 9.0; From 10.0; From 11.0; From 12.0; From 13.0; From 14.0; From 15.0; From 16.0; From 17.0; From 18.0; From 19.0; From 20.0 · through 20.19.1

References 2

nodejs.org

GitHub · abhisek3122/CVE-2025-23167