CVE Catalog

CVE-2025-67724

MediumCVSS 5.4
Published: Updated: Translated: NVD NIST

Exploitation Probability (EPSS)

Low risk
0.24%

14th percentile - higher than 14% of all known CVEs

Summary

Tornado, a Python web framework, in versions 6.5.2 and below uses the supplied reason phrase unescaped in HTTP headers (header injection) or in HTML in the default error page (XSS). This can be exploited by passing untrusted data into the reason argument. Fixed in version 6.5.3.

Risk Assessment

Attackers can inject HTTP headers or execute XSS scripts, potentially leading to session hijacking or attacks on applications.

Recommendation

Update Tornado to version 6.5.3 or later. Avoid passing untrusted data to the reason argument.

Other vulnerabilities in Tornado

See all
Original NVD description (English source)

Tornado is a Python web framework and asynchronous networking library. In versions 6.5.2 and below, the supplied reason phrase is used unescaped in HTTP headers (where it could be used for header injection) or in HTML in the default error page (where it could be used for XSS) and can be exploited by passing untrusted or malicious data into the reason argument. Used by both RequestHandler.set_status and tornado.web.HTTPError, the argument is designed to allow applications to pass custom "reason" phrases (the "Not Found" in HTTP/1.1 404 Not Found) to the HTTP status line (mainly for non-standard status codes). This issue is fixed in version 6.5.3.

Vulnerability data from NVD (NIST) · CISA KEV · EPSS