HAProxy 3 before 3.4.6 allows a remote unauthenticated attacker to cause a denial of service (persistent worker-thread CPU exhaustion) via an HTTP/1.1 chunked request. Although the H1 multiplexer drains the request before closing the stream, the parser repeatedly re-processes the same bytes without making progress. The affected thread stays busy at 100% CPU after timeouts expire and after the client disconnects, and repeated requests can consume all worker threads until the process is restarted.
{
"cna_assigner": "mitre",
"cwe_ids": [
"CWE-835"
],
"osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/110xxx/CVE-2026-110354.json",
"unresolved_ranges": [
{
"extracted_events": [
{
"range": [
{
"introduced": "3.0.0"
},
{
"fixed": "3.0.30"
},
{
"introduced": "3.2.0"
},
{
"fixed": "3.2.26"
},
{
"introduced": "3.3.0"
},
{
"fixed": "3.3.17"
},
{
"introduced": "3.0r1"
},
{
"fixed": "3.0r1-362.1441"
},
{
"introduced": "3.2r1"
},
{
"fixed": "3.2r1-378.1259"
},
{
"introduced": "3.3r1"
},
{
"fixed": "3.3r1-377.1005"
},
{
"introduced": "3.2.0"
},
{
"fixed": "3.2.17-ee1"
},
{
"introduced": "3.0"
},
{
"fixed": "3.0.16-ee17"
},
{
"introduced": "1.11"
},
{
"fixed": "1.11.14-ee11"
}
],
"source": "AFFECTED_FIELD",
"strategy": "StandardRange"
}
]
}
]
}{
"extracted_events": [
{
"range": [
{
"introduced": "3.4.0"
},
{
"fixed": "3.4.6"
}
],
"source": "AFFECTED_FIELD",
"strategy": "StandardRange"
},
{
"range": [
{
"introduced": "3.5-dev"
},
{
"fixed": "3.5-dev9"
}
],
"source": "AFFECTED_FIELD",
"strategy": "StandardRange"
},
{
"range": [
{
"introduced": "3.2.0"
},
{
"fixed": "3.2.17"
}
],
"source": "AFFECTED_FIELD",
"strategy": "StandardRange"
}
]
}