CVE-2026-123534 · Package
NO FIX YET · SEE WHAT TO DO
Tornado's RequestHandler.static_url() and get_version() accept ../ sequences, so they hash files outside the static_path directory. An attacker who controls the input can learn whether readable files exist via SHA-512 hashes, or block the event loop by pointing it at /dev/zero.
first public Oct 22, 2026 · 1 source
Check it with your coding agent
It checks your repository and tells you if you’re affected, with the fix.
Applications built on Tornado that pass user-controlled strings into static_url() or rely on get_version() with untrusted input. Applications that only use static_url() with hard-coded paths are not exposed to the traversal. unknown whether the sources list other exposure conditions.
Not affected if hard-coded-static-paths, tornado-6.6-or-later
Who cares python, tornado, web-apps
python -c "import tornado; print(tornado.version)"static_url()6.6 or laterTornado before 6.6 contains a path traversal vulnerability in RequestHandler.static_url() and get_version() that allows attackers to hash files outside static_path using ../ sequences. Attackers controlling input passed to static_url() can obtain SHA-512 hashes of readable files to confirm their existence, or reference /dev/zero to block the event loop indefinitely.
This page as .md · .json · CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:L/VI:N/VA:H/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X
NVD data is provided by NIST and is public domain. Posts quoted belong to their authors.
Are you affected?
Tell InfraStack what you run. It checks this one, and every next one, against your stack.
Ask from here. InfraStack checks the affected versions against your stack and answers in your inbox.
InfraStack checks the affected versions against your stack and answers in Slack, with the evidence and the fix.