---
id: CVE-2026-28356
title: multipart is a fast multipart/form-data parser for python
summary: >-
  multipart is a fast multipart/form-data parser for python. Prior to 1.2.2,
  1.3.1 and 1.4.0-dev, the parse_options_header() function in multipart.py uses
  a regular expression with an ambiguous alternation, which can cause
  exponential back…
severity: high
cvss: 7.5
cvssVector: 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H'
cwe:
  - CWE-1333
published: '2026-03-12'
updated: '2026-07-10'
source: NVD
sourceUrl: 'https://nvd.nist.gov/vuln/detail/CVE-2026-28356'
references:
  - url: >-
      https://github.com/defnull/multipart/security/advisories/GHSA-p2m9-wcp5-6qw3
    label: security-advisories@github.com
  - url: 'https://access.redhat.com/errata/RHSA-2026:10184'
    label: 0b0ca135-0b70-47e7-9f44-1890c2a1c46c
  - url: 'https://access.redhat.com/errata/RHSA-2026:37275'
    label: 0b0ca135-0b70-47e7-9f44-1890c2a1c46c
  - url: 'https://access.redhat.com/errata/RHSA-2026:5809'
    label: 0b0ca135-0b70-47e7-9f44-1890c2a1c46c
  - url: 'https://access.redhat.com/errata/RHSA-2026:6761'
    label: 0b0ca135-0b70-47e7-9f44-1890c2a1c46c
  - url: 'https://access.redhat.com/errata/RHSA-2026:6762'
    label: 0b0ca135-0b70-47e7-9f44-1890c2a1c46c
  - url: 'https://access.redhat.com/security/cve/CVE-2026-28356'
    label: 0b0ca135-0b70-47e7-9f44-1890c2a1c46c
  - url: 'https://bugzilla.redhat.com/show_bug.cgi?id=2447059'
    label: 0b0ca135-0b70-47e7-9f44-1890c2a1c46c
  - url: >-
      https://security.access.redhat.com/data/csaf/v2/vex/2026/cve-2026-28356.json
    label: 0b0ca135-0b70-47e7-9f44-1890c2a1c46c
  - url: 'https://nvd.nist.gov/vuln/detail/CVE-2026-28356'
  - url: 'https://github.com/defnull/multipart'
tags:
  - nvd
  - osv
  - pip
epss: 0.00718
epssPercentile: 0.52426
ingestedAt: '2026-07-10T13:03:45.454Z'
aliases:
  - GHSA-p2m9-wcp5-6qw3
  - PYSEC-2026-2670
ecosystem: pip
vendor: multipart
product: multipart
affected:
  - 'multipart >= 1.3.0, < 1.3.1'
  - multipart < 1.2.2
patched:
  - multipart 1.3.1
  - multipart 1.2.2
---

## Overview

multipart is a fast multipart/form-data parser for python. Prior to 1.2.2, 1.3.1 and 1.4.0-dev, the parse_options_header() function in multipart.py uses a regular expression with an ambiguous alternation, which can cause exponential backtracking (ReDoS) when parsing maliciously crafted HTTP or multipart segment headers. This can be abused for denial of service (DoS) attacks against web applications using this library to parse request headers or multipart/form-data streams. The issue is fixed in 1.2.2, 1.3.1 and 1.4.0-dev.

## Remediation

Refer to the linked advisories for vendor-supplied fixes and affected version ranges.

## Package advisory (CVE-2026-28356)

Affected packages:

- `multipart >= 1.3.0, < 1.3.1`
- `multipart < 1.2.2`

Patched in:

- `multipart 1.3.1`
- `multipart 1.2.2`

Source: https://osv.dev/vulnerability/GHSA-p2m9-wcp5-6qw3
