Starlite is an Asynchronous Server Gateway Interface (ASGI) framework. Prior to version 1.5.2, the request body parsing in `starlite` allows a potentially unauthenticated attacker to consume a large amount of CPU time and RAM. The multipart body parser processes an unlimited number of file parts and an unlimited number of field parts. This is a remote, potentially unauthenticated Denial of Service vulnerability. This vulnerability affects applications with a request handler that accepts a `Body(media_type=RequestEncodingType.MULTI_PART)`. The large amount of CPU time required for processing requests can block all available worker processes and significantly delay or slow down the processing of legitimate user requests. The large amount of RAM accumulated while processing requests can lead to Out-Of-Memory kills. Complete DoS is achievable by sending many concurrent multipart requests in a loop. Version 1.51.2 contains a patch for this issue.
References
Configurations
History
21 Nov 2024, 07:49
Type | Values Removed | Values Added |
---|---|---|
References | () https://github.com/starlite-api/starlite/commit/9674fe803628f986c03fe60769048cbc55b5bf83 - Patch | |
References | () https://github.com/starlite-api/starlite/releases/tag/v1.51.2 - Release Notes | |
References | () https://github.com/starlite-api/starlite/security/advisories/GHSA-p24m-863f-fm6q - Exploit, Vendor Advisory |
07 Nov 2023, 04:09
Type | Values Removed | Values Added |
---|---|---|
Summary | Starlite is an Asynchronous Server Gateway Interface (ASGI) framework. Prior to version 1.5.2, the request body parsing in `starlite` allows a potentially unauthenticated attacker to consume a large amount of CPU time and RAM. The multipart body parser processes an unlimited number of file parts and an unlimited number of field parts. This is a remote, potentially unauthenticated Denial of Service vulnerability. This vulnerability affects applications with a request handler that accepts a `Body(media_type=RequestEncodingType.MULTI_PART)`. The large amount of CPU time required for processing requests can block all available worker processes and significantly delay or slow down the processing of legitimate user requests. The large amount of RAM accumulated while processing requests can lead to Out-Of-Memory kills. Complete DoS is achievable by sending many concurrent multipart requests in a loop. Version 1.51.2 contains a patch for this issue. |
Information
Published : 2023-02-15 15:15
Updated : 2024-11-21 07:49
NVD link : CVE-2023-25578
Mitre link : CVE-2023-25578
CVE.ORG link : CVE-2023-25578
JSON object : View
Products Affected
starliteproject
- starlite
CWE
CWE-770
Allocation of Resources Without Limits or Throttling