Vulnerability · Published Jun 30, 2023 · Assigned by hackerone
CVE-2023-30589
High 7.5
In plain English
A high-severity security flaw in Node from NodeJS. There are no confirmed reports of exploitation so far. The chance it is exploited in the next 30 days is estimated at 3.9% (higher than 90% of all known vulnerabilities). Fixed versions are available - upgrade the affected package.
Official description
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 packages & fixed versions
| Ecosystem | Package | Fixed in | Advisory |
|---|---|---|---|
| AlmaLinux:8 | nodejs | 1:18.16.1-1.module_el8.8.0+3595+0818e803 | ALSA-2023:4536 |
| AlmaLinux:8 | nodejs | 1:16.20.1-1.module_el8.8.0+3594+e74fe53f | ALSA-2023:4537 |
| AlmaLinux:9 | nodejs | 1:18.16.1-1.module_el9.2.0+31+cbae0c8e | ALSA-2023:4330 |
| AlmaLinux:9 | nodejs | 1:16.20.1-1.el9_2 | ALSA-2023:4331 |
| AlmaLinux:8 | nodejs-devel | 1:18.16.1-1.module_el8.8.0+3595+0818e803 | ALSA-2023:4536 |
| AlmaLinux:8 | nodejs-devel | 1:16.20.1-1.module_el8.8.0+3594+e74fe53f | ALSA-2023:4537 |
| AlmaLinux:9 | nodejs-devel | 1:18.16.1-1.module_el9.2.0+31+cbae0c8e | ALSA-2023:4330 |
| AlmaLinux:8 | nodejs-docs | 1:18.16.1-1.module_el8.8.0+3595+0818e803 | ALSA-2023:4536 |
| AlmaLinux:8 | nodejs-docs | 1:16.20.1-1.module_el8.8.0+3594+e74fe53f | ALSA-2023:4537 |
| AlmaLinux:9 | nodejs-docs | 1:16.20.1-1.el9_2 | ALSA-2023:4331 |
| AlmaLinux:9 | nodejs-docs | 1:18.16.1-1.module_el9.2.0+31+cbae0c8e | ALSA-2023:4330 |
| AlmaLinux:8 | nodejs-full-i18n | 1:18.16.1-1.module_el8.8.0+3595+0818e803 | ALSA-2023:4536 |
| AlmaLinux:8 | nodejs-full-i18n | 1:16.20.1-1.module_el8.8.0+3594+e74fe53f | ALSA-2023:4537 |
| AlmaLinux:9 | nodejs-full-i18n | 1:16.20.1-1.el9_2 | ALSA-2023:4331 |
| AlmaLinux:9 | nodejs-full-i18n | 1:18.16.1-1.module_el9.2.0+31+cbae0c8e | ALSA-2023:4330 |
| AlmaLinux:9 | nodejs-libs | 1:16.20.1-1.el9_2 | ALSA-2023:4331 |
| AlmaLinux:8 | nodejs-nodemon | 2.0.20-2.module_el8.8.0+3587+ee652244 | ALSA-2023:4536 |
| AlmaLinux:8 | nodejs-nodemon | 2.0.20-3.module_el8.8.0+3586+d4fc0b72 | ALSA-2023:4537 |
| AlmaLinux:9 | nodejs-nodemon | 2.0.20-2.module_el9.2.0+29+de583a0b | ALSA-2023:4330 |
| AlmaLinux:8 | nodejs-packaging | 2021.06-4.module_el8.7.0+3343+ea2b7901 | ALSA-2023:4536 |
| AlmaLinux:8 | nodejs-packaging | 25-1.module_el8.5.0+2605+45d748af | ALSA-2023:4537 |
| AlmaLinux:9 | nodejs-packaging | 2021.06-4.module_el9.1.0+13+d9a595ea | ALSA-2023:4330 |
| AlmaLinux:8 | nodejs-packaging-bundler | 2021.06-4.module_el8.7.0+3343+ea2b7901 | ALSA-2023:4536 |
| AlmaLinux:9 | nodejs-packaging-bundler | 2021.06-4.module_el9.1.0+13+d9a595ea | ALSA-2023:4330 |
| AlmaLinux:8 | npm | 1:9.5.1-1.18.16.1.1.module_el8.8.0+3595+0818e803 | ALSA-2023:4536 |
| AlmaLinux:8 | npm | 1:8.19.4-1.16.20.1.1.module_el8.8.0+3594+e74fe53f | ALSA-2023:4537 |
| AlmaLinux:9 | npm | 1:8.19.4-1.16.20.1.1.el9_2 | ALSA-2023:4331 |
| AlmaLinux:9 | npm | 1:9.5.1-1.18.16.1.1.module_el9.2.0+31+cbae0c8e | ALSA-2023:4330 |
| Alpine:v3.20 | openjdk17 | 17.0.9_p8-r0 | ALPINE-CVE-2023-30589 |
| Alpine:v3.21 | openjdk17 | 17.0.9_p8-r0 | ALPINE-CVE-2023-30589 |
| Alpine:v3.22 | openjdk17 | 17.0.9_p8-r0 | ALPINE-CVE-2023-30589 |
| Alpine:v3.23 | openjdk17 | 17.0.9_p8-r0 | ALPINE-CVE-2023-30589 |
| Alpine:v3.24 | openjdk17 | 17.0.9_p8-r0 | ALPINE-CVE-2023-30589 |
| Debian:12 | nodejs | 18.19.0+dfsg-6~deb12u1 | DSA-5589-1 |
| Debian:12 | nodejs | 18.19.0+dfsg-6~deb12u1 | DEBIAN-CVE-2023-30589 |
| Debian:13 | nodejs | 18.13.0+dfsg1-1.1 | DEBIAN-CVE-2023-30589 |
| Debian:14 | nodejs | 18.13.0+dfsg1-1.1 | DEBIAN-CVE-2023-30589 |
| Rocky Linux:8 | nodejs | 1:18.16.1-1.module+el8.8.0+1413+a47876c7 | RLSA-2023:4536 |
| Rocky Linux:8 | nodejs-nodemon | 0:2.0.20-2.module+el8.7.0+1177+510ae886 | RLSA-2023:4536 |
| Rocky Linux:8 | nodejs-nodemon | 0:2.0.20-3.module+el8.7.0+1178+d52dba78 | RLSA-2023:4537 |
| Rocky Linux:8 | nodejs-packaging | 0:25-1.module+el8.7.0+1108+49363b0d | RLSA-2023:4537 |
| Rocky Linux:8 | nodejs-packaging | 0:2021.06-4.module+el8.7.0+1072+5b168780 | RLSA-2023:4536 |
| Rocky Linux:9 | nodejs-packaging | 0:2021.06-4.module+el9.7.0+40022+9ecc286c | RLSA-2023:4330 |
| Ubuntu:22.04:LTS | nodejs | 12.22.9~dfsg-1ubuntu3.5 | USN-6735-1 |
| Ubuntu:24.04:LTS | nodejs | 18.19.1+dfsg-2ubuntu4 | UBUNTU-CVE-2023-30589 |
| npm | llhttp | 8.1.1 | GHSA-cggh-pq45-6h9x |
Affected products (as reported)
References
- https://hackerone.com/reports/2001873
- https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/VEEQIN5242K5NBE2CZ4DYTNA5B4YTYE5/
- https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/UEJWL67XR67JAGEL2ZK22NA3BRKNMZNY/
- https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/VKFMKD4MJZIKFQJAAJ4VZ2FHIJ764A76/
- https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/HMEELCREWMRT6NS7HWXLA6XFLLMO36HE/
- https://security.netapp.com/advisory/ntap-20230803-0009/
- https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/VCVG4TQRGTK4LKAZKVEQAUEJM7DUACYE/
- https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/IV326O2X4BE3SINX5FJHMAKVHUAA4ZYF/
- https://security.netapp.com/advisory/ntap-20240621-0006/
- https://lists.debian.org/debian-lts-announce/2024/09/msg00029.html