CVE-2026-113872
WysokieCVSS 7.5Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 37 - wyżej niż 37% wszystkich znanych CVE
Streszczenie
multer to middleware Node.js obsługujący przesyłanie plików multipart/form-data. W wersjach od 2.0.0 przed 2.5.0, gdy multer jest skonfigurowany z asynchronicznym fileFilter, pojedyncze żądanie może spowodować awarię procesu Node.js. Jeśli żądanie zostanie przerwane, gdy asynchroniczny fileFilter oczekuje, późniejsze wywołanie zwrotne wznawia strumień parsowania, który multer już zniszczył, a parser emituje błąd na strumieniu bez nasłuchiwacza błędów, co kończy proces. Podatność naprawiono w multer 2.5.0.
Ocena ryzyka
Pojedyncze, celowo przerwane żądanie może doprowadzić do zatrzymania procesu Node.js, powodując odmowę usługi dla całej aplikacji. Dotyczy to każdej aplikacji używającej multer z asynchronicznym fileFilter, niezależnie od silnika przechowywania.
Rekomendacja
Zaktualizuj multer do wersji 2.5.0 lub nowszej. Jako obejście użyj synchronicznego fileFilter.
Inne podatności w multer
Zobacz wszystkie- CVE-2026-88932Średnie
multer, middleware Node.js do obsługi uploadów multipart/form-data, w wersjach 2.2.0–2.3.0 nie usuwa plików zapisanych po zakończeniu czyszczenia po przerwanym uploadzie z użyciem disk storage. Każdy przerwany upload może pozostawić osierocony plik na dysku.
- CVE-2026-82333Wysokie
Podatność w multer (middleware dla Node.js) przed wersją 2.3.0. Specjalnie spreparowane żądanie multipart z dwoma polami może zablokować pętlę zdarzeń, powodując odmowę usługi. Wersja 2.3.0 dodaje opcję fieldArrayIndexLimit, która odrzuca zbyt duże indeksy tablic.
- CVE-2026-77078Wysokie
multer to oprogramowanie pośredniczące do obsługi multipart/form-data w Node.js. Małe żądanie multipart zawierające dwa specjalnie spreparowane nazwy pól tekstowych może spowodować nieprzechwycony błąd RangeError (Invalid array length), który kończy proces Node.js. Pierwsze pole używa bardzo dużego numerycznego indeksu tablicy, aby przydzielić tablicę rzadką o maksymalnej długości, a drugie pole następnie wypycha poza tę długość, co powoduje wyjątek w zależności append-field i nie jest przechwytywane przez multer. Wszystkie wersje przed 2.3.0 są dotknięte, a problem jest zdalnie wyzwalanym atakiem DoS. Problem jest naprawiony w multer 2.3.0. Zaktualizuj do multer 2.3.0, aby zaradzić.
- CVE-2026-77063Niskie
multer przed wersją 2.3.0 zawiera podatność na wyścig (race condition) w obsłudze strumienia plików, gdy używany jest asynchroniczny fileFilter wraz z limitem fileSize. Pozwala to na obejście odrzucenia pliku przekraczającego limit rozmiaru.
- CVE-2026-77037Wysokie
multer to oprogramowanie pośredniczące do obsługi multipart/form-data w Node.js. W wersji 2.2.0, gdy przesyłanie na dysk jest przerwane lub obcięte przed zakończeniem strumienia zapisu, silnik pamięci dyskowej multer usuwa widoczny plik, ale nie zamyka bazowego deskryptora pliku zapisu, pozostawiając usunięty, ale wciąż otwarty deskryptor. Zdalny atakujący mający dostęp do trasy przesyłania z wbudowanym magazynem dyskowym może wysyłać powtarzające się przerwane lub uszkodzone przesyłania multipart, każde z nich wycieka deskryptor pliku i zatrzymuje bloki dysku aż do zakończenia procesu, co może wyczerpać zasoby i spowodować DoS. Problem jest naprawiony w multer 2.3.0, który zamyka docelowy strumień zapisu przy nieprawidłowym zakończeniu źródła i opóźnia czyszczenie do zamknięcia strumienia. Zaktualizuj do multer 2.3.0, aby zaradzić.
- CVE-2026-5038Średnie
Wersje multer od 2.0.0-alpha.1 do 2.1.1 oraz 3.0.0-alpha.1 są podatne na atak typu Denial of Service przy użyciu diskStorage. Przerwane lub źle sformatowane przesyłki multipart pozostawiają osierocone częściowe pliki na dysku, co może prowadzić do wyczerpania przestrzeni dyskowej.
- CVE-2026-5079Wysokie
Wersje multer od 1.0.0 do 2.1.1 oraz 3.0.0-alpha.1 są podatne na atak typu Denial of Service poprzez głęboko zagnieżdżone nazwy pól w danych formularza multipart. Atakujący może wykorzystać to, aby zmusić system do alokacji głęboko zagnieżdżonych struktur obiektów, co prowadzi do zużycia CPU i pamięci.
- CVE-2026-3520Wysokie
Podatność w bibliotece Multer (node.js) przed wersją 2.1.1 umożliwia atakującemu wywołanie odmowy usługi (DoS) poprzez wysłanie złośliwych żądań, co może prowadzić do przepełnienia stosu.
- CVE-2026-3304Wysokie
Multer to oprogramowanie pośredniczące dla Node.js do obsługi danych wieloczęściowych. Podatność w wersjach przed 2.1.0 umożliwia atakującemu wywołanie odmowy usługi (DoS) poprzez wysyłanie nieprawidłowo sformułowanych żądań, co może prowadzić do wyczerpania zasobów.
- CVE-2026-2359Wysokie
Multer to middleware Node.js do obsługi `multipart/form-data`. Podatność w wersjach przed 2.1.0 umożliwia atakującemu wywołanie odmowy usługi (DoS) poprzez zerwanie połączenia podczas przesyłania pliku, co może prowadzić do wyczerpania zasobów.
Oryginalny opis (angielski, źródło NVD)
multer is a middleware for Node.js that handles multipart/form-data file uploads. In versions from 2.0.0 before 2.5.0, when multer is configured with an asynchronous fileFilter, a single request can crash the Node.js process. If the request is aborted while one file's asynchronous fileFilter is still pending, the pending callback later resumes a parsing stream that multer has already torn down, and the underlying parser emits an error on a stream that no longer has an error listener, which Node raises as an unhandled error event so the process exits. Any application using multer with an asynchronous fileFilter is affected regardless of storage engine, while uploads using a synchronous fileFilter are not affected. The issue is fixed in multer 2.5.0, and users should upgrade to 2.5.0 or later. As a workaround, use a synchronous fileFilter.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

