Quick answers
- Is CVE-2023-54397 exploited in the wild?
- No. Junglewise Threat Intelligence has no report of CVE-2023-54397 being exploited in the wild.
- How severe is CVE-2023-54397?
- High severity, with a CVSS score of 7.5, published 15 September 2026.
- Which products and versions are affected?
- tornado (PyPI) ECOSYSTEM:introduced=0,fixed=6.3.3.
- Is there a fix for CVE-2023-54397?
- Yes. tornado (PyPI): upgrade to 6.3.3 or later. Junglewise finds every place you run it, drafts the upgrade and applies it once you approve.
- How is CVE-2023-54397 attacked?
- It is attacked over the network.
- Am I affected by CVE-2023-54397?
- Check whether you run tornado (PyPI) at an affected version. Junglewise does that check for you around the clock: connect your code, cloud and domains, and it matches new vulnerabilities like this one against what you actually run and tells you when one reaches you.
How to fix
- tornado (PyPI): upgrade to 6.3.3 or later
pip install "tornado>=6.3.3"
Technical details
Tornado versions before 6.3.3 use Python's int() constructor to parse Content-Length and chunk-length values without proper validation. The int() function accepts non-standard prefixes and separators (e.g., "+0", "-0", "0_0"), which diverge from HTTP RFC specifications that allow only ASCII digits. When deployed behind proxies that reject these non-standard formats, an attacker can send a request with ambiguous Content-Length interpretation, causing the proxy and Tornado to disagree on where the request ends, enabling HTTP request smuggling. This vulnerability is classified as CWE-444 (Inconsistent Interpretation of HTTP Requests). The issue was patched in Tornado 6.3.3 by implementing stricter parsing logic for header values.
Affected products
- Tornado Tornado before 6.3.3
Identifiers
- CVE-2023-54397
- GHSA-qppv-j76h-2rpx
Timeline
- 2023-08-12: disclosed: Security advisory published on GitHub
- 2023: patched: Fixed in Tornado 6.3.3