Description
Python-Multipart is a streaming multipart parser for Python. Prior to 0.0.30, parse_options_header parsed Content-Disposition (and Content-Type) headers with email.message.Message, which transparently applies RFC 2231/5987 decoding. The extended parameter syntax (filename*=charset'lang'value, name*=..., and the filename*0/filename*1 continuation form) is decoded and surfaced under the bare filename/name key, and overrides the plain parameter when both are present. RFC 7578 §4.2 explicitly forbids the filename* form in multipart/form-data. Components that follow RFC 7578, or that do not implement RFC 2231/5987 decoding for multipart/form-data (WAFs, proxies, gateways), may interpret such a header differently. An attacker can exploit that difference to smuggle a different field name or filename past an upstream inspector to the backend. This vulnerability is fixed in 0.0.30.
Severity (CVSS)
| Base score | 3.7 |
|---|---|
| Severity | Low |
| Version | CVSS 3.1 |
| Vector | CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:L/A:N |
| Provided by | CNA |
Weaknesses
- CWE-20 — CWE-20: Improper Input Validation
- CWE-436 — CWE-436: Interpretation Conflict
Affected products
| Vendor | Product | Versions |
|---|---|---|
| Kludex | python-multipart | < 0.0.30 |
References
- https://github.com/Kludex/python-multipart/security/advisories/GHSA-vffw-93wf-4j4q (x_refsource_CONFIRM)
Generated from the official CVE List on 23 Jun 2026 10:05 UTC.