CVE Vulnerabilities

CVE-2023-30589

Published: Jul 01, 2023 | Modified: Dec 12, 2023
CVSS 3.x
7.5
HIGH
Source:
NVD
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N
CVSS 2.x
RedHat/V2
RedHat/V3
Ubuntu

The llhttp parser in the http module in Node v20.2.0 does not strictly use the CRLF sequence to delimit HTTP requests. This can lead to HTTP Request Smuggling (HRS).

The CR character (without LF) is sufficient to delimit HTTP header fields in the llhttp parser. According to RFC7230 section 3, only the CRLF sequence should delimit each header-field. This impacts all Node.js active versions: v16, v18, and, v20

Affected Software

Name Vendor Start Version End Version
Node.js Nodejs 16.0.0 (including) 16.20.1 (excluding)
Node.js Nodejs 18.0.0 (including) 18.16.1 (excluding)
Node.js Nodejs 20.0.0 (including) 20.3.1 (excluding)

References