CVE-2024-14029
python-tornado: Tornado before 6.4.1 HTTP Request Smuggling via Transfer-Encoding
Severity
ImportantRed Hat Product Security
CVSS 3.1
Review impact separately from score.
Published · September 16, 2026
Updated · November 2, 2026
Description
A vulnerability was discovered in Tornado where it improperly handles HTTP requests containing duplicate Transfer-Encoding: chunked headers. When duplicate Transfer-Encoding headers are present in an incoming request, Tornado ignores them and treats the request as body-less, leaving the chunked message body unparsed in the HTTP socket stream. When Tornado is deployed behind a reverse proxy or load balancer that correctly processes chunked payloads, an unauthenticated remote attacker can exploit this parsing discrepancy to conduct HTTP request smuggling, bypass proxy security restrictions, poison intermediate caches, or desynchronize backend connections.
Statement
A flaw was found in Tornado's HTTP request header processing. When processing HTTP requests containing duplicate Transfer-Encoding: chunked headers, Tornado ignores the headers and treats the request as body-less, leaving the chunked body unparsed in the stream. When deployed behind a front-end proxy or load balancer, an unauthenticated remote attacker can exploit this parsing discrepancy to conduct HTTP request smuggling, bypass proxy-level security controls, poison intermediate caches, or cause connection desynchronization.
CVSS score applicability
The CVSS score(s) listed for this vulnerability do not reflect the associated product's status, and are included for informational purposes to better understand the severity of this vulnerability.
Mitigation
Configure upstream reverse proxies or load balancers to strictly normalize HTTP headers and reject any incoming requests containing duplicate Transfer-Encoding headers before they reach the backend Tornado application worker.
CVSS / CWE
CVSS 3.1 · 7.5CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:C/C:L/I:H/A:N
CWE-444 · Inconsistent Interpretation of HTTP Requests