CVE-2021-22959
llhttp: HTTP Request Smuggling due to spaces in headers
Severity Score
Exploit Likelihood
Affected Versions
Public Exploits
1Exploited in Wild
-Decision
Descriptions
The parser in accepts requests with a space (SP) right after the header name before the colon. This can lead to HTTP Request Smuggling (HRS) in llhttp < v2.1.4 and < v6.0.6.
El parser en acepta peticiones con un espacio (SP) justo después del nombre del encabezado antes de los dos puntos. Esto puede conllevar a un contrabando de peticiones HTTP (HRS) en llhttp versiones anteriores a v2.1.4 y versiones anteriores a v6.0.6
An HTTP Request Smuggling (HRS) vulnerability was found in the llhttp library, used by Node.JS. Spaces as part of the header names were accepted as valid. In situations where HTTP conversations are being proxied (such as proxy, reverse-proxy, load-balancer), an attacker can use this flaw to inject arbitrary messages through the proxy. The highest threat from this vulnerability is to confidentiality and integrity.
An update that fixes 7 vulnerabilities is now available. This update for nodejs12 fixes the following issues. Fixed HTTP Request Smuggling due to spaced in headers. Fixed HTTP Request Smuggling when parsing the body. Fixed arbitrary file creation and overwrite in nodejs-tar. Fixed arbitrary file creation and overwrite in nodejs-tar. Fixed arbitrary code execution and file creation and overwrite in nodejs-tar. Fixed symling following vulnerability in nodejs-arborist. Fixed symling following vulnerability in nodejs-arborist. This update was imported from the SUSE:SLE-15-SP2:Update update project.
CVSS Scores
SSVC
- Decision:-
Timeline
- 2021-01-06 CVE Reserved
- 2021-11-15 CVE Published
- 2025-04-30 CVE Updated
- 2025-04-30 First Exploit
- 2025-07-04 EPSS Updated
- ---------- Exploited in Wild
- ---------- KEV Due Date
CWE
- CWE-444: Inconsistent Interpretation of HTTP Requests ('HTTP Request/Response Smuggling')
CAPEC
References (5)
URL | Tag | Source |
---|
URL | Date | SRC |
---|---|---|
https://hackerone.com/reports/1238709 | 2025-04-30 |
URL | Date | SRC |
---|---|---|
https://www.oracle.com/security-alerts/cpujan2022.html | 2022-12-09 |
URL | Date | SRC |
---|---|---|
https://www.debian.org/security/2022/dsa-5170 | 2022-12-09 | |
https://access.redhat.com/security/cve/CVE-2021-22959 | 2022-06-06 | |
https://bugzilla.redhat.com/show_bug.cgi?id=2014057 | 2022-06-06 |
Affected Vendors, Products, and Versions
Vendor | Product | Version | Other | Status | ||||||
---|---|---|---|---|---|---|---|---|---|---|
Vendor | Product | Version | Other | Status | <-- --> | Vendor | Product | Version | Other | Status |
Llhttp Search vendor "Llhttp" | Llhttp Search vendor "Llhttp" for product "Llhttp" | < 2.1.4 Search vendor "Llhttp" for product "Llhttp" and version " < 2.1.4" | node.js |
Affected
| ||||||
Llhttp Search vendor "Llhttp" | Llhttp Search vendor "Llhttp" for product "Llhttp" | >= 3.0.0 < 6.0.6 Search vendor "Llhttp" for product "Llhttp" and version " >= 3.0.0 < 6.0.6" | node.js |
Affected
| ||||||
Oracle Search vendor "Oracle" | Graalvm Search vendor "Oracle" for product "Graalvm" | 20.3.4 Search vendor "Oracle" for product "Graalvm" and version "20.3.4" | enterprise |
Affected
| ||||||
Oracle Search vendor "Oracle" | Graalvm Search vendor "Oracle" for product "Graalvm" | 21.3.0 Search vendor "Oracle" for product "Graalvm" and version "21.3.0" | enterprise |
Affected
| ||||||
Debian Search vendor "Debian" | Debian Linux Search vendor "Debian" for product "Debian Linux" | 11.0 Search vendor "Debian" for product "Debian Linux" and version "11.0" | - |
Affected
|