Skip to content
OpenAdvisories
Critical · 9.1 Public exploit CVE-2023-25725 EUVD-2023-29633GHSA-h2p2-w857-329f

HAProxy before 2.7.3 may allow a bypass of access control because HTTP/1 headers are inadvertently lost in some situations, aka "request sm…

Published Feb 14, 2023 · Updated Mar 20, 2025 · Assigned by mitre

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.

Fixed in Linux distributions

Distributions backport fixes, so the version that fixes this vulnerability differs per release — upgrade to at least the version shown. From the distributions' security trackers and advisories.

ReleasePackageFixed inAdvisory
Debian 14 haproxy 2.6.8-2 —
Debian 13 haproxy 2.6.8-2 —
Debian 12 haproxy 2.6.8-2 —
Debian 11 haproxy 2.2.9-2+deb11u4 DSA-5348-1
Debian 10 haproxy 1.8.19-1+deb10u4 DLA-3318-1
ReleasePackageFixed inAdvisory
Ubuntu 22.04 LTS haproxy 2.4.18-0ubuntu1.2 USN-5869-1
Ubuntu 20.04 LTS haproxy 2.0.29-0ubuntu1.3 USN-5869-1
Ubuntu 18.04 LTS haproxy 1.8.8-1ubuntu0.13 USN-5869-1
Show 1 more (older releases, extended support, other products)
ReleasePackageFixed inAdvisory
Ubuntu Pro 16.04 LTS haproxy 1.6.3-1ubuntu0.3+esm2 USN-7135-1
ReleasePackageFixed inAdvisory
RHEL 9 haproxy 2.4.17-3.el9_1.2 RHSA-2023:1696
Show 3 more (older releases, extended support, other products)
ReleasePackageFixed inAdvisory
RHEL 9.0 EUS haproxy 2.4.7-2.el9_0.2 RHSA-2023:1978
Red Hat Openshift Ironic 4 python-werkzeug +1 2.0.3-4.el9 RHSA-2023:1325
Red Hat OpenShift 4 buildah +1 1:1.29.1-1.rhaos4.13.el9 RHSA-2023:1325
Red Hat OpenShift 4 cri-o 1.24.5-2.rhaos4.11.gitb007cb6.el8 RHSA-2023:1325, RHBA-2023:1649
Red Hat OpenShift 4 haproxy +1 2.2.19-4.el8 RHSA-2023:1655, RHSA-2023:1325, RHSA-2023:1268
Red Hat OpenShift 4 jenkins 2.387.1.1680701869-1.el8 RHSA-2023:1655
Red Hat OpenShift 4 jenkins-2-plugins 4.10.1680703106-1.el8 RHSA-2023:1655
Red Hat OpenShift 4 kernel-rt +15 4.18.0-372.51.1.rt7.208.el8_6 RHBA-2023:1649
Red Hat OpenShift 4 openshift +1 4.10.0-202303221742.p0.g16bcd69.assembly.stream.el7 RHSA-2023:1655, RHSA-2023:1325, RHSA-2023:1268
Red Hat OpenShift 4 openshift-clients +1 4.13.0-202303241616.p0.g92b1a3d.assembly.stream.el8 RHSA-2023:1325
Red Hat OpenShift 4 podman +6 3:4.4.1-3.rhaos4.13.el8 RHSA-2023:1325
Red Hat OpenShift 4 python-werkzeug +1 1.0.1-3.el8ost RHSA-2023:1325
Red Hat OpenShift 4 skopeo +1 2:1.10.0-1.rhaos4.13.el9 RHSA-2023:1325

AlmaLinux

Errata ↗
ReleasePackageFixed inAdvisory
AlmaLinux 9 haproxy 2.4.17-3.el9_1.2 ALSA-2023:1696
ReleasePackageFixed inAdvisory
SLES 15 SP4 haproxy 2.4.8+git0.d1f8d41e0-150400.3.10.1 SUSE-SU-2023:0411-1
SLES 15 SP3 haproxy 2.0.14-150200.11.15.1 SUSE-SU-2023:0413-1, SUSE-FU-2023:2119-1
SLES 15 SP2 haproxy 2.0.14-150200.11.15.1 SUSE-SU-2023:0413-1, SUSE-FU-2023:2119-1
SLES 15 SP1 haproxy 2.0.14-150100.8.27.1 SUSE-SU-2023:0412-1, SUSE-FU-2023:2117-1
Show 1 more (older releases, extended support, other products)
ReleasePackageFixed inAdvisory
SLE Micro 5.3 haproxy 2.4.8+git0.d1f8d41e0-150400.3.10.1 SUSE-SU-2023:0411-1
ReleasePackageFixed inAdvisory
openSUSE Tumbleweed haproxy 2.7.3+git0.1065b1000-1.1 openSUSE-SU-2024:12686-1
openSUSE Leap 15.4 haproxy 2.4.8+git0.d1f8d41e0-150400.3.10.1 SUSE-SU-2023:0411-1
Show 1 more (older releases, extended support, other products)
ReleasePackageFixed inAdvisory
openSUSE Leap Micro 5.3 haproxy 2.4.8+git0.d1f8d41e0-150400.3.10.1 SUSE-SU-2023:0411-1

Azure Linux

ReleasePackageFixed inAdvisory
Azure Linux 2 (CBL-Mariner) haproxy 2.4.22-1 —

Oracle Linux

ReleasePackageFixed inAdvisory
Oracle Linux 9 haproxy 2.4.17-3.el9_1.2 ELSA-2023-1696

Public exploits

Exploit or proof-of-concept code for this vulnerability is publicly available, which lowers the bar for attackers. Treat it as a reason to patch sooner.

Third-party code, not reviewed by us. Public PoCs are sometimes fake or contain malware. Read the code first and run it only in an isolated lab, against systems you are authorised to test.

GitHub 1 repository

Sources: PoC-in-GitHub, Metasploit Framework, Exploit-DB — updated daily. Only links are listed; no exploit code is hosted here.

Advisories 20

References