Описание
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
A vulnerability has been identified in the Node.js, where llhttp parser in the http module in Node.js does not strictly use the CRLF sequence to delimit HTTP requests. This can lead to HTTP Request Smuggling (HRS).
Отчет
The vulnerability is in the llhttp parsing not using the CRLF sequence which violates the HTTP/1.1 specification, which mandates CRLF as the delimiter. While this might result in request smuggling, the added complexity of creating a valid malformed delimited request and having it reach the intended target and then processed,which is why this has been rated as moderate.
Затронутые пакеты
| Платформа | Пакет | Состояние | Рекомендация | Релиз |
|---|---|---|---|---|
| Red Hat Enterprise Linux 8 | nodejs:14/nodejs | Will not fix | ||
| Red Hat Software Collections | rh-nodejs14-nodejs | Will not fix | ||
| Red Hat Enterprise Linux 8 | nodejs | Fixed | RHSA-2023:4536 | 08.08.2023 |
| Red Hat Enterprise Linux 8 | nodejs | Fixed | RHSA-2023:4537 | 08.08.2023 |
| Red Hat Enterprise Linux 8.6 Extended Update Support | nodejs | Fixed | RHSA-2023:5361 | 26.09.2023 |
| Red Hat Enterprise Linux 9 | nodejs | Fixed | RHSA-2023:4330 | 31.07.2023 |
| Red Hat Enterprise Linux 9 | nodejs | Fixed | RHSA-2023:4331 | 31.07.2023 |
| Red Hat Enterprise Linux 9.0 Extended Update Support | nodejs | Fixed | RHSA-2023:5533 | 09.10.2023 |
Показывать по
Дополнительная информация
Статус:
EPSS
7 High
CVSS3
Связанные уязвимости
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
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
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
The llhttp parser in the http module in Node v20.2.0 does not strictly ...
EPSS
7 High
CVSS3