undici is an HTTP/1.1 client, written from scratch for Node.js.=< undici@5.8.0 users are vulnerable to CRLF Injection on headers when using unsanitized input as request headers, more specifically, inside the content-type header. Example: import { request } from 'undici' const unsanitizedContentTypeInput = 'application/json\r\n\r\nGET /foo2 HTTP/1.1' await request('http://localhost:3000, { method: 'GET', headers: { 'content-type': unsanitizedContentTypeInput }, }) The above snippet will perform two requests in a single request API call: 1) http://localhost:3000/ 2) http://localhost:3000/foo2 This issue was patched in Undici v5.8.1. Sanitize input when sending content-type headers using user input as a workaround.
{
"cna_assigner": "GitHub_M",
"cwe_ids": [
"CWE-74",
"CWE-93"
],
"osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2022/35xxx/CVE-2022-35948.json"
}{
"extracted_events": [
{
"range": [
{
"introduced": "=< 5.8.0"
},
{
"last_affected": "=< 5.8.0"
}
],
"source": "AFFECTED_FIELD",
"strategy": "StandaloneSingleVersion"
},
{
"original_tag": "v5.8.2",
"range": [
{
"fixed": "52d1ce56f7641d0c0d8359fc76537ebe15473e7e"
}
],
"source": "REFERENCES_TAG"
},
{
"range": [
{
"fixed": "66165d604fd0aee70a93ed5c44ad4cc2df395f80"
}
],
"source": "REFERENCES_COMMIT"
}
]
}