CVE-2019-18277: High severity HAProxy HAProxy vulnerability
A flaw was found in HAProxy before 2.0.6. In legacy mode, messages featuring a transfer-encoding header missing the "chunked" value were not being correctly rejected. The impact was limited but if combined with the "http-reuse always" setting, it could be used to help construct an HTTP request smuggling attack against a vulnerable component employing a lenient parser that would ignore the content-length header as soon as it saw a transfer-encoding one (even if not entirely valid according to the specification).
Other sources
A flaw was found in haproxy before version 2.0.6. In legacy mode, messages featuring a transfer-encoding header missing the "chunked" value was not being correctly rejected. The impact was limited but if combined with "http-reuse always", it could be used as an help to construct a content smuggling attack against a vulnerable component employing a lenient parser which would ignore the content-length header as soon as it sees a transfer-encoding one, without even parsing it.
References:
https://www.mail-archive.com/haproxy@formilux.org/msg34926.html https://nathandavison.com/blog/haproxy-http-request-smuggling
— Red Hat
Affected Software
Remediation
Event History
Frequently Asked Questions
What is the vulnerability ID for this flaw in HAProxy?
The vulnerability ID for this flaw in HAProxy is CVE-2019-18277.
What is the severity level of CVE-2019-18277?
The severity level of CVE-2019-18277 is high with a severity value of 7.5.
What is the impact of CVE-2019-18277?
The impact of CVE-2019-18277 is limited but can be used to help construct an HTTP request smuggling attack.
Which versions of HAProxy are affected by this vulnerability?
HAProxy versions before 2.0.6 and versions before 1.8.22 are affected by this vulnerability.
How can I fix CVE-2019-18277 in HAProxy?
To fix CVE-2019-18277, it is recommended to update HAProxy to version 2.0.6 or version 1.8.22.