CVE-2026-74866
ŚrednieCVSS 5.8Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 9 - wyżej niż 9% wszystkich znanych CVE
Streszczenie
@fastify/busboy to parser multipart form-data dla Node.js. Jego parser nagłówków części dzieli linie tylko na sekwencję CRLF, więc pojedynczy CR lub LF w nagłówku nie jest traktowany jako znak nowej linii i jest przekazywany do nazwy pliku i nazwy pola. Atakujący może wstrzyknąć znaki kontrolne, co prowadzi do zanieczyszczenia nazw plików, fałszowania logów lub wstrzyknięcia nagłówków. Wersje do 3.2.1 są podatne, poprawka w 3.2.2.
Ocena ryzyka
Ryzyko wstrzyknięcia znaków kontrolnych do systemów przetwarzających dane, co może prowadzić do manipulacji plikami, logami lub nagłówkami HTTP.
Rekomendacja
Należy zaktualizować @fastify/busboy do wersji 3.2.2 lub nowszej, a także zaktualizować zależności w @fastify/multipart.
Inne podatności w @fastify/busboy
Zobacz wszystkie- CVE-2026-19484Wysokie
@fastify/busboy w wersjach 3.1.0 do 3.2.0 jest podatny na atak DoS polegający na zablokowaniu pętli zdarzeń Node.js przez wysłanie żądania multipart z granicą o określonej długości. Atakujący może wysłać pojedyncze małe żądanie, które obciąża jeden rdzeń procesora i uniemożliwia obsługę innych żądań. Problem naprawiono w wersji 3.2.1.
- CVE-2026-19481Wysokie
@fastify/busboy w wersjach 1.0.0 do 3.2.0 jest podatny na awarię parsera przez wysłanie nagłówka części o nazwie będącej właściwością dziedziczoną, taką jak __proto__ lub constructor. Może to spowodować wyjątek TypeError i w niektórych przypadkach zakończenie procesu Node.js, prowadząc do nieuwierzytelnionego ataku DoS. Problem naprawiono w wersji 3.2.1.
Oryginalny opis (angielski, źródło NVD)
@fastify/busboy is a multipart form-data parser for Node.js. Its multipart part-header parser splits header lines only on the two-byte carriage-return line-feed sequence, so a lone carriage return or line feed embedded in a part header is not treated as a line break and is carried verbatim into the parsed Content-Disposition filename and field name handed to the application. An attacker who uploads a file whose filename or field name contains a bare carriage return or line feed can inject control characters into consumers that trust the parser to return clean values, enabling filesystem filename pollution, log forging, or header injection when the value is forwarded to a carriage-return-sensitive sink. All versions of @fastify/busboy up to and including 3.2.1 are affected. The issue is fixed in version 3.2.2, which rejects any header line that still contains a bare carriage return or line feed. Users should upgrade to 3.2.2, and consumers such as @fastify/multipart should bump their @fastify/busboy dependency to pull in the fix.

