CVE-2025-67725

Tornado is Vulnerable to Quadratic DoS via Repeated Header Coalescing

Published Dec 12, 2025 CVSS 3.1 · 7.5 High EPSS < 1% KEV · Not listed
Description
Tornado is a Python web framework and asynchronous networking library. In versions 6.5.2 and below, a single maliciously crafted HTTP request can block the server's event loop for an extended period, caused by the HTTPHeaders.add method. The function accumulates values using string concatenation when the same header name is repeated, causing a Denial of Service (DoS). Due to Python string immutability, each concatenation copies the entire string, resulting in O(n²) time complexity. The severity can vary from high if max_header_size has been increased from its default, to low if it has its default value of 64KB. This issue is fixed in version 6.5.3.

Remediation

No solution or workaround provided in the CVE record

Tracking

Sign in to view the affected projects.

Advisories

Source ID Title
Debian DLA Debian DLA DLA-4461-1 python-tornado security update
Debian DSA Debian DSA DSA-6195-1 python-tornado security update
Github GHSA Github GHSA GHSA-c98p-7wgm-6p64 Tornado: Quadratic DoS via Repeated Header Coalescing
Ubuntu USN Ubuntu USN USN-7950-1 Tornado vulnerabilities
History
Type Values Removed Values Added
CPEs cpe:2.3:a:tornadoweb:tornado:*:*:*:*:*:*:*:*
Type Values Removed Values Added
Metrics ssvc

{'options': {'Automatable': 'yes', 'Exploitation': 'none', 'Technical Impact': 'partial'}, 'version': '2.0.3'}

Type Values Removed Values Added
First Time appeared Tornadoweb
Tornadoweb tornado
Vendors & Products Tornadoweb
Tornadoweb tornado
Type Values Removed Values Added
Description Tornado is a Python web framework and asynchronous networking library. In versions 6.5.2 and below, a single maliciously crafted HTTP request can block the server's event loop for an extended period, caused by the HTTPHeaders.add method. The function accumulates values using string concatenation when the same header name is repeated, causing a Denial of Service (DoS). Due to Python string immutability, each concatenation copies the entire string, resulting in O(n²) time complexity. The severity can vary from high if max_header_size has been increased from its default, to low if it has its default value of 64KB. This issue is fixed in version 6.5.3.
Title Tornado is Vulnerable to Quadratic DoS via Repeated Header Coalescing
Weaknesses CWE-400
References
Metrics cvssV3_1

{'score': 7.5, 'vector': 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H'}

Weaknesses

Sources

Status
PUBLISHED
Assigner
GitHub_M
Published
Updated
Dec 18, 2025, 6:51 PM
Reserved
Dec 10, 2025, 7:25 PM
Status
Analyzed
Published
Dec 12, 2025, 6:15 AM
Modified
Oct 7, 2026, 8:10 PM
Severity
Moderate
Public date
Dec 12, 2025, 5:49 AM