GHSA-p24m-863f-fm6q

Suggest an improvement
Source
https://github.com/advisories/GHSA-p24m-863f-fm6q
Import Source
https://github.com/github/advisory-database/blob/main/advisories/github-reviewed/2023/02/GHSA-p24m-863f-fm6q/GHSA-p24m-863f-fm6q.json
JSON Data
https://api.test.osv.dev/v1/vulns/GHSA-p24m-863f-fm6q
Aliases
Related
Published
2023-02-15T17:42:42Z
Modified
2024-10-28T14:56:31.965666Z
Severity
  • 7.5 (High) CVSS_V3 - CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H CVSS Calculator
  • 8.7 (High) CVSS_V4 - CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N CVSS Calculator
Summary
Denial of service vulnerability when parsing multipart request body
Details

Summary

The request body parsing in starlite allows a potentially unauthenticated attacker to consume a large amount of CPU time and RAM.

Details

The multipart body parser processes an unlimited number of file parts. The multipart body parser processes an unlimited number of field parts.

Impact

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.

Database specific
{
    "nvd_published_at": "2023-02-15T15:15:00Z",
    "cwe_ids": [
        "CWE-400",
        "CWE-770"
    ],
    "severity": "HIGH",
    "github_reviewed": true,
    "github_reviewed_at": "2023-02-15T17:42:42Z"
}
References

Affected packages

PyPI / starlite

Package

Affected ranges

Type
ECOSYSTEM
Events
Introduced
0Unknown introduced version / All previous versions are affected
Fixed
1.51.2

Affected versions

0.*

0.0.1a0
0.1.0b1
0.1.0
0.1.1
0.1.2
0.1.3
0.1.4
0.1.5
0.1.6
0.2.0
0.2.1
0.3.0
0.4.0
0.4.1
0.4.2
0.4.3
0.5.0
0.6.0
0.7.0
0.7.1
0.7.2

1.*

1.0.0
1.0.1
1.0.2
1.0.3
1.0.4
1.0.5
1.1.0
1.1.1
1.2.0
1.2.2
1.2.3
1.2.4
1.2.5
1.3.0
1.3.1
1.3.2
1.3.3
1.3.4
1.3.5
1.3.6
1.3.7
1.3.8
1.3.9
1.4.0
1.4.1
1.4.2
1.5.0
1.5.1
1.5.2
1.5.3
1.5.4
1.6.0
1.6.1
1.6.2
1.7.0
1.7.1
1.7.2
1.7.3
1.8.0
1.8.1
1.9.0
1.9.1
1.10.0
1.10.1
1.11.0
1.11.1
1.12.0
1.13.0
1.13.1
1.14.0
1.14.1
1.14.2
1.15.0
1.16.0
1.16.1
1.16.2
1.17.0
1.17.1
1.17.2
1.18.0
1.18.1
1.19.0
1.20.0
1.21.0
1.21.1
1.21.2
1.23.0
1.23.1
1.24.0
1.25.0
1.26.0
1.26.1
1.27.0
1.28.0
1.28.1
1.29.0
1.30.0
1.31.0
1.32.0
1.33.0
1.34.0
1.35.0
1.35.1
1.36.0
1.37.0
1.38.0
1.39.0
1.40.0
1.40.1
1.41.0
1.42.0
1.43.0
1.43.1
1.44.0
1.45.0
1.45.1
1.46.0
1.47.0
1.48.0
1.48.1
1.49.0
1.50.0
1.50.1
1.50.2
1.51.0
1.51.1