CVE-2026-33891
WysokieCVSS 7.5Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 44 - wyżej niż 44% wszystkich znanych CVE
Streszczenie
W bibliotece node-forge przed wersją 1.4.0 występuje podatność na atak typu DoS spowodowana nieskończoną pętlą w funkcji BigInteger.modInverse(). Wywołanie tej funkcji z wartością zero powoduje zawieszenie procesu i 100% wykorzystanie CPU.
Ocena ryzyka
Atakujący może zdalnie spowodować odmowę usługi poprzez wysłanie specjalnie spreparowanego żądania, które wywołuje funkcję modInverse z zerem, co prowadzi do zawieszenia aplikacji i wyczerpania zasobów CPU.
Rekomendacja
Należy niezwłocznie zaktualizować bibliotekę node-forge do wersji 1.4.0 lub nowszej, która zawiera poprawkę eliminującą nieskończoną pętlę.
Inne podatności w node-forge
Zobacz wszystkie- CVE-2026-33896Wysokie
Podatność w bibliotece node-forge przed wersją 1.4.0 pozwala na obejście wymogów RFC 5280 dotyczących ograniczeń podstawowych (basicConstraints) podczas weryfikacji łańcucha certyfikatów. Brak wymuszenia tych ograniczeń umożliwia certyfikatowi liścia (bez rozszerzeń basicConstraints i keyUsage) działanie jako urząd certyfikacji i podpisywanie innych certyfikatów, które node-forge uzna za prawidłowe.
- CVE-2026-33895Wysokie
Biblioteka node-forge przed wersją 1.4.0 akceptuje niekanoniczne podpisy Ed25519, w których skalar S nie jest zredukowany modulo rząd grupy (S >= L). Oznacza to, że zarówno prawidłowy podpis, jak i jego wariant S+L są uznawane za ważne, podczas gdy zgodna ze specyfikacją implementacja OpenSSL odrzuca wariant S+L.
- CVE-2026-33894Wysokie
Biblioteka node-forge przed wersją 1.4.0 zawiera podatność w weryfikacji podpisów RSASSA PKCS#1 v1.5 dla kluczy z niskim wykładnikiem publicznym (e=3). Atakujący może sfałszować podpis poprzez dodanie „śmieciowych” bajtów w strukturze ASN, co umożliwia atak typu Bleichenbacher. Podatność jest podobna do CVE-2022-24771, ale różni się miejscem wstawiania danych.
Oryginalny opis (angielski, źródło NVD)
Forge (also called `node-forge`) is a native implementation of Transport Layer Security in JavaScript. Prior to version 1.4.0, a Denial of Service (DoS) vulnerability exists in the node-forge library due to an infinite loop in the BigInteger.modInverse() function (inherited from the bundled jsbn library). When modInverse() is called with a zero value as input, the internal Extended Euclidean Algorithm enters an unreachable exit condition, causing the process to hang indefinitely and consume 100% CPU. Version 1.4.0 patches the issue.

