CVE-2026-87908: уязвимость DoS в Node.js-библиотеке multiparty
Исследователи выявили уязвимость в multiparty — популярной Node.js-библиотеке, предназначенной для разбора тел запросов формата multipart/form-data. Проблема получила идентификатор CVE-2026-87908 и может привести к отказу в обслуживании серверного процесса.
Подробности
Уязвимы версии multiparty начиная с 2.1.0 и до 4.3.1 (не включая). При разборе отдельной части (part) multipart-запроса библиотека накапливает заголовки этой части, не ограничивая объём используемой памяти. Злоумышленнику достаточно отправить единственный запрос, в заголовках одной части которого будет очень большой объём байтов. Парсер буферизует их целиком, что приводит к исчерпанию памяти процесса и аварийному завершению сервера.
Атака не требует аутентификации: эксплуатировать уязвимость может любой, кто способен отправить HTTP-запрос на уязвимый сервис. По классификации это отказ в обслуживании (DoS) — влияния на конфиденциальность или целостность данных нет. Уязвимости присвоена оценка CVSS 7.5 (HIGH).
Что делать
Разработчики выпустили исправление в версии multiparty 4.3.1, где введено ограничение на размер накапливаемых заголовков части. Рекомендуется как можно скорее обновить зависимость:
- Выполнить обновление до multiparty 4.3.1 или более поздней версии.
- Проверить актуальность библиотеки в файлах зависимостей (package.json, package-lock.json) и в транзитивных зависимостях, поскольку multiparty может использоваться косвенно через другие пакеты.
- Если немедленное обновление невозможно, рассмотреть временные митигации на уровне инфраструктуры: ограничение размера входящих запросов на reverse proxy или балансировщике, установка лимитов памяти для процессов Node.js, а также ограничение доступа к сервису из недоверенных сетей.
Источник: CVE Project (cvelistV5)
