CVE-2024-53981CWE-770

python-multipart has a Denial of service (DoS) via deformation `multipart/form-data` boundary

High · published December 2, 2024

CVSS v3.1
7.5
EPSS
1%
Percentile
49.8
In the wild
Unconfirmed
What it is

python-multipart is a streaming multipart parser for Python. When parsing form data, python-multipart skips line breaks (CR \r or LF \n) in front of the first boundary and any tailing bytes after the last boundary. This happens one byte at a time and emits a log event each time, which may cause excessive logging for certain inputs. An attacker could abuse this by sending a malicious request with lots of data before the first or after the last boundary, causing high CPU load and stalling the processing thread for a significant amount of time. In case of ASGI application, this could stall the event loop and prevent other requests from being processed, resulting in a denial of service (DoS). This vulnerability is fixed in 0.0.18.

The record
Technical detail
CVSS v3.1
7.5 · HIGH
Vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
CVSS v4.0
Not supplied
EPSS
0.00635 · 49.8th percentile
Weakness
CWE-770 · Allocation of Resources Without Limits or Throttling
Published
2024-12-02T15:57Z
EPSS history
Timeline
  • 02 DEC 15:57Z
    python-multipart has a Denial of service (DoS) via deformation `multipart/form-data` boundary
    cvelistv5