Retour à la liste

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
Date
Source
GitHub
Fournisseur
GitHub
Risque
moyen
CVSS
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.