# CVE-2024-58384: Tornado CurlAsyncHTTPClient CRLF injection in request headers

Source: https://junglewise.ai/threats/cve-2024-58384-tornado-curlasynchttpclient-crlf-injection-in-request-headers  
Publisher: Junglewise Threat Intelligence, https://junglewise.ai/threats  
Published: 2026-09-15. Updated: 2026-09-26  
License: CC BY 4.0 with a link back

CVE-2024-58384 · Severity: medium · CVSS 5.4 · Published 2026-09-15

Tornado is a popular Python web framework used to build server and client applications. The CurlAsyncHTTPClient component fails to validate HTTP request headers for carriage return and line feed characters, allowing an attacker to inject malicious headers or construct entirely new HTTP requests if the application passes untrusted header values. This could facilitate server-side request forgery attacks or other header-injection exploits.

Technologies: [tornado (PyPI)](https://junglewise.ai/threats/technologies/tornado). Vendors: [PyPI](https://junglewise.ai/threats/vendors/pypi).

## Quick answers

**Is CVE-2024-58384 exploited in the wild?** No. Junglewise Threat Intelligence has no report of CVE-2024-58384 being exploited in the wild.

**How severe is CVE-2024-58384?** Medium severity, with a CVSS score of 5.4, published 15 September 2026.

**Which products and versions are affected?** tornado (PyPI) ECOSYSTEM:introduced=0,fixed=6.4.1.

**Is there a fix for CVE-2024-58384?** Yes. tornado (PyPI): upgrade to 6.4.1 or later. Junglewise finds every place you run it, drafts the upgrade and applies it once you approve.

**How is CVE-2024-58384 attacked?** It is attacked over the network.

**Am I affected by CVE-2024-58384?** 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.4.1 or later

  ```sh
  pip install "tornado>=6.4.1"
  ```


## Technical details

The vulnerability is a CRLF (carriage return/line feed) injection flaw in Tornado's CurlAsyncHTTPClient class. The root cause is inadequate input validation: when constructing HTTP requests via libcurl's HTTPHEADER option, Tornado does not sanitize header names or values to reject \r and \n characters. An attacker who controls a header value can inject CRLF sequences to add arbitrary headers (e.g., "Foo: Bar\r\nInjected: Header") or inject entire HTTP requests (\r\n\r\nPOST /evil ...) into the same connection. The attack requires the application to include attacker-controlled data in request headers and use CurlAsyncHTTPClient; the standard AsyncHTTPClient does perform validation. The vulnerability is fixed in version 6.4.1 and later.

## Affected products

- Tornado Tornado before 6.4.1

## Identifiers

- CVE-2024-58384
- GHSA-w235-7p84-xx57

## Timeline

- 2024-06-06: disclosed: GitHub Security Advisory (GHSA-w235-7p84-xx57) published
- 2024-06-06: patched: Fixed in Tornado 6.4.1
- 2026-09-15: other: CVE-2024-58384 assigned and published to NVD

## References

- [https://github.com/tornadoweb/tornado/security/advisories/GHSA-w235-7p84-xx57](https://github.com/tornadoweb/tornado/security/advisories/GHSA-w235-7p84-xx57)
- [https://www.vulncheck.com/advisories/tornado-before-6.4.1-crlf-injection-via-curlasynchttpclient](https://www.vulncheck.com/advisories/tornado-before-6.4.1-crlf-injection-via-curlasynchttpclient)

## Related threats

- [Tornado open redirect in RedirectHandler URL templates](https://junglewise.ai/threats/cve-2026-116578-tornado-is-a-python-web-framework-and-asynchronous-networking)
- [Tornado HTTP header parser quadratic CPU consumption via line folding](https://junglewise.ai/threats/cve-2026-116577-tornado-is-a-python-web-framework-and-asynchronous-networking)
- [Tornado HTTP/1.1 chunked encoding denial of service](https://junglewise.ai/threats/cve-2026-115927-tornado-is-a-python-web-framework-and-asynchronous-networking)
- [Tornado StaticFileHandler path traversal via symlinks](https://junglewise.ai/threats/cve-2026-103263-tornado-staticfilehandler-follows-symlinks-outside-static-root)
- [Tornado CurlAsyncHTTPClient unbounded memory accumulation in decompression](https://junglewise.ai/threats/cve-2026-103262-tornado-curlasynchttpclient-enforces-no-response-size-limit)
