CVE-2025-67726: CWE-834: Excessive Iteration in tornadoweb tornado
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.
AI Analysis
Technical Summary
CVE-2025-67726 affects Tornado, a popular Python web framework and asynchronous networking library, specifically versions 6.5.2 and earlier. The vulnerability stems from an inefficient algorithm in the _parseparam function within httputil.py, which is responsible for parsing HTTP header parameters, including those in multipart/form-data Content-Disposition headers. The function uses nested loops that repeatedly invoke string.count() to process quoted semicolons, resulting in a computational complexity of O(n²) relative to the number of parameters. An attacker can exploit this by sending a single HTTP request containing a large number of maliciously crafted parameters in the Content-Disposition header. Due to Tornado’s single-threaded event loop architecture, this causes excessive CPU consumption, leading to denial of service as the server becomes unresponsive. The vulnerability does not require any privileges or user interaction, making it remotely exploitable over the network. Although no known exploits have been reported in the wild, the high CVSS score of 7.5 reflects the significant impact on availability. The issue is resolved in Tornado version 6.5.3, where the parsing algorithm has been optimized to prevent excessive iteration and CPU usage.
Potential Impact
For European organizations, the primary impact is denial of service on web applications and services built using vulnerable Tornado versions. This can lead to prolonged downtime, degraded user experience, and potential loss of business continuity, especially for critical services relying on Tornado’s asynchronous networking capabilities. The single event loop design means even a single malicious request can incapacitate the server, amplifying the risk. Organizations in sectors such as finance, healthcare, government, and e-commerce that use Tornado for backend services may face operational disruptions. Additionally, service unavailability could indirectly affect compliance with European data protection regulations if it impacts availability guarantees. While confidentiality and integrity are not directly affected, the availability impact is significant and could be exploited as part of a larger attack campaign to disrupt services.
Mitigation Recommendations
European organizations should immediately upgrade all Tornado deployments to version 6.5.3 or later, where the vulnerability is fixed. In environments where immediate upgrading is not feasible, implementing web application firewalls (WAFs) to detect and block HTTP requests with suspiciously large or malformed Content-Disposition headers can help mitigate exploitation attempts. Rate limiting and request size restrictions on HTTP headers should be enforced to reduce the risk of resource exhaustion. Monitoring CPU usage and request patterns for anomalies indicative of this attack can provide early detection. Developers should review and test any custom Tornado-based applications for similar parsing inefficiencies. Additionally, isolating Tornado services behind reverse proxies or load balancers can help absorb or filter malicious traffic. Regular vulnerability scanning and patch management processes should be strengthened to ensure timely updates.
Affected Countries
Germany, France, United Kingdom, Netherlands, Sweden, Italy, Spain
CVE-2025-67726: CWE-834: Excessive Iteration in tornadoweb tornado
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.
AI-Powered Analysis
Technical Analysis
CVE-2025-67726 affects Tornado, a popular Python web framework and asynchronous networking library, specifically versions 6.5.2 and earlier. The vulnerability stems from an inefficient algorithm in the _parseparam function within httputil.py, which is responsible for parsing HTTP header parameters, including those in multipart/form-data Content-Disposition headers. The function uses nested loops that repeatedly invoke string.count() to process quoted semicolons, resulting in a computational complexity of O(n²) relative to the number of parameters. An attacker can exploit this by sending a single HTTP request containing a large number of maliciously crafted parameters in the Content-Disposition header. Due to Tornado’s single-threaded event loop architecture, this causes excessive CPU consumption, leading to denial of service as the server becomes unresponsive. The vulnerability does not require any privileges or user interaction, making it remotely exploitable over the network. Although no known exploits have been reported in the wild, the high CVSS score of 7.5 reflects the significant impact on availability. The issue is resolved in Tornado version 6.5.3, where the parsing algorithm has been optimized to prevent excessive iteration and CPU usage.
Potential Impact
For European organizations, the primary impact is denial of service on web applications and services built using vulnerable Tornado versions. This can lead to prolonged downtime, degraded user experience, and potential loss of business continuity, especially for critical services relying on Tornado’s asynchronous networking capabilities. The single event loop design means even a single malicious request can incapacitate the server, amplifying the risk. Organizations in sectors such as finance, healthcare, government, and e-commerce that use Tornado for backend services may face operational disruptions. Additionally, service unavailability could indirectly affect compliance with European data protection regulations if it impacts availability guarantees. While confidentiality and integrity are not directly affected, the availability impact is significant and could be exploited as part of a larger attack campaign to disrupt services.
Mitigation Recommendations
European organizations should immediately upgrade all Tornado deployments to version 6.5.3 or later, where the vulnerability is fixed. In environments where immediate upgrading is not feasible, implementing web application firewalls (WAFs) to detect and block HTTP requests with suspiciously large or malformed Content-Disposition headers can help mitigate exploitation attempts. Rate limiting and request size restrictions on HTTP headers should be enforced to reduce the risk of resource exhaustion. Monitoring CPU usage and request patterns for anomalies indicative of this attack can provide early detection. Developers should review and test any custom Tornado-based applications for similar parsing inefficiencies. Additionally, isolating Tornado services behind reverse proxies or load balancers can help absorb or filter malicious traffic. Regular vulnerability scanning and patch management processes should be strengthened to ensure timely updates.
Affected Countries
For access to advanced analysis and higher rate limits, contact root@offseq.com
Technical Details
- Data Version
- 5.2
- Assigner Short Name
- GitHub_M
- Date Reserved
- 2025-12-10T19:25:20.819Z
- Cvss Version
- 3.1
- State
- PUBLISHED
Threat ID: 693bc3e35f3fdafda42e6cf9
Added to database: 12/12/2025, 7:27:31 AM
Last enriched: 12/12/2025, 7:27:46 AM
Last updated: 12/12/2025, 11:01:05 AM
Views: 20
Community Reviews
0 reviewsCrowdsource mitigation strategies, share intel context, and vote on the most helpful responses. Sign in to add your voice and help keep defenders ahead.
Want to contribute mitigation steps or threat intel context? Sign in or create an account to join the community discussion.
Related Threats
CVE-2025-12841: CWE-862 Missing Authorization in Bookit
UnknownCVE-2025-12835: CWE-22 Improper Limitation of a Pathname to a Restricted Directory ('Path Traversal') in WooMulti
UnknownCVE-2025-40829: CWE-908: Use of Uninitialized Resource in Siemens Simcenter Femap
HighCVE-2025-58137: CWE-639 Authorization Bypass Through User-Controlled Key in Apache Software Foundation Apache Fineract
UnknownCVE-2025-58130: CWE-522 Insufficiently Protected Credentials in Apache Software Foundation Apache Fineract
UnknownActions
Updates to AI analysis require Pro Console access. Upgrade inside Console → Billing.
Need enhanced features?
Contact root@offseq.com for Pro access with improved analysis and higher rate limits.