p PatchFirst

PatchFirst · Latest vulnerabilities

python-tornado vulnerabilities

Vulnerabilities published for python-tornado in the last 30 days: 3. Listed in the KEV catalogue: 0.

Filter vulnerabilities
Clear filters

Vulnerabilities: 13

  1. CVE-2026-103263

    High · CVSS 8.2EPSS 0.52%Fix available

    Tornado before 6.5.9 StaticFileHandler Path Traversal via Symlink

    Tornado before 6.5.9 contains a path traversal vulnerability in StaticFileHandler that follows symbolic links inside the static root without confirming the resolved target stays within it. When a symlink pointing outside the static directory exists inside it, unauthenticated attackers can request it to read files such as configuration files, private keys, and application secrets accessible to the process user.

    • Update to 6.5.4-0.1ubuntu0.2
    Published Updated
  2. CVE-2026-103262

    High · CVSS 8.7EPSS 0.63%Fix available

    Tornado before 6.5.9 Denial of Service via CurlAsyncHTTPClient

    Tornado versions before 6.5.9 contain an unbounded memory accumulation vulnerability in CurlAsyncHTTPClient that allows remote attackers to cause denial of service by sending a compressed response. Attackers can send a gzip-encoded decompression bomb that accumulates in memory without size limits, causing the application process to be killed by out-of-memory conditions.

    • Update to 6.5.4-0.1ubuntu0.2
    Published Updated
  3. CVE-2026-103261

    Medium · CVSS 6.9EPSS 0.47%No fix published

    Tornado before 6.5.9 Denial of Service via Query String

    Tornado before 6.5.9 fails to limit the number of query string fields in HTTPServerRequest.__init__, allowing remote attackers to cause event-loop stalling by sending requests with thousands of query parameters. Attackers can send unauthenticated GET requests with unbounded query-string field counts to degrade response times for all clients sharing the same IOLoop.

    Published Updated
  4. CVE-2026-91992

    High · CVSS 8.2EPSS 0.24%Fix available

    Tornado before 6.5.7 Credential Leak via Handle Reuse

    Tornado before 6.5.7 contains a credential leak vulnerability in CurlAsyncHTTPClient where pycurl handles are reused across requests without proper state clearing. Attackers can obtain sensitive credentials by issuing requests through the same client instance, allowing TLS certificates or proxy authentication to persist across unintended requests.

    • Update to 6.5.4-0.1ubuntu0.2
    Published Updated
  5. CVE-2026-91991

    Medium · CVSS 6.3EPSS 0.25%No fix published

    Tornado before 6.5.8 Cookie Attribute Injection via Capitalized kwargs

    Tornado before 6.5.8 contains an incomplete fix for cookie attribute injection that allows attackers to inject arbitrary cookie attributes by passing capitalized or legacy keyword arguments to set_cookie. Attackers can embed semicolon-delimited data in capitalized parameters like Domain, Path, or SameSite to bypass validation and modify cookie security attributes.

    Published Updated
  6. CVE-2026-91990

    High · CVSS 8.7EPSS 0.42%Fix available

    Tornado before 6.5.8 Memory Amplification DoS via multipart

    Tornado before 6.5.8 contains a memory amplification vulnerability in parse_multipart_form_data that splits multipart data before validating the max_parts limit. Attackers can send crafted multipart requests with many parts to create large transient lists, exhausting server memory and causing denial of service.

    • Update to 6.5.4-0.1ubuntu0.2
    Published Updated
  7. CVE-2024-58384

    Medium · CVSS 6.3EPSS 0.25%No fix published

    Tornado before 6.4.1 CRLF Injection via CurlAsyncHTTPClient

    Tornado before 6.4.1 contains a CRLF injection vulnerability in CurlAsyncHTTPClient that fails to reject carriage return and line feed characters in request headers. Attackers can inject CRLF sequences into header values to inject arbitrary headers or construct entirely new HTTP requests.

    Published Updated
  8. CVE-2026-82397

    High · CVSS 7.5EPSS 0.35%No fix published

    Tornado: Urlencoded body parsing omits max_num_fields, so one request can stall the event loop

    Tornado is a Python web framework and asynchronous networking library. Prior to 6.5.8, Tornado parses application/x-www-form-urlencoded request bodies with urllib.parse.parse_qs in tornado/escape.py without passing max_num_fields. RequestHandler._execute in tornado/web.py parses the body before handler dispatch through HTTPServerRequest._parse_body and parse_body_arguments in tornado/httputil.py, so an unauthenticated request body containing millions of separator-delimited fields can synchronously stall the single-threaded event loop and delay every connection. The body is bounded only by max_buffer_size, which defaults to 104857600 bytes. Th

    Published Updated
  9. CVE-2026-49855

    High · CVSS 7.5EPSS 0.57%No fix published

    tornado AsyncHTTPClient accumulates decompressed chunks without size limit (gzip bomb)

    Tornado is a Python web framework and asynchronous networking library. Prior to 6.5.6, Tornado gzip decompression routines processed limited-size chunks but did not enforce an overall limit on accumulated decompressed chunks, allowing a malicious server accessed by SimpleAsyncHTTPClient or an HTTPServer configured with decompress_request=True to consume effectively unlimited memory. This issue is fixed in version 6.5.6.

    Published Updated
  10. CVE-2026-49854

    Medium · CVSS 5.3EPSS 0.42%No fix published

    Tornado: Out-of-bounds memory access in C extension

    Tornado is a Python web framework and asynchronous networking library. Prior to 6.5.6, the optional native extension tornado.speedups implemented websocket_mask without validating that the mask argument is exactly four bytes, allowing the C function to read up to three bytes beyond the provided buffer when reached through Tornado XSRF token decoding with the native extension active. This issue is fixed in version 6.5.6.

    Published Updated
  11. CVE-2026-49853

    High · CVSS 7.7EPSS 0.45%No fix published

    Tornado: Authorization header forwarded across cross-origin redirects in SimpleAsyncHTTPClient

    Tornado is a Python web framework and asynchronous networking library. Prior to 6.5.6, SimpleAsyncHTTPClient shallow-copied redirected requests and removed only the Host header, leaving Authorization, auth_username, auth_password, and auth_mode in place when a redirect changed scheme, host, or port. This issue is fixed in version 6.5.6.

    Published Updated
  12. CVE-2026-31958

    High · CVSS 8.7EPSS 0.38%Fix available

    Tornado has a DoS due to too many multipart parts

    Tornado is a Python web framework and asynchronous networking library. In versions of Tornado prior to 6.5.5, the only limit on the number of parts in multipart/form-data is the max_body_size setting (default 100MB). Since parsing occurs synchronously on the main thread, this creates the possibility of denial-of-service due to the cost of parsing very large multipart bodies with many parts. This vulnerability is fixed in 6.5.5.

    • Update to 6.5.4-0.1ubuntu0.1
    Published Updated

Check your server

Check your installed stack and versions against the current vulnerability feeds.

Check your server →