multipart представляет собой быстрый многочастный/форм-форм-пазер данных для питона. До 1.2.2, 1.3.1 и 1.4.0-dev функция parse_options_head…
multipart представляет собой быстрый многочастный/форм-форм-пазер данных для питона. До 1.2.2, 1.3.1 и 1.4.0-dev функция parse_options_header() в multipart.py использует регулярное выражение с неоднозначным чередованием, которое может вызвать экспоненциальное обратное отслеживание (ReDoS) при анализе злонамеренно созданных HTTP или многосерийных заголовков сегмента. Это может быть использовано для атак отказа в обслуживании (DoS) против веб-приложений, использующих эту библиотеку для разбора закладок или потоков данных multipart/form-data. Выпуск зафиксирован в 1.2.2, 1.3.1 и 1.4.0-dev.
Продукт использует регулярное выражение с неэффективной, возможно экспоненциальной вычислительной сложностью в худшем случае, что ведёт к избыточному потреблению ресурсов CPU.
https://cwe.mitre.org/data/definitions/1333.html →Открыть в коллекции CWE →Злоумышленник может реализовать атаку на программу, использующую неэффективную реализацию регулярных выражений (Regex), подобрав входные данные, приводящие к крайне неблагоприятному сценарию работы Regex. Типичный крайний сценарий характеризуется экспоненциальным временем работы относительно размера входных данных. Это объясняется тем, что большинство реализаций использует недетерминированный конечный автомат (NFA) в качестве основы алгоритма Regex, поскольку NFA допускает обратный просмотр и тем самым поддерживает более сложные регулярные выражения.
https://capec.mitre.org/data/definitions/492.html →Открыть в коллекции CAPEC →