CVE-2025-62410
KrytyczneCVSS 9.4Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 27 - wyżej niż 27% wszystkich znanych CVE
Streszczenie
W wersjach przed 20.0.2 stwierdzono, że --disallow-code-generation-from-strings nie jest wystarczające do izolacji niezaufanego kodu JavaScript w happy-dom. Niezaufany skrypt i reszta aplikacji nadal działają w tym samym Isolate/procesie, więc atakujący mogą wdrażać ładunki zanieczyszczenia prototypu, aby przejąć ważne referencje, takie jak "process", lub przejąć przepływ sterowania poprzez manipulację sprawdzeniami niezdefiniowanych właściwości. Luka wynika z niekompletnej poprawki dla CVE-2025-61927. Podatność została naprawiona w wersji 20.0.2.
Ocena ryzyka
Atakujący może przejąć kontrolę nad aplikacją lub wykonać złośliwy kod w kontekście procesu Node.js.
Rekomendacja
Zaktualizuj happy-dom do wersji 20.0.2 lub nowszej.
Inne podatności w happy-dom
Zobacz wszystkie- CVE-2026-118661Średnie
W Happy DOM przed wersją 20.14.6 komponent CookieContainer nieprawidłowo waliduje i dopasowuje atrybuty Domain plików cookie. Może akceptować Domain niezwiązany z originem ustawiającym cookie, w tym publiczny sufiks, oraz traktować niepowiązaną nazwę hosta dzielącą sufiks jako dopasowanie, ponieważ cookieMatchesURL nie wymusza granicy etykiety DNS.
- CVE-2026-118660Wysokie
W Happy DOM przed wersją 21.0.0 podczas przetwarzania niezaufanego HTML na serwerze domyślnie ładowane są adresy URL iframe src oraz link rel="stylesheet" href, ponieważ opcje disableIframePageLoading i disableCSSFileLoading mają domyślnie wartość false. Atakujący kontrolujący przetwarzany HTML może wywołać żądania serwerowe do dowolnych wewnętrznych lub chmurowych punktów końcowych.
- CVE-2026-115895Wysokie
Happy DOM od wersji 17.0.0 do 21.0.4 w ECMAScriptModuleCompiler.ts przyjmuje alias importu ESM bez walidacji, że jest poprawnym identyfikatorem wiązania JS; przy włączonym enableJavaScriptEvaluation złośliwy HTML lub źródło modułu może spowodować wykonanie wygenerowanego JavaScriptu w procesie hosta Node.js.
- CVE-2026-34226Wysokie
W bibliotece Happy DOM przed wersją 20.8.9 występuje podatność polegająca na nieprawidłowym dołączaniu ciasteczek podczas użycia fetch() z opcją credentials: 'include'. Zamiast ciasteczek z docelowego adresu URL, dołączane są ciasteczka z bieżącej strony (window.location), co może prowadzić do wycieku ciasteczek z domeny A do domeny B.
- CVE-2026-33943Wysokie
Podatność w bibliotece Happy DOM (wersje 15.10.0 do 20.8.7) umożliwia zdalne wykonanie kodu (RCE) poprzez wstrzyknięcie złośliwych wyrażeń JavaScript w deklaracjach `export { }` w modułach ES. Kompilator `ECMAScriptModuleCompiler` bezpośrednio interpoluje niesprawdzone dane do generowanego kodu, a filtr cytatów nie usuwa znaków backtick, co pozwala na ominięcie zabezpieczeń za pomocą literałów szablonowych.
- CVE-2025-61927Wysokie
Happy DOM w wersji 19 i niższych zawiera podatność umożliwiającą zdalne wykonanie kodu (RCE). Kontekst VM Node.js nie jest izolowany, co pozwala niebezpiecznemu kodowi JavaScript na ucieczkę z VM i dostęp do funkcji procesu. Wersja 20.0.0 naprawia problem, wyłączając domyślnie ocenę JavaScript.
Oryginalny opis (angielski, źródło NVD)
In versions before 20.0.2, it was found that --disallow-code-generation-from-strings is not sufficient for isolating untrusted JavaScript in happy-dom. The untrusted script and the rest of the application still run in the same Isolate/process, so attackers can deploy prototype pollution payloads to hijack important references like "process" in the example below, or to hijack control flow via flipping checks of undefined property. This vulnerability is due to an incomplete fix for CVE-2025-61927. The vulnerability is fixed in 20.0.2.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

