CVE-2019-16786
HTTP Request Smuggling: Invalid Transfer-Encoding in Waitress
- State
- Published
- Severity
- 7.1 High
- Published
- Dec 20, 2019
- Updated
- Aug 5, 2024
- Reserved
- Sep 24, 2019
Description
Waitress through version 1.3.1 would parse the Transfer-Encoding header and only look for a single string value, if that value was not chunked it would fall through and use the Content-Length header instead. According to the HTTP standard Transfer-Encoding should be a comma separated list, with the inner-most encoding first, followed by any further transfer codings, ending with chunked. Requests sent with: "Transfer-Encoding: gzip, chunked" would incorrectly get ignored, and the request would use a Content-Length header instead to determine the body size of the HTTP message. This could allow for Waitress to treat a single request as multiple requests in the case of HTTP pipelining. This issue is fixed in Waitress 1.4.0.
Scores
| CVSS | Score | Vector | Source |
|---|---|---|---|
| 3.1 | 7.1 High | CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:C/C:H/I:L/A:N | GitHub_M |
Weaknesses
- CWE-444 Inconsistent Interpretation of HTTP Requests ('HTTP Request Smuggling')
Affected Products
| Product | Versions |
|---|---|
WaitressPylons |
|
References
- FEDORA-2020-bdcc8ffc24vendor-advisory
- FEDORA-2020-65a7744e38vendor-advisory
- RHSA-2020:0720vendor-advisory
- https://www.oracle.com/security-alerts/cpuapr2022.html
- https://docs.pylonsproject.org/projects/waitress/en/latest/#security-fixes
- https://github.com/Pylons/waitress/security/advisories/GHSA-g2xc-35jw-c63p
- https://github.com/Pylons/waitress/commit/f11093a6b3240fc26830b6111e826128af7771c3
- [debian-lts-announce] 20220512 [SECURITY] [DLA 3000-1] waitress security updatemailing-list
Every record here comes from the CVE Program’s CVE List. © 1999–2026 The MITRE Corporation. CVE is a registered trademark of The MITRE Corporation. The records are reproduced under the CVE Program terms of use.