CVE-2026-40347
Denial of Service in Python-Multipart via Malformed Multipart Requests
Publication date: 2026-04-18
Last updated on: 2026-04-24
Assigner: GitHub, Inc.
Description
Description
CVSS Scores
EPSS Scores
| Probability: | |
| Percentile: |
Meta Information
Affected Vendors & Products
| Vendor | Product | Version / Range |
|---|---|---|
| fastapiexpert | python-multipart | to 0.0.26 (exc) |
Helpful Resources
Exploitability
| CWE ID | Description |
|---|---|
| CWE-400 | The product does not properly control the allocation and maintenance of a limited resource. |
| CWE-834 | The product performs an iteration or loop without sufficiently limiting the number of times that the loop is executed. |
Attack-Flow Graph
AI Powered Q&A
Can you explain this vulnerability to me?
This vulnerability exists in Python-Multipart, a streaming multipart parser for Python, in versions prior to 0.0.26. It is a denial of service (DoS) vulnerability that occurs when the parser processes specially crafted multipart/form-data requests containing large preamble or epilogue sections.
The issue arises because the parser does not efficiently handle leading CR/LF data or epilogue data, which can cause it to consume excessive resources or hang. The fix in version 0.0.26 and later involves skipping ahead to the next boundary candidate when processing leading CR/LF data and immediately discarding epilogue data after the closing boundary.
How can this vulnerability impact me? :
This vulnerability can lead to a denial of service condition in applications using vulnerable versions of Python-Multipart. An attacker can send crafted multipart/form-data requests with large preamble or epilogue sections to cause the parser to consume excessive resources or become unresponsive.
As a result, the affected application or service may become slow, unresponsive, or crash, potentially disrupting normal operations.
What immediate steps should I take to mitigate this vulnerability?
To mitigate this vulnerability, upgrade Python-Multipart to version 0.0.26 or later.
The fixed versions skip ahead to the next boundary candidate when processing leading CR/LF data and immediately discard epilogue data after the closing boundary, preventing the denial of service.
How does this vulnerability affect compliance with common standards and regulations (like GDPR, HIPAA)?:
The vulnerability in Python-Multipart allows for a denial of service (DoS) attack when parsing crafted multipart/form-data requests with large preamble or epilogue sections.
Since the vulnerability impacts availability but does not affect confidentiality or integrity, it may have limited direct impact on compliance with standards like GDPR or HIPAA, which primarily focus on protecting personal data confidentiality and integrity.
However, denial of service incidents can indirectly affect compliance by disrupting service availability, which may be relevant under certain regulatory requirements that mandate system availability and resilience.
Upgrading to version 0.0.26 or later mitigates this issue by properly handling multipart data boundaries.