#VU56401 Inconsistent interpretation of HTTP requests in HAProxy


Published: 2021-09-12

Vulnerability identifier: #VU56401

Vulnerability risk: Medium

CVSSv3.1: 6.5 [CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:L/I:L/A:N/E:P/RL:O/RC:C]

CVE-ID: CVE-2021-40346

CWE-ID: CWE-444

Exploitation vector: Network

Exploit availability: Yes

Vulnerable software:
HAProxy
Server applications / IDS/IPS systems, Firewalls and proxy servers

Vendor: HAProxy

Description

The vulnerability allows a remote attacker to preform HTTP request smuggling attacks.

The vulnerability exists due to improper validation of HTTP/2 requests within the htx_add_header() and htx_add_trailer() functions when processing HTTP header name length encoding in the HTX representation. A remote attacker can send a specially crafted HTTP request to the server and smuggle HTTP headers.

Successful exploitation of vulnerability may allow an attacker to poison HTTP cache and perform phishing attacks.

Mitigation
Install update from vendor's website.

Vulnerable software versions

HAProxy: 2.4.0 - 2.4.3, 2.3.0 - 2.3.13, 2.2.0 - 2.2.16, 2.0.0 - 2.0.24, 2.1.0 - 2.1.12


External links
http://www.mail-archive.com/haproxy@formilux.org/msg41114.html
http://git.haproxy.org/?p=haproxy.git;a=commit;h=3b69886f7dcc3cfb3d166309018e6cfec9ce2c95


Q & A

Can this vulnerability be exploited remotely?

Yes. This vulnerability can be exploited by a remote non-authenticated attacker via the Internet.

Is there known malware, which exploits this vulnerability?

No. We are not aware of malware exploiting this vulnerability. However, proof of concept for this vulnerability is available.


Latest bulletins with this vulnerability