Kurz gesagt
- CVE-2025-67726 ist eine Schwachstelle (HOCH (CVSS 7.5)) in tornado, tornado (tornadoweb).
- Wahrscheinlichkeit einer Ausnutzung in den nächsten 30 Tagen (EPSS): 0.53%, höher als bei 45.2% aller Schwachstellen.
- Abhilfe: auf 6.5.3 oder neuer aktualisieren.
| Package | Affected versions | Patched versions |
|---|
| tornado PyPI | < 6.5.3
| 6.5.3
|
| tornado | < 6.5.3
| 6.5.3
|
Description
Summary
The _parseparam function in Tornado's httputil.py is used to parse specific HTTP header values, such as those in multipart/form-data. This function uses an inefficient algorithm that repeatedly calls string.count() within a nested loop while processing quoted semicolons (e.g., param=";").
As a result, if an attacker sends a request with a large number of maliciously crafted parameters in a Content-Disposition header, the server's CPU usage increases quadratically (O(n²)) during parsing. Due to Tornado's single event loop architecture, a single malicious request can cause the entire server to become unresponsive for an extended period, leading to a Denial of Service (DoS).
Severity: High
NVD description
Tornado is a Python web framework and asynchronous networking library. Versions 6.5.2 and below use an inefficient algorithm when parsing parameters for HTTP header values, potentially causing a DoS. The _parseparam function in httputil.py is used to parse specific HTTP header values, such as those in multipart/form-data and repeatedly calls string.count() within a nested loop while processing quoted semicolons. If an attacker sends a request with a large number of maliciously crafted parameters in a Content-Disposition header, the server's CPU usage increases quadratically (O(n²)) during parsing. Due to Tornado's single event loop architecture, a single malicious request can cause the entire server to become unresponsive for an extended period. This issue is fixed in version 6.5.3.
Running one of these products? Scan your site to see whether it exposes a vulnerable version.
Scan my site free