Skip to main content
MEDIUM

CVE-2025-54121

Starlette has possible denial-of-service vector when parsing large files in multipart forms

CVSS v3

5.3

MEDIUM

EPSS Score

0.6 %

exploit probability, as of 2026-10-19

CISA KEV

No

known exploited

Exploitation

poc

SSVC status

Get an alert for each new CVE published for starlette.

Set up CVE WatchFree account · no credit card

Affected and fixed versions

Packages from OSV.dev and products from the vendors' CSAF advisories.

version not verifiedVersions not verified: read as OSV.dev and the vendors publish them, not checked against each vendor's release list.

Packages

  • starlettePyPIall versions · fixed in 0.47.2

Vendor advisories

  • CVE-2025-54121 Red Hat Product Security95 known affected

    starlette: Starlette denial-of-service

    openshift-lightspeed/lightspeed-service-api-rhel9 as a component of OpenShift Lightspeed · rhaiis/vllm-cuda-rhel9 as a component of Red Hat AI Inference Server · rhaiis/vllm-rocm-rhel9 as a component of Red Hat AI Inference Server

Full record on NVD

Description

Starlette is a lightweight ASGI (Asynchronous Server Gateway Interface) framework/toolkit, designed for building async web services in Python. In versions 0.47.1 and below, when parsing a multi-part form with large files (greater than the default max spool size) starlette will block the main thread to roll the file over to disk. This blocks the event thread which means the application can't accept new connections. The UploadFile code has a minor bug where instead of just checking for self._in_memory, the logic should also check if the additional bytes will cause a rollover. The vulnerability is fixed in version 0.47.2.

Technical details

CVSS v3 Vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L
Published
2025-07-21
Last Modified
2026-04-15

Frequently asked questions

What is CVE-2025-54121?

Starlette is a lightweight ASGI (Asynchronous Server Gateway Interface) framework/toolkit, designed for building async web services in Python. In versions 0.47.1 and below, when parsing a multi-part form with large files (greater than the default max spool size) starlette will block the main thread to roll the file over to disk. This blocks the event thread which means the application can't accept new connections. The UploadFile code has a minor bug where instead of just checking for self._in_memory, the logic should also check if the additional bytes will cause a rollover. The vulnerability is fixed in version 0.47.2.

Is CVE-2025-54121 actively exploited?

A proof-of-concept exploit exists for CVE-2025-54121, but active exploitation has not been confirmed at this time.

What is the CVSS score for CVE-2025-54121?

CVE-2025-54121 has a CVSS v3 base score of 5.3 (MEDIUM severity), with vector string CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L.

Running starlette? Hear about its next vulnerability

CVE Watch matches each new CVE to the vendors and products you list (vendor and product, not the version) and puts it in your alerts with its KEV and EPSS status.

Already have an account? Open CVE WatchNo credit card required · No monthly cap on website lookups · 250 API requests/month