It is possible to inject CRLF sequences into request headers in Undici.
const undici = require('undici')
const response = undici.request("http://127.0.0.1:1000", {
headers: {'a': "\r\nb"}
})
The same applies to path and method
Update to v5.8.0
Sanitize all HTTP headers from untrusted sources to eliminate \r\n.
https://hackerone.com/reports/409943 https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2018-12116
If you have any questions or comments about this advisory:
{
"github_reviewed_at": "2022-07-21T20:30:10Z",
"nvd_published_at": "2022-07-19T21:15:00Z",
"cwe_ids": [
"CWE-93"
],
"severity": "MODERATE",
"github_reviewed": true
}