CVE-2026-21884
WysokieCVSS 8.2Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 38 - wyżej niż 38% wszystkich znanych CVE
Streszczenie
Podatność XSS w React Router w trybie Framework podczas renderowania po stronie serwera (SSR) przy użyciu właściwości getKey/storageKey w komponencie <ScrollRestoration>. Luka umożliwia wykonanie dowolnego kodu JavaScript podczas SSR, jeśli do generowania kluczy używane są niezaufane dane.
Ocena ryzyka
Atakujący może wstrzyknąć złośliwy kod JavaScript, który zostanie wykonany podczas renderowania strony po stronie serwera, co może prowadzić do kradzieży danych sesji, przejęcia kont użytkowników lub innych ataków typu XSS.
Rekomendacja
Należy niezwłocznie zaktualizować @remix-run/react do wersji 2.17.3 lub nowszej oraz react-router do wersji 7.12.0 lub nowszej. Jeśli SSR w trybie Framework nie jest wymagany, rozważ jego wyłączenie.
Inne podatności w React Router
Zobacz wszystkie- CVE-2025-61686Krytyczne
W bibliotekach React Router i Remix Run wykryto podatność polegającą na możliwości odczytu/zapisu plików sesji poza określonym katalogiem, gdy używana jest funkcja createFileSessionStorage() z niepodpisanym ciasteczkiem. Atakujący może spowodować, że sesja będzie próbować odczytać/zapisać dane w lokalizacji poza docelowym katalogiem plików sesji, co zależy od uprawnień procesu serwera WWW.
- CVE-2026-55685Wysokie
Podatność w React Router w wersjach 7.0.0 do 7.17.0. Nieuwierzytelnione żądania do punktu końcowego manifestu mogą przeciążyć serwer i spowolnić odpowiedzi. Problem nie dotyczy aplikacji używających trybu deklaratywnego (<BrowserRouter>) lub Data Mode (createBrowserRouter/<RouterProvider>).
- CVE-2026-53669Średnie
React Router w wersjach 6.0.0 do 7.17.0 jest podatny na otwarte przekierowanie poprzez użycie backslashy w komponentach <Link> i funkcji useNavigate. Problem został naprawiony w wersji 7.18.0.
- CVE-2026-53668Średnie
React Router w wersjach 6.30.2 do 6.30.4 oraz 7.9.6 do 7.12.0 jest podatny na XSS w aplikacjach zezwalających na otwarte przekierowania. Atakujący może stworzyć złośliwy link przekierowujący do zewnętrznej strony lub wykorzystujący wektor XSS. Problem został naprawiony w wersji 7.13.0.
- CVE-2026-53667Średnie
React Router w wersjach 7.11.0 do 7.17.0 ma brak walidacji protokołu w RSCErrorHandler, co umożliwia przekierowania z niezaufanych źródeł. Problem dotyczy tylko aplikacji używających niestabilnych API RSC. Naprawiony w wersji 7.18.0.
- CVE-2026-53666Średnie
React Router w wersjach 6.4.0 do 7.17.0 umożliwia nieoczekiwane wykonanie konstruktora na kliencie, jeśli kod aplikacji pozwala na nadpisanie pewnych aspektów błędów SSR przez dane wejściowe atakującego. To może wywołać wychodzące żądanie sieciowe. Problem dotyczy tylko aplikacji w trybie Framework lub Data Mode wykonujących ręczne SSR/hydration. Naprawiony w wersji 7.18.0.
- CVE-2026-53663Niskie
React Router w wersjach od 7.12.0 do 7.15.1 miał niewystarczające kontrole CSRF w trybie Framework Mode, które działały na żądania POST, ale były omijane w przypadku żądań PUT/PATCH/DELETE. Ta podatność została naprawiona w wersji 7.15.1.
- CVE-2026-42342Wysokie
React Router w wersjach 7.0.0 do 7.14.x oraz @remix-run/server-runtime w wersjach 2.10.0 do 2.17.4 zawierają podatność na atak DoS poprzez nieograniczoną ekspansję ścieżki w punkcie końcowym __manifest. Atakujący może wysłać spreparowane żądania, które zużywają nadmierne zasoby serwera.
- CVE-2026-42211Wysokie
React Router w wersjach 7.0.0 do 7.14.1 w trybie Framework Mode może pozwolić na zdalne wykonanie kodu (RCE) przez zewnętrzne żądania, jeśli aplikacja ma istniejącą podatność na prototype pollution. Atak wymaga dwóch kroków. Nie dotyczy trybu Declarative ani Data Mode.
- CVE-2026-40181Średnie
React Router w wersjach 7.0.0 do 7.14.0 oraz 6.7.0 do 6.30.3 zawiera podatność na otwarte przekierowanie, gdy pewne adresy URL przekazane do funkcji redirect są interpretowane jako protokołowo-względne, co może przekierować użytkownika na zewnętrzną domenę.
Oryginalny opis (angielski, źródło NVD)
React Router is a router for React. In @remix-run/react version prior to 2.17.3. and react-router 7.0.0 through 7.11.0, a XSS vulnerability exists in in React Router's <ScrollRestoration> API in Framework Mode when using the getKey/storageKey props during Server-Side Rendering which could allow arbitrary JavaScript execution during SSR if untrusted content is used to generate the keys. There is no impact if server-side rendering in Framework Mode is disabled, or if Declarative Mode (<BrowserRouter>) or Data Mode (createBrowserRouter/<RouterProvider>) is being used. This issue has been patched in @remix-run/react version 2.17.3 and react-router version 7.12.0.

