PYSEC-2026-1434
Request smuggling leading to endpoint restriction bypass in Gunicorn
At a glance
- Published
- Updated
- CVE
- CVE-2024-1135
- Aliases
- GHSA-w3h3-4rj7-4ph4
- CVSS_V3
- CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:H/A:N
Description
Gunicorn fails to properly validate Transfer-Encoding headers, leading to HTTP Request Smuggling (HRS) vulnerabilities. By crafting requests with conflicting Transfer-Encoding headers, attackers can bypass security restrictions and access restricted endpoints. This issue is due to Gunicorn's handling of Transfer-Encoding headers, where it incorrectly processes requests with multiple, conflicting Transfer-Encoding headers, treating them as chunked regardless of the final encoding specified. This vulnerability has been shown to allow access to endpoints restricted by gunicorn. This issue has been addressed in version 22.0.0. To be affected users must have a network path which does not filter out invalid requests. These users are advised to block access to restricted endpoints via a firewall or other mechanism if they are unable to update.
Affected packages
| Package | Versions |
|---|---|
| PyPI · gunicorn | introduced 0, fixed 22.0.0 |
References
- https://nvd.nist.gov/vuln/detail/CVE-2024-1135 ADVISORY
- https://github.com/benoitc/gunicorn/issues/3091 WEB
- https://github.com/benoitc/gunicorn/pull/3113 WEB
- https://github.com/benoitc/gunicorn/commit/ac29c9b0a758d21f1e0fb3b3457239e523fa9f1d WEB
- https://github.com/benoitc/gunicorn PACKAGE
- https://github.com/benoitc/gunicorn/releases/tag/22.0.0 WEB
- https://huntr.com/bounties/22158e34-cfd5-41ad-97e0-a780773d96c1 WEB
- https://lists.debian.org/debian-lts-announce/2024/06/msg00027.html WEB
- https://lists.debian.org/debian-lts-announce/2024/12/msg00018.html WEB
- https://pypi.org/project/gunicorn PACKAGE
- https://github.com/advisories/GHSA-w3h3-4rj7-4ph4 ADVISORY
Sources
| Source | Licence |
|---|---|
| OSV.dev | CC-BY 4.0 — PyPA Advisory Database |