CVE-2026-118661
ŚrednieCVSS 6.5Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 20 - wyżej niż 20% wszystkich znanych CVE
Streszczenie
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.
Ocena ryzyka
W aplikacjach renderujących po stronie serwera może to prowadzić do wstrzyknięcia fałszywego pliku cookie lub fiksacji sesji, co umożliwia przejęcie sesji użytkownika.
Rekomendacja
Zaktualizuj Happy DOM do wersji 20.14.6 lub nowszej. Rozważ ograniczenie kontaktu z niezaufanymi originami w aplikacjach SSR.
Inne podatności w Happy DOM
Zobacz wszystkie- CVE-2025-62410Krytyczne
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.
- 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)
Happy DOM is a JavaScript implementation of a web browser without its graphical user interface. Prior to 20.14.6, Happy DOM's CookieContainer in src/cookie/CookieContainer.ts does not correctly validate or match Domain cookie attributes. It can accept a Domain unrelated to the origin setting the cookie, including a public suffix, and separately treats an unrelated suffix-sharing hostname as a match because cookieMatchesURL does not enforce a DNS-label boundary. In server-side rendering and prerendering applications that contact attacker-controlled origins and then make requests to a victim origin, these behaviors can plant and deliver a forged cookie, enabling cookie injection or session fixation. This issue is fixed in version 20.14.6.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

