CRITICAL9.1
GHSA-q5vx-44v4-gch4
llhttp allows HTTP Request Smuggling via Improper Delimiting of Header Fields
Quick fix
GHSA-q5vx-44v4-gch4 — llhttp: upgrade to the fixed version with the command below.
npm install llhttp@6.0.7Details
The llhttp parser in the http module in Node.js does not strictly use the CRLF sequence to delimit HTTP requests. The LF character (without CR) is sufficient to delimit HTTP header fields in the lihttp parser. According to RFC7230 section 3, only the CRLF sequence should delimit each header-field. This can lead to HTTP Request Smuggling (HRS).
Are you affected?
Enter the version of the package you're using.
Affected packages
References
- https://nvd.nist.gov/vuln/detail/CVE-2022-32214[ADVISORY]
- https://github.com/nodejs/llhttp/commit/18a4afc7ffb4e49dc9e2daebc50588199a6d1dbb[WEB]
- https://hackerone.com/reports/1524692[WEB]
- https://datatracker.ietf.org/doc/html/rfc7230#section-3[WEB]
- https://nodejs.org/en/blog/vulnerability/july-2022-security-releases[WEB]
- https://security.netapp.com/advisory/ntap-20220915-0001[WEB]
- https://www.debian.org/security/2023/dsa-5326[WEB]