CVE-2026-54388
Tinyproxy - HTTP Request Smuggling via Duplicate Content-Length Headers
Tinyproxy through 1.11.3, fixed in commit 364cdb6, fails to reject requests containing multiple Content-Length headers with differing values, forwarding all duplicate headers to the backend while using the first value to determine how many request body bytes to consume. Remote attackers can desynchronize the proxy and backend parser state, allowing injection of arbitrary HTTP requests to the backend to enable cache poisoning, access control bypass, and request hijacking.
Attack profile
How easy it is to exploit
- Attack vector
- Network
- Complexity
- Low
- Privileges needed
- None
- User interaction
- None
What an attacker can affect
- Confidentiality
- High
- Integrity
- High
- Availability
- None
Exploit likelihood
What each source reports
CVE List Score used
9.3
Tinyproxy - HTTP Request Smuggling via Duplicate Content-Length Headers
Tinyproxy through 1.11.3, fixed in commit 364cdb6, fails to reject requests containing multiple Content-Length headers with differing values, forwarding all duplicate headers to the backend while using the first value to determine how many request body bytes to consume. Remote attackers can desynchronize the proxy and backend parser state, allowing injection of arbitrary HTTP requests to the backend to enable cache poisoning, access control bypass, and request hijacking.
- Record
CVE-2026-54388- CVSS 4.0
- 9.3 Critical
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N - CVSS 3.1
- 9.1 Critical
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N - Weakness
- CWE-444
- Updated
- 2026-11-02
EUVDEUVD-2026-37790
9.3
Tinyproxy through 1.11.3, fixed in commit 364cdb6, fails to reject requests containing multiple Content-Length headers with differing values, forwarding all duplicate headers to the backend while using the first value to determine how many request body bytes to consume. Remote attackers can desynchronize the proxy and backend parser state, allowing injection of arbitrary HTTP requests to the backend to enable cache poisoning, access control bypass, and request hijacking.
- Record
EUVD-2026-37790- CVSS 4.0
- 9.3 Critical
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N - Updated
- 2026-11-02
GitHub AdvisoriesGHSA-p3h9-73g9-x6m3
9.3
Tinyproxy through 1.11.3, fixed in commit 364cdb6, fails to reject requests containing multiple...
Tinyproxy through 1.11.3, fixed in commit 364cdb6, fails to reject requests containing multiple Content-Length headers with differing values, forwarding all duplicate headers to the backend while using the first value to determine how many request body bytes to consume. Remote attackers can desynchronize the proxy and backend parser state, allowing injection of arbitrary HTTP requests to the backend to enable cache poisoning, access control bypass, and request hijacking.
- Record
GHSA-p3h9-73g9-x6m3- CVSS 4.0
- 9.3 Critical
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X - CVSS 3.1
- 9.1 Critical
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N - Weakness
- CWE-444
- Updated
- 2026-11-02
NVD
9.3
Tinyproxy through 1.11.3, fixed in commit 364cdb6, fails to reject requests containing multiple Content-Length headers with differing values, forwarding all duplicate headers to the backend while using the first value to determine how many request body bytes to consume. Remote attackers can desynchronize the proxy and backend parser state, allowing injection of arbitrary HTTP requests to the backend to enable cache poisoning, access control bypass, and request hijacking.
- Record
CVE-2026-54388- CVSS 4.0
- 9.3 Critical
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X - CVSS 3.1
- 9.1 Critical
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N - Weakness
- CWE-444
- Updated
- 2026-11-02
OSV
9.3
Tinyproxy - HTTP Request Smuggling via Duplicate Content-Length Headers
Tinyproxy through 1.11.3, fixed in commit 364cdb6, fails to reject requests containing multiple Content-Length headers with differing values, forwarding all duplicate headers to the backend while using the first value to determine how many request body bytes to consume. Remote attackers can desynchronize the proxy and backend parser state, allowing injection of arbitrary HTTP requests to the backend to enable cache poisoning, access control bypass, and request hijacking.
- Record
CVE-2026-54388- CVSS 4.0
- 9.3 Critical
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N - Weakness
- CWE-444
- Updated
- 2026-11-02
OSVDEBIAN-CVE-2026-54388
9.3
Tinyproxy through 1.11.3, fixed in commit 364cdb6, fails to reject requests containing multiple Content-Length headers with differing values, forwarding all duplicate headers to the backend while using the first value to determine how many request body bytes to consume. Remote attackers can desynchronize the proxy and backend parser state, allowing injection of arbitrary HTTP requests to the backend to enable cache poisoning, access control bypass, and request hijacking.
- Record
DEBIAN-CVE-2026-54388- CVSS 4.0
- 9.3 Critical
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X - Updated
- 2026-11-02
OSVUBUNTU-CVE-2026-54388
9.3
Tinyproxy through 1.11.3, fixed in commit 364cdb6, fails to reject requests containing multiple Content-Length headers with differing values, forwarding all duplicate headers to the backend while using the first value to determine how many request body bytes to consume. Remote attackers can desynchronize the proxy and backend parser state, allowing injection of arbitrary HTTP requests to the backend to enable cache poisoning, access control bypass, and request hijacking.
- Record
UBUNTU-CVE-2026-54388- CVSS 4.0
- 9.3 Critical
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N - CVSS 3.1
- 9.1 Critical
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N - Updated
- 2026-11-02
OSVopenSUSE-SU-2026:11060-1 No score
tinyproxy-1.11.3-3.1 on GA media
These are all security issues fixed in the tinyproxy-1.11.3-3.1 package on the GA media of openSUSE Tumbleweed.
- Record
openSUSE-SU-2026:11060-1- Updated
- 2026-11-02
OSVopenSUSE-SU-2026:22133-1 No score
Security update for tinyproxy
This update for tinyproxy fixes the following issues:
Changes in tinyproxy:
- Fixed failure to reconcile conflicting Content-Length and Transfer-Encoding [boo#1268474, CVE-2026-54387]
- Fixed failure to reject requests containing multiple Content-Length headers with differing values [boo#1268475, CVE-2026-54388]
- Fixed failure to properly validate the Host header during stathost detection [boo#1268476, CVE-2026-55202]
- Record
openSUSE-SU-2026:22133-1- Updated
- 2026-11-02
Affected products
Affected packages
| Package | Affected | Fixed |
|---|---|---|
tinyproxyDebian:14 |
All versions, plus listed versions 1.11.2-11.11.3-11.11.3-1~bpo13+1 |
None known |
tinyproxyUbuntu:Pro:14.04:LTS |
All versions, plus listed versions 1.8.3-3ubuntu11.8.3-3ubuntu14.04.1~esm11.8.3-3ubuntu14.04.1~esm21.8.3-3ubuntu14.04.1~esm3 |
None known |
tinyproxyUbuntu:Pro:16.04:LTS |
All versions, plus listed versions 1.8.3-3ubuntu11.8.3-3ubuntu16.04.1~esm11.8.3-3ubuntu16.04.1~esm21.8.3-3ubuntu16.04.1~esm3 |
None known |
tinyproxyUbuntu:Pro:18.04:LTS |
All versions, plus listed versions 1.8.4-21.8.4-31.8.4-51.8.4-5ubuntu0.1~esm11.8.4-5ubuntu0.1~esm21.8.4-5ubuntu0.1~esm3 |
None known |
tinyproxyUbuntu:20.04:LTS |
All versions, plus listed versions 1.10.0-21.10.0-41.10.0-4ubuntu0.11.10.0-4ubuntu0.2 |
None known |
tinyproxyUbuntu:Pro:22.04:LTS |
All versions, plus listed versions 1.10.0-51.11.0-11.11.0-1ubuntu0.1~esm11.11.0-1ubuntu0.1~esm2 |
None known |
tinyproxyUbuntu:24.04:LTS |
All versions, plus listed versions 1.11.1-2.11.11.1-31.11.1-3ubuntu0.1 |
None known |
tinyproxyUbuntu:25.10 |
All versions, plus listed versions 1.11.2-1 |
None known |
tinyproxyUbuntu:26.10 |
All versions, plus listed versions 1.11.3-1 |
None known |
tinyproxyUbuntu:26.04:LTS |
All versions, plus listed versions 1.11.2-11.11.2-1build11.11.3-1 |
None known |
tinyproxyopenSUSE:Tumbleweed From an advisory covering 3 CVEs |
before 1.11.3-3.1 | 1.11.3-3.1 |
tinyproxyopenSUSE:Leap 16.0 From an advisory covering 3 CVEs |
before 1.11.3-bp160.2.1 | 1.11.3-bp160.2.1 |
History
| Recorded | Changed | Sources |
|---|---|---|
| affected, facts | ||
| first indexed | CVE List, EUVD, GitHub Advisories, NVD, OSV |
Dates are when Every CVE recorded each change. Upstream dates may differ.
In short
CVE-2026-54388 is a critical vulnerability (CVSS 9.3) in Tinyproxy, published June 17, 2026. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 0.44%, the 38th percentile. No source names a fixed version.
References
github.com/tinyproxy/tinyproxy/issues/609
github.com/tinyproxy/tinyproxy/pull/610
github.com/tinyproxy/tinyproxy/commit/364cdb67e0ea00a8e4a7037e2693e0711e816adb
vulncheck.com/advisories/tinyproxy-http-request-smuggling-via-duplicate-content-length-headers
nvd.nist.gov/vuln/detail/CVE-2026-54388
github.com/advisories/GHSA-p3h9-73g9-x6m3
Show 11 moreShow less
github.com/CVEProject/cvelistV5/tree/main/cves/2026/54xxx/CVE-2026-54388.json
github.com/tinyproxy/tinyproxy
security-tracker.debian.org/tracker/CVE-2026-54388
ubuntu.com/security/CVE-2026-54388
cve.org/CVERecord?id=CVE-2026-54388
suse.com/security/cve/CVE-2026-54387
suse.com/security/cve/CVE-2026-54388
suse.com/security/cve/CVE-2026-55202
bugzilla.suse.com/1268474
bugzilla.suse.com/1268475
bugzilla.suse.com/1268476