CVE-2023-30588
ŚrednieCVSS 5.3Prawdopodobieństwo exploitacji (EPSS)
Podwyższone ryzykoPercentyl 67 - wyżej niż 67% wszystkich znanych CVE
Streszczenie
Użycie nieprawidłowego klucza publicznego do utworzenia certyfikatu x509 za pomocą API crypto.X509Certificate() powoduje nieoczekiwane zakończenie procesu. Podatność dotyczy wszystkich aktywnych wersji Node.js v16, v18 i v20 i może być wykorzystana do ataku DoS.
Ocena ryzyka
Atakujący może wymusić przerwanie przetwarzania aplikacji poprzez dostarczenie certyfikatu z nieprawidłowym kluczem publicznym, powodując niedostępność usługi.
Rekomendacja
Zaktualizuj Node.js do wersji zawierającej poprawkę oraz waliduj dane wejściowe certyfikatów przed ich przetwarzaniem.
Inne podatności w Node.js
Zobacz wszystkie- CVE-2026-21637Wysokie
Podatność w obsłudze błędów TLS w Node.js pozwala zdalnemu atakującemu na awarię lub wyczerpanie zasobów serwera TLS, gdy używane są wywołania zwrotne `pskCallback` lub `ALPNCallback`. Wyjątki synchroniczne zgłaszane podczas tych wywołań omijają standardowe ścieżki obsługi błędów TLS, co prowadzi do natychmiastowego zakończenia procesu lub cichego wycieku deskryptorów plików, a w konsekwencji do odmowy usługi.
- CVE-2025-59466Wysokie
W Node.js wykryto błąd w obsłudze błędów, przez który błędy „Maximum call stack size exceeded” stają się nieprzechwytywalne, gdy włączony jest `async_hooks.createHook()`. Zamiast trafić do `process.on('uncaughtException')`, proces kończy się, co czyni awarię nieodwracalną. Aplikacje korzystające z `AsyncLocalStorage` (wersje v22, v20) lub `async_hooks.createHook()` (wersje v24, v22, v20) stają się podatne na awarie typu denial-of-service wywołane głęboką rekurencją w określonych warunkach.
- CVE-2025-59464Wysokie
Podatność powoduje wyciek pamięci w integracji OpenSSL w Node.js podczas konwersji pól certyfikatu X.509 do UTF-8 bez zwalniania bufora. Aplikacje wywołujące socket.getPeerCertificate(true) powodują wyciek pamięci przy każdym polu certyfikatu, co umożliwia zdalnym klientom ciągły wzrost zużycia pamięci przez powtarzane połączenia TLS.
- CVE-2025-23166Wysokie
Metoda C++ SignTraits::DeriveBits() może niepoprawnie wywołać ThrowException() na podstawie danych wejściowych dostarczonych przez użytkownika podczas wykonywania w wątku tła, powodując awarię procesu Node.js. Takie operacje kryptograficzne są powszechnie stosowane do niezaufanych danych wejściowych, co potencjalnie pozwala atakującemu na zdalne wywołanie awarii środowiska Node.js.
- CVE-2025-23085Średnie
W Node.js występuje wyciek pamięci, gdy zdalny peer nagle zamyka gniazdo bez wysłania powiadomienia GOAWAY lub gdy nghttp2 wykryje nieprawidłowy nagłówek i zakończy połączenie. Może to prowadzić do zwiększonego zużycia pamięci i potencjalnego ataku typu denial of service.
- CVE-2024-22018Niskie
W Node.js zidentyfikowano podatność dotyczącą użytkowników eksperymentalnego modelu uprawnień, gdy używana jest flaga --allow-fs-read. Wadliwy model uprawnień nie ogranicza pobierania statystyk plików poprzez API fs.lstat, w wyniku czego złośliwi aktorzy mogą uzyskać statystyki plików, do których nie mają wyraźnego dostępu do odczytu. Podatność dotyczy wszystkich użytkowników korzystających z eksperymentalnego modelu uprawnień w Node.js 20 i Node.js 21.
- CVE-2024-22020Średnie
Luka w Node.js pozwala obejść ograniczenia importu sieciowego poprzez osadzanie importów niebędących sieciowymi w adresach URL typu data. Umożliwia to atakującemu wykonanie dowolnego kodu i naruszenie bezpieczeństwa systemu.
- CVE-2024-27982Średnie
W serwerze HTTP najnowszej wersji Node wykryto krytyczną podatność, gdzie zniekształcone nagłówki mogą prowadzić do przemytu żądań HTTP. Umieszczenie spacji przed nagłówkiem content-length powoduje jego nieprawidłową interpretację, umożliwiając atakującemu przemycenie drugiego żądania w treści pierwszego.
- CVE-2024-27983Wysokie
Atakujący może całkowicie unieruchomić serwer HTTP/2 Node.js, wysyłając niewielką liczbę pakietów z ramkami HTTP/2. Pozostawienie danych w pamięci nghttp2 po resecie, gdy nagłówki z ramką CONTINUATION są przetwarzane, a klient nagle zamyka połączenie TCP, powoduje warunek wyścigu i wyczerpanie zasobów.
- CVE-2015-7384Wysokie
Node.js w wersjach 4.0.0, 4.1.0 oraz 4.1.1 umożliwia zdalnym atakującym spowodowanie odmowy usługi.
Oryginalny opis (angielski, źródło NVD)
When an invalid public key is used to create an x509 certificate using the crypto.X509Certificate() API a non-expect termination occurs making it susceptible to DoS attacks when the attacker could force interruptions of application processing, as the process terminates when accessing public key info of provided certificates from user code. The current context of the users will be gone, and that will cause a DoS scenario. This vulnerability affects all active Node.js versions v16, v18, and, v20.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

