CVE Vulnerabilities

CVE-2023-30589

Published: Jul 01, 2023 | Modified: Nov 21, 2024
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
7.5 MODERATE
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N
Ubuntu
MEDIUM

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)
Red Hat Enterprise Linux 8 RedHat nodejs:18-8080020230718130356.63b34585 *
Red Hat Enterprise Linux 8 RedHat nodejs:16-8080020230718141521.63b34585 *
Red Hat Enterprise Linux 8.6 Extended Update Support RedHat nodejs:16-8060020230906023909.ad008a3a *
Red Hat Enterprise Linux 9 RedHat nodejs:18-9020020230717125503.rhel9 *
Red Hat Enterprise Linux 9 RedHat nodejs-1:16.20.1-1.el9_2 *
Red Hat Enterprise Linux 9.0 Extended Update Support RedHat nodejs-1:16.20.2-1.el9_0 *
Nodejs Ubuntu bionic *
Nodejs Ubuntu kinetic *
Nodejs Ubuntu lunar *
Nodejs Ubuntu mantic *
Nodejs Ubuntu trusty *
Nodejs Ubuntu xenial *

References