Update dependency python-multipart to >=0.0.26,<0.0.27 [SECURITY]#71
Open
renovate[bot] wants to merge 1 commit intomainfrom
Open
Update dependency python-multipart to >=0.0.26,<0.0.27 [SECURITY]#71renovate[bot] wants to merge 1 commit intomainfrom
renovate[bot] wants to merge 1 commit intomainfrom
Conversation
d08bc50 to
072b070
Compare
072b070 to
49d98e0
Compare
49d98e0 to
1698f9c
Compare
1698f9c to
e741079
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This PR contains the following updates:
>=0.0.20,<0.0.21→>=0.0.26,<0.0.27GitHub Vulnerability Alerts
CVE-2026-24486
Summary
A Path Traversal vulnerability exists when using non-default configuration options
UPLOAD_DIRandUPLOAD_KEEP_FILENAME=True. An attacker can write uploaded files to arbitrary locations on the filesystem by crafting a malicious filename.Details
When
UPLOAD_DIRis set andUPLOAD_KEEP_FILENAMEisTrue, the library constructs the file path usingos.path.join(file_dir, fname). Due to the behavior ofos.path.join(), if the filename begins with a/, all preceding path components are discarded:This allows an attacker to bypass the intended upload directory and write files to arbitrary paths.
Affected Configuration
Projects are only affected if all of the following are true:
UPLOAD_DIRis setUPLOAD_KEEP_FILENAMEis set to TrueMAX_MEMORY_FILE_SIZE(triggering a flush to disk)The default configuration is not vulnerable.
Impact
Arbitrary file write to attacker-controlled paths on the filesystem.
Mitigation
Upgrade to version 0.0.22, or avoid using
UPLOAD_KEEP_FILENAME=Truein project configurations.Severity
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:H/A:LCVE-2026-40347
Summary
A denial of service vulnerability exists when parsing crafted
multipart/form-datarequests with large preamble or epilogue sections.Details
Two inefficient multipart parsing paths could be abused with attacker-controlled input.
Before the first multipart boundary, the parser handled leading CR and LF bytes inefficiently while searching for the start of the first part. After the closing boundary, the parser continued processing trailing epilogue data instead of discarding it immediately. As a result, parsing time could grow with the size of crafted data placed before the first boundary or after the closing boundary.
Impact
An attacker can send oversized malformed multipart bodies that consume excessive CPU time during request parsing, reducing request-handling capacity and delaying legitimate requests. This issue degrades availability but does not typically result in a complete denial of service for the entire application.
Mitigation
Upgrade to version
0.0.26or later, which skips ahead to the next boundary candidate when processing leading CR/LF data and immediately discards epilogue data after the closing boundary.Severity
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:LRelease Notes
Kludex/python-multipart (python-multipart)
v0.0.26Compare Source
v0.0.25Compare Source
File#143.FormParserclasses #257.UPLOAD_DELETE_TMPtoFormParserconfig #254.field_endfor trailing bare field names on finalize #230.v0.0.24Compare Source
chunk_sizeinparse_form()#244.v0.0.23Compare Source
trust_x_headersparameter andX-File-Namefallback #196.QuerystringParser._internal_write#229.__init__.py#227.v0.0.22Compare Source
File9433f4b.v0.0.21Compare Source
Configuration
📅 Schedule: (UTC)
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR was generated by Mend Renovate. View the repository job log.