Advisory Database
  • Advisories
  • Dependency Scanning
  1. pypi
  2. ›
  3. tornado
  4. ›
  5. CVE-2026-49854

CVE-2026-49854: Tornado has out-of-bounds memory access via C extension

June 12, 2026

Tornado’s optional native extension tornado.speedups implements websocket_mask without validating that the mask argument is exactly four bytes long. The C function reads four bytes from mask unconditionally, even when Python passes a shorter byte string. This can read beyond the provided buffer, exposing up to 3 bytes of uninitialized memory.

The behavior is reachable from Tornado’s XSRF token decoder when xsrf_cookies=True and the native extension is active.

References

  • github.com/advisories/GHSA-cx3h-4qpv-8hc9
  • github.com/tornadoweb/tornado/releases/tag/v6.5.6
  • github.com/tornadoweb/tornado/security/advisories/GHSA-cx3h-4qpv-8hc9
  • nvd.nist.gov/vuln/detail/CVE-2026-49854

Code Behaviors & Features

Detect and mitigate CVE-2026-49854 with GitLab Dependency Scanning

Secure your software supply chain by verifying that all open source dependencies used in your projects contain no disclosed vulnerabilities. Dependency Scanning using SBOM also detects vulnerabilities from proprietary advisories that this site does not include. Learn more about Dependency Scanning using SBOM →

Affected versions

All versions before 6.5.6

Fixed versions

  • 6.5.6

Solution

Upgrade to version 6.5.6 or above.

Impact 3.7 LOW

CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:N/A:N

Learn more about CVSS

Weakness

  • CWE-126: Buffer Over-read

Source file

pypi/tornado/CVE-2026-49854.yml

Spotted a mistake? Edit the file on GitLab.

  • Site Repo
  • About GitLab
  • Terms
  • Privacy Statement
  • Contact

Page generated Sun, 08 Nov 2026 00:15:30 +0000.