Medium severity · published Oct 26, 2026
CVE-2026-116577
Tornado: Quadratic CPU usage when parsing HTTP headers with line folding
New
5.3
CVSS
0.4%
EPSS
No
On KEV
Description
Tornado is a Python web framework and asynchronous networking library. Prior to 6.6, Tornado's HTTP header parser accepts obsolete line folding and repeatedly concatenates short continuation lines, causing quadratic CPU consumption on the IOLoop thread. An unauthenticated client can submit a header block containing many obsolete line-folding continuations before application code runs, blocking other connections served by the process. The cost grows with max_header_size, and only availability is affected. This issue is fixed in version 6.6.
CVSS vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L
Attack vector
Network
Complexity
Low
Privileges
None
User interaction
None
Confidentiality
None
Integrity
None
Availability
Low
Scope
Unchanged
Exploitation
Is it being used?
Exploit prediction (EPSS)0.4% · higher than 32% of CVEs
Exploited in the wildNo evidence yet
CISA KEVNot listed
Ransomware campaign useNot known
Affected products
Which versions
TO
tornado · tornadoweb
< 6.6 · source: vendor
References
NVD
https://nvd.nist.gov/vuln/detail/CVE-2026-116577
CVE.org
https://www.cve.org/CVERecord?id=CVE-2026-116577
github.com
https://github.com/tornadoweb/tornado/commit/1b7a1dc9f340f52de929852e8125aa12f25297c9
github.com
https://github.com/tornadoweb/tornado/pull/3765
github.com
https://github.com/tornadoweb/tornado/releases/tag/v6.6.0
github.com
https://github.com/tornadoweb/tornado/security/advisories/GHSA-pcg2-g6cj-q92c
More from tornado
7.7
CVE-2026-49853
Tornado: Authorization header forwarded across cross-origin redirects in SimpleAsyncHTTPClient
7.5
CVE-2026-103262
Tornado before 6.5.9 Denial of Service via CurlAsyncHTTPClient
7.5
CVE-2026-91990
Tornado before 6.5.8 Memory Amplification DoS via multipart
7.5
CVE-2024-14029
Tornado before 6.4.1 HTTP Request Smuggling via Transfer-Encoding
7.5
CVE-2023-54397
Tornado before 6.3.3 HTTP Request Smuggling via Content-Length
