multipart — это быстрый анализатор данных multipart/form для Python. До версий 1.2.2, 1.3.1 и 1.4.0-dev функция parse_options_header() в multipart.py использует регулярное выражение с неоднозначным чередованием, что может вызвать экспоненциальный возврат (ReDoS) при анализе злонамеренно созданных заголовков HTTP или составных сегментов. Это может быть использовано для атак типа «отказ в обслуживании» (DoS) против веб-приложений, использующих эту библиотеку для анализа заголовков запросов или потоков составных/формированных данных.
Проблема исправлена в версиях 1.2.2, 1.3.1 и 1.4.0-dev.
Показать оригинальное описание (EN)
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.
Характеристики атаки
Последствия
Строка CVSS v3.1