{"id":"CVE-2024-53981","state":"PUBLISHED","title":"python-multipart has a Denial of service (DoS) via deformation `multipart/form-data` boundary","description":"python-multipart is a streaming multipart parser for Python. When parsing form data, python-multipart skips line breaks (CR \\r or LF \\n) in front of the first boundary and any tailing bytes after the last boundary. This happens one byte at a time and emits a log event each time, which may cause excessive logging for certain inputs. An attacker could abuse this by sending a malicious request with lots of data before the first or after the last boundary, causing high CPU load and stalling the processing thread for a significant amount of time. In case of ASGI application, this could stall the event loop and prevent other requests from being processed, resulting in a denial of service (DoS). This vulnerability is fixed in 0.0.18.","publishedAt":"2024-12-02T15:57:50.232Z","updatedAt":"2024-12-02T19:59:14.830Z","severity":{"score":7.5,"label":"High","version":"3.1","vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H","source":"GitHub_M"},"assigner":"GitHub_M","products":["Kludex python-multipart"],"affected":[{"vendor":"Kludex","product":"python-multipart","versions":[{"version":"< 0.0.18","status":"affected"}]}],"references":["https://github.com/Kludex/python-multipart/security/advisories/GHSA-59g5-xgcq-4qw3","https://github.com/Kludex/python-multipart/commit/c4fe4d3cebc08c660e57dd709af1ffa7059b3177"],"weaknesses":["CWE-770"],"ingestedAt":"2026-10-29T20:08:04.920Z","source":{"repository":"CVEProject/cvelistV5","path":"cves/2024/53xxx/CVE-2024-53981.json","commit":"556c9d3a8cd17e218bb8e452ba7cd619a384ff47"},"raw":{"dataType":"CVE_RECORD","dataVersion":"5.1","cveMetadata":{"cveId":"CVE-2024-53981","state":"PUBLISHED","datePublished":"2024-12-02T15:57:50.232Z","dateUpdated":"2024-12-02T19:59:14.830Z","assignerShortName":"GitHub_M","assignerOrgId":"a0819718-46f1-4df5-94e2-005712e83aaa","dateReserved":"2024-11-25T23:14:36.379Z"},"containers":{"cna":{"title":"python-multipart has a Denial of service (DoS) via deformation `multipart/form-data` boundary","descriptions":[{"lang":"en","value":"python-multipart is a streaming multipart parser for Python. When parsing form data, python-multipart skips line breaks (CR \\r or LF \\n) in front of the first boundary and any tailing bytes after the last boundary. This happens one byte at a time and emits a log event each time, which may cause excessive logging for certain inputs. An attacker could abuse this by sending a malicious request with lots of data before the first or after the last boundary, causing high CPU load and stalling the processing thread for a significant amount of time. In case of ASGI application, this could stall the event loop and prevent other requests from being processed, resulting in a denial of service (DoS). This vulnerability is fixed in 0.0.18."}],"affected":[{"vendor":"Kludex","product":"python-multipart","versions":[{"version":"< 0.0.18","status":"affected"}]}],"references":[{"url":"https://github.com/Kludex/python-multipart/security/advisories/GHSA-59g5-xgcq-4qw3","name":"https://github.com/Kludex/python-multipart/security/advisories/GHSA-59g5-xgcq-4qw3","tags":["x_refsource_CONFIRM"]},{"url":"https://github.com/Kludex/python-multipart/commit/c4fe4d3cebc08c660e57dd709af1ffa7059b3177","name":"https://github.com/Kludex/python-multipart/commit/c4fe4d3cebc08c660e57dd709af1ffa7059b3177","tags":["x_refsource_MISC"]}],"metrics":[{"cvssV3_1":{"attackComplexity":"LOW","attackVector":"NETWORK","availabilityImpact":"HIGH","baseScore":7.5,"baseSeverity":"HIGH","confidentialityImpact":"NONE","integrityImpact":"NONE","privilegesRequired":"NONE","scope":"UNCHANGED","userInteraction":"NONE","vectorString":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H","version":"3.1"}}],"problemTypes":[{"descriptions":[{"cweId":"CWE-770","lang":"en","description":"CWE-770: Allocation of Resources Without Limits or Throttling","type":"CWE"}]}],"providerMetadata":{"shortName":"GitHub_M","orgId":"a0819718-46f1-4df5-94e2-005712e83aaa","dateUpdated":"2024-12-02T15:57:50.232Z"},"source":{"advisory":"GHSA-59g5-xgcq-4qw3","discovery":"UNKNOWN"}},"adp":[{"title":"CISA ADP Vulnrichment","affected":[{"vendor":"kludex","product":"python-multipart","defaultStatus":"unknown","versions":[{"version":"0","status":"affected","lessThan":"0.0.18","versionType":"custom"}],"cpes":["cpe:2.3:a:kludex:python-multipart:*:*:*:*:*:*:*:*"]}],"metrics":[{"other":{"type":"ssvc","content":{"timestamp":"2024-12-02T19:57:03.991027Z","id":"CVE-2024-53981","options":[{"Exploitation":"none"},{"Automatable":"yes"},{"Technical Impact":"partial"}],"role":"CISA Coordinator","version":"2.0.3"}}}],"providerMetadata":{"shortName":"CISA-ADP","orgId":"134c704f-9b21-4f2e-91b3-4a467353bcc0","dateUpdated":"2024-12-02T19:59:14.830Z"}}]}}}