Name | CVE-2023-25725 |
Description | 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. |
Source | CVE (at NVD; CERT, LWN, oss-sec, fulldisc, Red Hat, Ubuntu, Gentoo, SUSE bugzilla/CVE, GitHub advisories/code/issues, web search, more) |
References | DLA-3318-1, DSA-5348-1 |
The table below lists information on source packages.
Source Package | Release | Version | Status |
---|---|---|---|
haproxy (PTS) | jessie, jessie (lts) | 1.5.8-3+deb8u4 | fixed |
stretch (security) | 1.7.5-2+deb9u1 | fixed | |
stretch (lts), stretch | 1.7.5-2+deb9u2 | fixed | |
buster (security), buster, buster (lts) | 1.8.19-1+deb10u5 | fixed | |
bullseye (security), bullseye | 2.2.9-2+deb11u6 | fixed | |
bookworm (security), bookworm | 2.6.12-1+deb12u1 | fixed | |
sid, trixie | 2.9.12-1 | fixed |
The information below is based on the following data on fixed versions.
Package | Type | Release | Fixed Version | Urgency | Origin | Debian Bugs |
---|---|---|---|---|---|---|
haproxy | source | jessie | (not affected) | |||
haproxy | source | stretch | (not affected) | |||
haproxy | source | buster | 1.8.19-1+deb10u4 | DLA-3318-1 | ||
haproxy | source | bullseye | 2.2.9-2+deb11u4 | DSA-5348-1 | ||
haproxy | source | (unstable) | 2.6.8-2 |
https://git.haproxy.org/?p=haproxy-2.6.git;a=commit;h=73be199c4f5f1ed468161a4c5e10ca77cd5989d8 (v2.6.9)
[stretch] - haproxy <not-affected> (The vulnerable code was introduced later)
[jessie] - haproxy <not-affected> (The vulnerable code was introduced later)