CVE-2026-85184
KrytyczneCVSS 9.1Streszczenie
W @fastify/middie w wersjach od 9.1.0 do 9.3.4, decyzja o uruchomieniu oprogramowania pośredniczącego (middleware) dla ścieżki jest podejmowana na podstawie surowego celu żądania, podczas gdy router Fastify rozwiązuje cel żądania w formie absolutnej do ścieżki przed wysłaniem. Ponieważ te dwie warstwy oceniają różne ciągi znaków, żądanie używające celu w formie absolutnej dociera do procedury obsługi trasy, podczas gdy oprogramowanie pośredniczące dla ścieżki, takie jak uwierzytelnianie lub autoryzacja, jest pomijane. Nieuwierzytelniony atakujący sieciowy może wykorzystać to do obejścia kontroli dostępu opartych na ścieżce w aplikacji Fastify, która polega na middie dla tych kontroli.
Ocena ryzyka
Ryzyko obejścia mechanizmów uwierzytelniania i autoryzacji opartych na ścieżce, co może prowadzić do nieautoryzowanego dostępu do chronionych zasobów aplikacji.
Rekomendacja
Zaleca się aktualizację @fastify/middie do wersji 9.3.4 lub nowszej, aby wyeliminować podatność.
Inne podatności w @fastify/middie
Zobacz wszystkie- CVE-2026-33804Wysokie
Wersje @fastify/middie 9.3.1 i wcześniejsze są podatne na obejście middleware, gdy włączona jest przestarzała opcja ignoreDuplicateSlashes. Logika dopasowywania ścieżek middleware nie uwzględnia normalizacji podwójnych ukośników, co pozwala na ominięcie kontroli uwierzytelniania i autoryzacji.
- CVE-2026-22031Wysokie
Wtyczka @fastify/middie przed wersją 9.1.0 zawiera podatność, która pozwala na ominięcie zarejestrowanego middleware przy użyciu zakodowanych znaków URL. Atakujący mogą uzyskać dostęp do chronionych punktów końcowych bez ograniczeń narzucanych przez middleware.
- CVE-2026-14198Krytyczne
Podatność w @fastify/middie w wersjach 9.1.0 do 9.3.2 powoduje rozbieżność w interpretacji zakodowanego ukośnika (%2F) między middleware a routerem Fastify. Atakujący może ominąć middleware używane do uwierzytelniania, autoryzacji lub ograniczania prędkości, wysyłając spreparowane żądanie z zakodowanym ukośnikiem w parametrze ścieżki.
- CVE-2026-6270Krytyczne
Wersje @fastify/middie do 9.3.1 nie rejestrują dziedziczonych middleware bezpośrednio na instancjach silnika wtyczek podrzędnych. To pozwala na ominięcie kontroli uwierzytelniania i autoryzacji dla żądań kierowanych do tras zdefiniowanych w wtyczkach podrzędnych.
- CVE-2026-2880Krytyczne
Podatność w @fastify/middie w wersjach poniżej 9.2.0 może prowadzić do ominięcia uwierzytelniania/autoryzacji przy użyciu middleware o zasięgu ścieżki. W przypadku włączonych opcji normalizacji routera Fastify, odpowiednio skonstruowane ścieżki żądań mogą omijać kontrole middleware.
- CVE-2026-14181Wysokie
Podatność w @fastify/middie w wersjach 9.1.0 do 9.3.2 powoduje awarię procesu Node.js przy przetwarzaniu nieprawidłowo zakodowanych sekwencji procentowych w ścieżkach żądań. Błąd występuje tylko przy użyciu samodzielnego silnika API (middie.run), a nie wtyczki Fastify.
Oryginalny opis (angielski, źródło NVD)
@fastify/middie versions >= 9.1.0 and before 9.3.4 decide whether to run path-scoped middleware by matching against the raw request target, while the Fastify router resolves an absolute-form request target to its path before dispatching. Because the two layers evaluate different strings, a request using an absolute-form target reaches the route handler while the path-scoped middleware, such as authentication or authorization, is skipped. An unauthenticated network attacker can use this to bypass path-based access controls in a Fastify application that relies on middie for those controls. Users should upgrade to @fastify/middie 9.3.4 or later.

