CVE-2026-12151
WysokieCVSS 7.5Prawdopodobieństwo exploitacji (EPSS)
Podwyższone ryzykoPercentyl 53 - wyżej niż 53% wszystkich znanych CVE
Streszczenie
Klient WebSocket biblioteki undici nie ogranicza liczby fragmentów wiadomości, co pozwala złośliwemu serwerowi na wysłanie wielu małych ramek kontynuacji. Prowadzi to do niekontrolowanego wzrostu pamięci i wyczerpania zasobów (DoS).
Ocena ryzyka
Organizacja narażona jest na atak DoS, który może unieruchomić aplikacje używające klienta WebSocket undici, jeśli zostaną one nakłonione do połączenia z kontrolowanym przez atakującego serwerem.
Rekomendacja
Należy natychmiast zaktualizować bibliotekę undici do wersji 6.26.0, 7.28.0 lub 8.5.0. Nie ma dostępnego rozwiązania zastępczego.
Inne podatności w undici
Zobacz wszystkie- CVE-2026-15157Średnie
W bibliotece undici przed wersjami 6.28.0, 7.29.0 i 8.9.0 nie jest walidowana właściwość 'type' w obiektach blobopodobnych tworzonych ręcznie. Atakujący może wstrzyknąć znaki CRLF i dodać dowolne nagłówki HTTP, co może prowadzić do przemycenia drugiego żądania (request smuggling).
- CVE-2026-14643Średnie
W undici przed wersjami 7.29.0 i 8.9.0, interceptor pamięci podręcznej (cache interceptor) nieprawidłowo obsługuje opcjonalne białe znaki wokół znaku równości w dyrektywie Cache-Control. Może to spowodować przechowywanie w pamięci podręcznej odpowiedzi zawierających dane uwierzytelnionego użytkownika i serwowanie ich innym użytkownikom.
- CVE-2026-16728Średnie
W undici przed wersjami 6.28.0, 7.29.0 i 8.9.0, interceptor ponawiania (retry interceptor) może dostarczyć odpowiedź, której długość treści nie zgadza się z nagłówkiem Content-Length. Może to prowadzić do desynchronizacji odpowiedzi, zawieszenia połączenia lub uszkodzenia odpowiedzi u klienta końcowego.
- CVE-2026-16729Średnie
Funkcja setCookie w bibliotece undici przed wersjami 6.28.0, 7.29.0 i 8.9.0 nie w pełni oczyszcza atrybutów ciasteczek. Wartość domeny nie jest sprawdzana pod kątem średników, a wpisy w nieprzetworzonej tablicy nie są oczyszczane, co pozwala atakującemu na wstrzyknięcie dodatkowych atrybutów, takich jak SameSite, HttpOnly czy Secure, bez wiedzy wywołującego.
- CVE-2026-13697Wysokie
W undici przed wersjami 7.29.0 i 8.9.0, interceptor pamięci podręcznej nieprawidłowo obsługuje nieprawidłowe dyrektywy Cache-Control private. Odpowiedź z prywatną dyrektywą o pustej wartości może być przechowywana w współdzielonej pamięci podręcznej i udostępniana innym użytkownikom, ujawniając prywatne dane. Ponadto połączenie niekwalifikowanej i kwalifikowanej dyrektywy private powoduje błąd TypeError, który może przerwać działanie procesu.
- CVE-2026-9697Wysokie
Podatność w bibliotece undici powoduje, że opcja requestTls jest ignorowana przy użyciu ProxyAgent z proxy SOCKS5. Połączenie HTTPS przez tunel SOCKS5 korzysta z domyślnego magazynu zaufania Node.js zamiast z konfiguracji użytkownika.
- CVE-2026-9679Średnie
Parser ciasteczek w undici (parseSetCookie) dekoduje wartości ciasteczek, co może prowadzić do wstrzykiwania nagłówków odpowiedzi HTTP. Aplikacje, które przekazują przetworzone wartości ciasteczek do nagłówków odpowiedzi, stają się podatne na ataki, takie jak przejęcie sesji czy złośliwe przekierowania.
- CVE-2026-9678Średnie
Podatność w Undici pozwala na nieprawidłowe klasyfikowanie odpowiedzi jako cache'owalne, gdy nagłówki Cache-Control zawierają białe znaki. Może to prowadzić do sytuacji, w której dane uwierzytelnionego użytkownika są serwowane innemu użytkownikowi z pamięci podręcznej.
- CVE-2026-6734Wysokie
W bibliotece undici wykryto podatność polegającą na ponownym wykorzystaniu pojedynczej puli połączeń przez Socks5ProxyAgent dla różnych źródeł (originów) bez weryfikacji zgodności. Powoduje to kierowanie żądań do niewłaściwego serwera, wyciek danych uwierzytelniających oraz potencjalne obniżenie poziomu bezpieczeństwa HTTPS do HTTP.
- CVE-2026-11525Niskie
Podatność w bibliotece undici polega na nieprawidłowym parsowaniu atrybutu SameSite w nagłówkach Set-Cookie. Biblioteka akceptuje dowolną wartość zawierającą podciąg 'Strict', 'Lax' lub 'None', zamiast wymaganego przez RFC 6265 dokładnego dopasowania bez względu na wielkość liter. Może to prowadzić do przypisania słabszej polityki SameSite, np. wartość 'NoneOfYourBusiness' jest interpretowana jako 'None' (najbardziej permisywne ustawienie).
Oryginalny opis (angielski, źródło NVD)
Impact: The undici WebSocket client enforces maxPayloadSize on the cumulative byte count of fragments in a message but does not enforce a limit on the number of fragments. A malicious WebSocket server can stream many small or empty continuation frames that each pass per-frame and cumulative-size validation, collectively causing unbounded memory growth in the client process. The result is memory exhaustion and a denial of service. Affected applications are those using the undici WebSocket client (new WebSocket(...)) or the WebSocketStream API that can be induced to connect to an attacker-controlled or compromised WebSocket endpoint. All releases starting at undici 6.17.0 are affected. Patches: Upgrade to undici >= 6.26.0, >= 7.28.0, or >= 8.5.0. Workarounds: No workaround is available. The fix must be applied through an upgrade.

