tornado: multipart split() creates huge temp list before max_parts check -> memory amplification DoS (httputil.py:34) — GHSA-8423-8FGW-73VQ
GitHub · GitHub · GHSA-8423-8FGW-73VQ
ID
GHSA-8423-8FGW-73VQ
GHSA-8423-8FGW-73VQ
Date
Source
GitHub
GitHub
Fournisseur
GitHub
GitHub
Risque
moyen
moyen
CVSS
6.9
6.9
Résumé
## Description ### Summary `parse_multipart_form_data` (httputil.py:34) calls `data.split(b"--"+boundary+b"\r\n")` **before** the `max_parts` check (:35). A 600KB body with 100k parts creates a 100k-element transient list first, then rejects transient memory amplification (each split element is a copy). Pre-auth HTTP DoS. ### Root cause ```python parts = data[:final_boundary_index].split(b"--" + boundary + b"\r\n")…
Chronologie
- Publié par la source
- 2026-09-01
Contexte de risque
- Niveau de gravité ou de risque signalé : moyen.
- Score CVSS signalé : 6.9 sur 10.
- Vérifiez l’exposition du produit ou de la famille concernée : pip: tornado.
Produit
pip: tornado
Que faire
Mesures générales et prudentes (vérifiez les détails dans la source officielle) :
- Évaluez l’exposition et planifiez la remédiation selon le risque et l’environnement.
- Identifiez les versions affectées dans votre inventaire et vérifiez si vous êtes concerné.
- Appliquez les correctifs/mises à jour du fournisseur ou les atténuations recommandées.
- Consultez l’avis officiel pour les versions affectées et les étapes de remédiation.
Avis officiel
Preuves et provenance
- ID canonique de l’avis
- GHSA-8423-8FGW-73VQ
- Source
- GitHub
- Fournisseur
- GitHub
- Publié par la source
- 2026-09-01
- Dernière activité de la source
- 2026-09-01
- Organisé par
- hlukh.ch
Avis associés et connexions
Ces avis sont reliés par des signaux communs de CVE, produit, fournisseur, source ou période.