CVE-2024-47874

NameCVE-2024-47874
DescriptionStarlette is an Asynchronous Server Gateway Interface (ASGI) framework/toolkit. Prior to version 0.40.0, Starlette treats `multipart/form-data` parts without a `filename` as text form fields and buffers those in byte strings with no size limit. This allows an attacker to upload arbitrary large form fields and cause Starlette to both slow down significantly due to excessive memory allocations and copy operations, and also consume more and more memory until the server starts swapping and grinds to a halt, or the OS terminates the server process with an OOM error. Uploading multiple such requests in parallel may be enough to render a service practically unusable, even if reasonable request size limits are enforced by a reverse proxy in front of Starlette. This Denial of service (DoS) vulnerability affects all applications built with Starlette (or FastAPI) accepting form requests. Verison 0.40.0 fixes this issue.
SourceCVE (at NVD; CERT, LWN, oss-sec, fulldisc, Red Hat, Ubuntu, Gentoo, SUSE bugzilla/CVE, GitHub advisories/code/issues, web search, more)
Debian Bugs1085295

Vulnerable and fixed packages

The table below lists information on source packages.

Source PackageReleaseVersionStatus
starlette (PTS)bullseye0.14.1-1vulnerable
bookworm0.26.1-1vulnerable
trixie0.41.3-2fixed
sid0.46.1-1fixed

The information below is based on the following data on fixed versions.

PackageTypeReleaseFixed VersionUrgencyOriginDebian Bugs
starlettesource(unstable)0.41.0-11085295

Notes

[bookworm] - starlette <no-dsa> (Minor issue)
[bullseye] - starlette <postponed> (Minor issue; can be fixed in next update)
https://github.com/encode/starlette/security/advisories/GHSA-f96h-pmfr-66vw
https://github.com/encode/starlette/commit/fd038f3070c302bff17ef7d173dbb0b007617733 (0.40.0)

Search for package or bug name: Reporting problems