CVE-2025-67724

Medium

Description

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.

SeverityMedium
CVSS5.4
Exploit probability—
ProductTornado
PublishedDec 12, 2025
First seenDec 12, 2025

How to fix

Update
  • tornadoweb tornado6.5.3 or later
  • tornado6.5.3 or later

Affected products

ProductAffected versionsFixed in
tornadoweb tornadov < 6.5.36.5.3
tornadoPyPIv < 6.5.36.5.3

Check your version

Choose the product and enter the version you run to see whether it falls in the affected range.

In the Intelligence 360 plan

Attack Surface Management

See the assets tied to your domains, the technologies they run and known vulnerabilities in one list.