CVE-2026-49854
Full vulnerability record from the local CVENow database.
Description
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.
Severity
MEDIUM
CVSS score
5.3
(v3.1)
Vulnerability status
Deferred
Source identifier
Published
2026-07-14 21:17:02.300000
Last modified
2026-10-24 21:10:00.130000
View original CVE JSON
{
"id": "CVE-2026-49854",
"sourceIdentifier": "[email protected]",
"published": "2026-07-14T21:17:02.300",
"lastModified": "2026-10-24T21:10:00.130",
"vulnStatus": "Deferred",
"cveTags": [],
"descriptions": [
{
"lang": "en",
"value": "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."
},
{
"lang": "es",
"value": "Tornado es un framework web de Python y una biblioteca de red asíncrona. Antes de la 6.5.6, la extensión nativa opcional tornado.speedups implementaba websocket_mask sin validar que el argumento mask fuera exactamente de cuatro bytes, permitiendo que la función C leyera hasta tres bytes más allá del búfer proporcionado cuando se accedía a ella a través de la decodificación de tokens XSRF de Tornado con la extensión nativa activa. Este problema se solucionó en la versión 6.5.6."
}
],
"affected": [
{
"source": "[email protected]",
"affectedData": [
{
"vendor": "tornadoweb",
"product": "tornado",
"versions": [
{
"version": "< 6.5.6",
"status": "affected"
}
]
}
]
}
],
"metrics": {
"cvssMetricV31": [
{
"source": "[email protected]",
"type": "Secondary",
"cvssData": {
"version": "3.1",
"vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N",
"baseScore": 5.3,
"baseSeverity": "MEDIUM",
"attackVector": "NETWORK",
"attackComplexity": "LOW",
"privilegesRequired": "NONE",
"userInteraction": "NONE",
"scope": "UNCHANGED",
"confidentialityImpact": "LOW",
"integrityImpact": "NONE",
"availabilityImpact": "NONE"
},
"exploitabilityScore": 3.9,
"impactScore": 1.4
}
],
"ssvcV203": [
{
"source": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
"ssvcData": {
"timestamp": "2026-07-15T13:23:13.452445Z",
"id": "CVE-2026-49854",
"options": [
{
"exploitation": "none"
},
{
"automatable": "yes"
},
{
"technicalImpact": "partial"
}
],
"role": "CISA Coordinator",
"version": "2.0.3"
}
}
]
},
"weaknesses": [
{
"source": "[email protected]",
"type": "Secondary",
"description": [
{
"lang": "en",
"value": "CWE-126"
}
]
}
],
"references": [
{
"url": "https://github.com/tornadoweb/tornado/commit/96dc88c2a05705287856b2cd6b4b4034f9a6aaac",
"source": "[email protected]"
},
{
"url": "https://github.com/tornadoweb/tornado/pull/3626",
"source": "[email protected]"
},
{
"url": "https://github.com/tornadoweb/tornado/releases/tag/v6.5.6",
"source": "[email protected]"
},
{
"url": "https://github.com/tornadoweb/tornado/security/advisories/GHSA-cx3h-4qpv-8hc9",
"source": "[email protected]"
}
]
}