CVE-2026-91991 json
Tornado before 6.5.8 Cookie Attribute Injection via Capitalized kwargs
published 3mo ago modified last mo. also EUVD-2026-78663 , GHSA-wwv5-g3v4-889x
- cvss
- 5.4
- version 3.1, CNA
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- 0.2%
- EPSS 0.2% chance of exploitation in 30 days, percentile 16%
- public exploits
- 0
- none known
Summary
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.
Patch / fix
- pypi tornado 6.5.8
- tornadoweb tornado 6.5.8
- python-tornado6 SLES 16.0, Linux Micro 6.2, SLES for SAP applications 16.0 6.5-160000.7.1
- python-tornado SLES for SAP 15 SP6, SLES for SAP 15 SP5, SLES for SAP 15 SP4 +11 more 4.5.3-150000.3.31.1
- python-tornado6 SLES for SAP 15 SP6, SLES for SAP 15 SP5, SLES for SAP 15 SP4 +8 more 6.3.2-150400.9.27.1
suse advisories SUSE-SU-2026:24121-1SUSE-SU-2026:24207-1SUSE-SU-2026:4404-1SUSE-SU-2026:4403-1
- python-tornado6 openSUSE Leap 16.0 6.5-160000.7.1
opensuse advisories openSUSE-SU-2026:22059-1
- github.com/tornadoweb/tornado@6ef836e commit
- github.com/tornadoweb/tornado@da28476 commit
- github.com/tornadoweb/tornado#3704 pull request
- github.com/tornadoweb/tornado#3706 pull request
- github.com/tornadoweb/tornado/releases/tag/v6.5.8 release
Is CVE-2026-91991 in your dependencies? Fencer shows which of your repositories are affected as soon as an advisory lands, and opens the fix as a pull request.
Check with FencerVendor advisories
What the vendors themselves say about their products: affected, fixed or not affected, and what to do.
red hat product security vex CVE-2026-91991 updated cvss 5.4
tornado: Tornado: Cookie attribute injection via capitalized keyword arguments
-
Red Hat Exploit Intelligence exploit-intelligence-tech-preview/vulnerability-analysis-rhel9affected: no fix planned “Out of support scope”
-
Red Hat Lightspeed Core lightspeed-core/rag-tool-cpu-rhel9, lightspeed-core/lightspeed-stack-rhel9, lightspeed-core/rag-tool-cuda-12.9-rhel9 Red Hat OpenShift Lightspeed openshift-lightspeed/lightspeed-ocp-rag-rhel9 Red Hat Ansible Automation Platform 2 ansible-automation-platform-26/lightspeed-chatbot-rhel9 Red Hat OpenShift AI (RHOAI) rhoai/odh-feature-server-rhel9, rhoai/odh-llama-stack-core-rhel9, rhoai/odh-th-torch-cpu-py312-rhel9, rhoai/odh-th-torch-cuda-py312-rhel9, rhoai/odh-th-torch-rocm-py312-rhel9, rhoai/odh-th06-cpu-torch210-py312-rhel9, +23 more Red Hat OpenShift Container Platform 4 openshift/ose-rhel-coreos-9, python-flit 3.9.0-3.1.el9ocp, python-pep517 0.13.0-5.2.el9ocp, python-tornado 6.5.8-0.el10_2.1 Red Hat OpenShift Container Platform 5 openshift/ose-rhel-coreos-9affected: no fix available “Fix deferred”
-
Red Hat Migration Toolkit for Applications 8 mta/mta-solution-server-rhel9 Red Hat Ansible Automation Platform 2 ansible-automation-platform-27/lightspeed-chatbot-rhel9 Red Hat Enterprise Linux 8 pcs, pcs-snmp Red Hat Enterprise Linux 9 python3-tornado, rhel9/keylime-verifier, rhel9/keylime-registrar, python-tornado 6.5.8-0.el10_2.1 Red Hat Enterprise Linux 10 rhel10/keylime-verifier, rhel10/keylime-registrar, python-tornado 6.5.8-0.el10_2.1 Red Hat Enterprise Linux AI (RHEL AI) 3 rhelai3/bootc-cuda-rhel9, rhelai3/bootc-rocm-rhel9, rhelai3/bootc-gaudi-rhel9, rhelai3/disk-image-cuda-rhel9not affected: vulnerable code not present
+2 more productsfewer
Red Hat OpenStack Platform 16.2 rhosp-rhel8/openstack-redis, rhosp-rhel8/openstack-haproxy, rhosp-rhel8/openstack-mariadb, rhosp-rhel8/openstack-rabbitmq, rhosp-rhel8/openstack-ovn-northd, rhosp-rhel8/openstack-manila-share, +2 more Red Hat OpenStack Platform 17.1 rhosp-rhel9/openstack-redis, rhosp-rhel9/openstack-haproxy, rhosp-rhel9/openstack-mariadb, rhosp-rhel9/openstack-rabbitmq, rhosp-rhel9/openstack-ovn-northd, rhosp-rhel9/openstack-manila-share, +2 more
Red Hat CSAF VEX © Red Hat, Inc., from https://security.access.redhat.com/data/csaf/v2/vex/; changed: reduced to product statuses and remediations. CC BY 4.0 · csaf
CISA SSVC
- Exploitation
- Proof of concept is public
- Automatable
- no
- Technical impact
- partial
- Assessed
- last mo.
Exploit prediction
0.25% chance of exploitation in the next 30 days, higher than 16% of all scored CVEs (FIRST EPSS, 2026-11-11).
Exploits and checks
- github.com https://github.com/tornadoweb/tornado/security/advisories/GHSA-wwv5-g3v4-889x referenced PoC, tagged "exploit" by a source, unverified
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| CNA | 4.0 | 6.3 | CVSS:4.0/AV:N/AC:H/AT:P/PR:N/UI:N/VC:L/VI:L/VA:N/SC:L/SI:L/SA:N |
| CNA | 3.1 | 5.4 | CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:C/C:L/I:L/A:N |
| CNA | 4.0 | 6.3 | CVSS:4.0/AV:N/AC:H/AT:P/PR:N/UI:N/VC:L/VI:L/VA:N/SC:L/SI:L/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 |
Affected packages
| ecosystem | package | affected | fixed in |
|---|---|---|---|
| pypi | tornado | >=6.5.5, <6.5.8 |
6.5.8 |
Affected products
- tornadoweb tornado
Classification
References
-
github.com
/tornadoweb/tornado/pull/3704
web
-
github.com
/tornadoweb/tornado/pull/3706
web
-
github.com
/tornadoweb/tornado/commit/6ef836e43e1278530041376adb32504daa977b91
web
-
github.com
/tornadoweb/tornado/commit/da284767eae8e1f0484f123b8c3225f6465b09c7
web
-
github.com
/tornadoweb/tornado/security/advisories/GHSA-wwv5-g3v4-889x
vendor-advisory, exploit, web, advisory
-
vulncheck.com
/advisories/tornado-before-6.5.8-cookie-attribute-injection-via-capitalized-kwargs
third-party-advisory
-
github.com
/tornadoweb/tornado
package
-
github.com
/tornadoweb/tornado/releases/tag/v6.5.8
web
Sources
- CVE List CVE-2026-91991
- GitHub Advisory GHSA-wwv5-g3v4-889x
- NVD CVE-2026-91991
- Maintainer advisory GHSA-wwv5-g3v4-889x
Fencer Intel keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.
The maintainers of tornadoweb/tornado published their own advisory on GitHub. Reviewed sources take precedence over it.
CPEs and fixed versions use Anchore's correction of NVD's data: Added CPE configurations because not yet analyzed by NVD.