{
  "schema_version": "1.4.0",
  "id": "GHSA-p24m-863f-fm6q",
  "modified": "2024-10-28T14:38:20Z",
  "published": "2023-02-15T17:42:42Z",
  "aliases": [
    "CVE-2023-25578"
  ],
  "summary": "Denial of service vulnerability when parsing multipart request body",
  "details": "### Summary\n\nThe request body parsing in `starlite` allows a potentially unauthenticated\n attacker to consume a large amount of CPU time and RAM.\n\n### Details\n\nThe multipart body parser processes an unlimited number of file parts.\nThe multipart body parser processes an unlimited number of field parts.\n\n### Impact\n\nThis is a remote, potentially unauthenticated Denial of Service vulnerability.\n\nThis vulnerability affects applications with a request handler that accepts\n a `Body(media_type=RequestEncodingType.MULTI_PART)`.\n\nThe large amount of CPU time required for processing requests can block all\n available worker processes and significantly delay or slow down the processing\n of legitimate user requests.\nThe large amount of RAM accumulated while processing requests can lead to\n Out-Of-Memory kills.\nComplete DoS is achievable by sending many concurrent multipart requests in a\n loop.\n",
  "severity": [
    {
      "type": "CVSS_V3",
      "score": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H"
    },
    {
      "type": "CVSS_V4",
      "score": "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"
    }
  ],
  "affected": [
    {
      "package": {
        "ecosystem": "PyPI",
        "name": "starlite"
      },
      "ranges": [
        {
          "type": "ECOSYSTEM",
          "events": [
            {
              "introduced": "0"
            },
            {
              "fixed": "1.51.2"
            }
          ]
        }
      ]
    }
  ],
  "references": [
    {
      "type": "WEB",
      "url": "https://github.com/starlite-api/starlite/security/advisories/GHSA-p24m-863f-fm6q"
    },
    {
      "type": "ADVISORY",
      "url": "https://nvd.nist.gov/vuln/detail/CVE-2023-25578"
    },
    {
      "type": "WEB",
      "url": "https://github.com/starlite-api/starlite/commit/9674fe803628f986c03fe60769048cbc55b5bf83"
    },
    {
      "type": "WEB",
      "url": "https://github.com/pypa/advisory-database/tree/main/vulns/starlite/PYSEC-2023-49.yaml"
    },
    {
      "type": "PACKAGE",
      "url": "https://github.com/starlite-api/starlite"
    },
    {
      "type": "WEB",
      "url": "https://github.com/starlite-api/starlite/releases/tag/v1.51.2"
    }
  ],
  "database_specific": {
    "cwe_ids": [
      "CWE-400",
      "CWE-770"
    ],
    "severity": "HIGH",
    "github_reviewed": true,
    "github_reviewed_at": "2023-02-15T17:42:42Z",
    "nvd_published_at": "2023-02-15T15:15:00Z"
  }
}