// For flags

CVE-2023-25725

haproxy: request smuggling attack in HTTP/1 header parsing

Severity Score

9.1
*CVSS v3.1

Exploit Likelihood

*EPSS

Affected Versions

*CPE

Public Exploits

1
*Multiple Sources

Exploited in Wild

-
*KEV

Decision

-
*SSVC
Descriptions

HAProxy before 2.7.3 may allow a bypass of access control because HTTP/1 headers are inadvertently lost in some situations, aka "request smuggling." The HTTP header parsers in HAProxy may accept empty header field names, which could be used to truncate the list of HTTP headers and thus make some headers disappear after being parsed and processed for HTTP/1.0 and HTTP/1.1. For HTTP/2 and HTTP/3, the impact is limited because the headers disappear before being parsed and processed, as if they had not been sent by the client. The fixed versions are 2.7.3, 2.6.9, 2.5.12, 2.4.22, 2.2.29, and 2.0.31.

A flaw was found in HAProxy's headers processing that causes HAProxy to drop important headers fields such as Connection, Content-length, Transfer-Encoding, and Host after having partially processed them. A maliciously crafted HTTP request could be used in an HTTP request smuggling attack to bypass filtering and detection by HAProxy.

*Credits: N/A
CVSS Scores
Attack Vector
Network
Attack Complexity
Low
Privileges Required
None
User Interaction
None
Scope
Unchanged
Confidentiality
None
Integrity
High
Availability
High
Attack Vector
Network
Attack Complexity
Low
Privileges Required
None
User Interaction
None
Scope
Unchanged
Confidentiality
None
Integrity
High
Availability
Low
* Common Vulnerability Scoring System
SSVC
  • Decision:-
Exploitation
-
Automatable
-
Tech. Impact
-
* Organization's Worst-case Scenario
Timeline
  • 2023-02-13 CVE Reserved
  • 2023-02-14 CVE Published
  • 2023-08-23 First Exploit
  • 2024-08-02 CVE Updated
  • 2024-10-05 EPSS Updated
  • ---------- Exploited in Wild
  • ---------- KEV Due Date
CWE
  • CWE-444: Inconsistent Interpretation of HTTP Requests ('HTTP Request/Response Smuggling')
CAPEC
Affected Vendors, Products, and Versions
Vendor Product Version Other Status
Vendor Product Version Other Status <-- --> Vendor Product Version Other Status
Haproxy
Search vendor "Haproxy"
Haproxy
Search vendor "Haproxy" for product "Haproxy"
< 2.0.31
Search vendor "Haproxy" for product "Haproxy" and version " < 2.0.31"
-
Affected
Haproxy
Search vendor "Haproxy"
Haproxy
Search vendor "Haproxy" for product "Haproxy"
>= 2.1.0 < 2.2.29
Search vendor "Haproxy" for product "Haproxy" and version " >= 2.1.0 < 2.2.29"
-
Affected
Haproxy
Search vendor "Haproxy"
Haproxy
Search vendor "Haproxy" for product "Haproxy"
>= 2.3.0 < 2.4.22
Search vendor "Haproxy" for product "Haproxy" and version " >= 2.3.0 < 2.4.22"
-
Affected
Haproxy
Search vendor "Haproxy"
Haproxy
Search vendor "Haproxy" for product "Haproxy"
>= 2.5.0 < 2.5.12
Search vendor "Haproxy" for product "Haproxy" and version " >= 2.5.0 < 2.5.12"
-
Affected
Haproxy
Search vendor "Haproxy"
Haproxy
Search vendor "Haproxy" for product "Haproxy"
>= 2.6.0 < 2.6.9
Search vendor "Haproxy" for product "Haproxy" and version " >= 2.6.0 < 2.6.9"
-
Affected
Haproxy
Search vendor "Haproxy"
Haproxy
Search vendor "Haproxy" for product "Haproxy"
>= 2.7.0 < 2.7.3
Search vendor "Haproxy" for product "Haproxy" and version " >= 2.7.0 < 2.7.3"
-
Affected
Debian
Search vendor "Debian"
Debian Linux
Search vendor "Debian" for product "Debian Linux"
10.0
Search vendor "Debian" for product "Debian Linux" and version "10.0"
-
Affected
Debian
Search vendor "Debian"
Debian Linux
Search vendor "Debian" for product "Debian Linux"
11.0
Search vendor "Debian" for product "Debian Linux" and version "11.0"
-
Affected