CVE-2025-47287:
Tornado vulnerable to excessive logging caused by malformed multipart form data
7.5
CVSS ScoreBasic Information
Technical Details
Package Name | Ecosystem | Vulnerable Versions | First Patched Version |
---|---|---|---|
tornado | pip | < 6.5.0 | 6.5.0 |
Vulnerability Intelligence
Miggo AI
Root Cause Analysis
The vulnerability lies in Tornado's multipart/form-data parser, which, prior to the patch, would log warnings upon encountering errors but continue parsing. This allowed for excessive log generation, leading to a DoS. The provided commit b39b892bf78fe8fea01dd45199aa88307e7162f3
modifies tornado/httputil.py
. Specifically, the functions parse_body_arguments
and parse_multipart_form_data
were changed to raise HTTPInputError
instead of calling gen_log.warning
when malformed data was encountered. These two functions are therefore the ones that contained the vulnerable logic. During exploitation, these functions would be in the call stack and responsible for the excessive logging. The changes in tornado/web.py
(specifically in RequestHandler._execute
) are part of the mitigation to handle these new exceptions gracefully, but the core vulnerability was within the parsing functions in httputil.py
.