CVE-2026-116577
Mở trang đầy đủCVSS 5.3 MEDIUM
Tornado: Quadratic CPU usage when parsing HTTP headers with line folding
Mô tả
Summary
Tornado's HTTP header parser takes quadratic time (O(n²)) when a header value is continued across many "obsolete line folding" (obs-fold) lines. An unauthenticated attacker can send a request whose header block is mostly short continuation lines. Parsing it uses a large amount of CPU on the IOLoop thread and blocks every other connection that process is serving.
This issue is closely related to CVE-2025-67725 (GHSA-c98p-7wgm-6p64). The fix for that advisory covered repeated headers but not line-folded continuations.
Impact
All Tornado HTTP servers are affected. Header parsing runs before any application code, so no authentication or particular handler is required.
How bad it gets depends on max_header_size:
- Default (64 KB): each malicious request blocks the event loop for tens of milliseconds. Repeated requests can degrade service.
- Raised
max_header_size: the cost grows with the square of the header size. A single 1 MB request can block the process for several seconds.
Only availability is affected. Confidentiality and integrity are not.
Patches
Fixed in Tornado 6.6 by removing support for obsolete line folding completely; header lines that begin with whitespace are now rejected.
Workarounds
- Keep
max_header_sizeat its default value or lower it. This limits the impact but doesn't remove it. - Run Tornado behind a reverse proxy that rejects or normalizes obsolete line folding before forwarding requests.
Credit
Reported by @manus-pi.
Điểm và phân loại
- CVSS
- 5.3 MEDIUM v3.1
- Nguồn điểm
- NVD
- Mức độ (theo nguồn)
- MEDIUM
- EPSS
- 0.38%
Vector CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L
Ảnh hưởng
| Package | Bản bị ảnh hưởng | Bản đã sửa |
|---|---|---|
pip tornado |
< 6.6 |
6.6
|
Sản phẩm
- tornadoweb tornado
Vì sao bị lọc
- CVSS 5.3 < 8.0 và không thuộc CISA KEV
Loại tác động
Không nhận ra loại tác động nào từ CWE, vector hay mô tả.
Dữ liệu riêng của nguồn
- CVE.org · Đơn vị cấp mã
- GitHub_M
- CVE.org · SSVC
- Tự động hoá được: yes · Khai thác: none · Tác động kỹ thuật: partial
- OSV.dev · ID
- GHSA-pcg2-g6cj-q92c
Tham khảo
- https://github.com/advisories/GHSA-pcg2-g6cj-q92c
- https://github.com/tornadoweb/tornado/security/advisories/GHSA-pcg2-g6cj-q92c
- https://nvd.nist.gov/vuln/detail/CVE-2026-116577
- https://github.com/tornadoweb/tornado/pull/3765
- https://github.com/tornadoweb/tornado/commit/1b7a1dc9f340f52de929852e8125aa12f25297c9
- https://github.com/tornadoweb/tornado/releases/tag/v6.6.0
- https://osv.dev/vulnerability/GHSA-pcg2-g6cj-q92c
- https://github.com/tornadoweb/tornado