CVE-2026-88060
WysokieCVSS 8.6Prawdopodobieństwo exploitacji (EPSS)
Podwyższone ryzykoPercentyl 51 - wyżej niż 51% wszystkich znanych CVE
Streszczenie
Angular w wersjach przed 20.3.30, 21.2.22 i 22.1.4 ma podatność w renderowaniu po stronie serwera (SSR) w @angular/platform-server. Serializacja niezaufanych danych wewnątrz elementów fallback raw-content (noscript, iframe, noembed, noframes) nie escapuje pasujących tagów zamykających, co umożliwia wykonanie dowolnego kodu JavaScript.
Ocena ryzyka
Podatność może prowadzić do wykonania dowolnego kodu JavaScript w przeglądarce ofiary, umożliwiając kradzież sesji lub innych danych.
Rekomendacja
Zaktualizuj Angular do wersji 20.3.30, 21.2.22 lub 22.1.4 (lub nowszej).
Inne podatności w Angular
Zobacz wszystkie- CVE-2026-88059Średnie
W Angularze w wersjach przed 20.3.28, 21.2.20 i 22.1.1 mechanizm @angular/common HttpTransferCache może zapisać w pamięci podręcznej uwierzytelnioną odpowiedź, gdy renderowanie po stronie serwera (SSR) i hydratacja używają hierarchicznego HttpClient skonfigurowanego z withRequestsMadeViaParent. Podrzędny TransferCache ocenia początkowo anonimowe żądanie przed delegacją, a następnie nadrzędny łańcuch withInterceptors dodaje nagłówek Authorization, cookie lub token API; mimo że nadrzędny cache pomija uwierzytelnione żądanie, podrzędny nadal zapisuje prywatną odpowiedź w TransferState serializowaną jako JSON w skrypcie ng-state. Późniejszy nieuwierzytelniony lub nieuprawniony odwiedzający może otrzymać buforowany HTML zawierający dane wrażliwe wcześniejszego uwierzytelnionego użytkownika.
- CVE-2026-88058Wysokie
Angular w wersjach przed 20.3.30, 21.2.22 i 22.1.4 ma podatność w renderowaniu po stronie serwera (SSR) w @angular/platform-server. Serializacja węzłów ProcessingInstruction wewnątrz elementów fallback raw-content nie escapuje pasujących tagów zamykających, co pozwala na przedwczesne zamknięcie kontenera i wykonanie dowolnego kodu JavaScript.
- CVE-2026-88057Średnie
W Angularze w wersjach przed 20.3.28, 21.2.20 i 22.1.0 kompilator i środowisko uruchomieniowe w @angular/core i @angular/compiler mogły pominąć lub wybrać nieprawidłowy sanitizer dla wrażliwych na bezpieczeństwo powiązań host bindings dyrektyw, ponieważ SecurityContext był wyznaczany na podstawie selektora deklarującej dyrektywy lub komponentu, a nie konkretnego elementu hosta. Niezgodność jest osiągalna przez kompozycję hostDirectives, dziedziczone deklaracje HostBinding, createComponent z niestandardowym hostElement lub dynamicznymi dyrektywami, elementy przestrzeni nazw SVG/MathML oraz selektory neutralne dla tagów, takie jak :not(...). Kontrolowane przez atakującego wartości href, src, action, xlink:href lub data mogą w ten sposób trafić do atrybutów DOM bez wbudowanego sanitizera Angulara i wykonać dowolny JavaScript w kontekście przeglądarki użytkownika.
- CVE-2026-88056Wysokie
Angular w wersjach przed 20.3.30, 21.2.22 i 22.1.4 ma podatność w renderowaniu po stronie serwera (SSR) w @angular/platform-server. Funkcje resolveUrl i parseUrl wywołują String.prototype.trim(), co usuwa wiodące białe znaki Unicode po sprawdzeniu same-origin, przekształcając ścieżkę względną w kontrolowany przez atakującego URL protokołu względnego, prowadząc do SSRF i ujawnienia danych uwierzytelniających.
- CVE-2026-69151Średnie
Angular przed wersjami 20.3.27, 21.2.19 i 22.0.1 zawiera podatność w potoku i18n kompilatora Angular, która pozwala na użycie atrybutów obsługi zdarzeń i18n-onerror i innych i18n-on. Umożliwia to plikowi tłumaczenia o niższym zaufaniu zastąpienie statycznego handlera wykonywalnym kodem JavaScript.
- CVE-2026-69149Średnie
Angular przed wersjami 20.3.27, 21.2.19 i 22.0.7 zawiera podatność na Cross-Site Scripting (XSS) w zależności DOM emulacji @angular/platform-server (domino) podczas serializacji zawartości elementów zastępczych surowej zawartości (<iframe>, <noembed>, <noframes> i <noscript>).
- CVE-2026-68945Średnie
Angular przed wersjami 20.3.27, 21.2.19 i 22.0.2 zawiera podatność w HttpTransferCache, która łączy przecinkami powtarzające się parametry żądania. Pozwala to semantycznie różnym żądaniom HttpClient używać tego samego klucza pamięci podręcznej transferu i ponownie wykorzystać nieprawidłową odpowiedź backendu.
- CVE-2026-50556Średnie
W Angularze wykryto podatność na atak XSS w komponencie @angular/platform-server podczas renderowania treści w elemencie <noscript> przy użyciu SSR. Problem wynika z błędnego serializowania zawartości przez bibliotekę domino, która nie ucieka znacznika </noscript>, co pozwala na wstrzyknięcie złośliwego kodu JavaScript.
- CVE-2026-50555Średnie
W Angularze wykryto podatność na Cross-Site Scripting (XSS) w zależności DOM emulacji @angular/platform-server (domino) podczas serializacji treści elementów raw-text, takich jak <script>, <style> i <iframe>. Błąd w obliczeniach indeksów Unicode powoduje, że dynamiczny tekst zawierający znaki astralne (np. emotikony) przed znacznikiem zamykającym nie jest poprawnie escapowany, co umożliwia wstrzyknięcie kodu JavaScript. Luka została załatana w wersjach 22.0.0-rc.2, 21.2.16, 20.3.24 i 19.2.25.
- CVE-2026-54267Średnie
Podatność DOM Clobbering w Angularze umożliwia atakującemu podmianę kontenera stanu SSR (ng-state) poprzez wstrzyknięcie elementu HTML z tym samym identyfikatorem. Podczas hydracji klienta Angular odczytuje dane z fałszywego elementu, co może prowadzić do wykonania kodu lub kradzieży danych.
Oryginalny opis (angielski, źródło NVD)
Angular is a development platform for building mobile and desktop web applications using TypeScript/JavaScript and other languages. Prior to 20.3.30, 21.2.22, and 22.1.4, Angular server-side rendering (SSR) in @angular/platform-server serializes untrusted input inside template content nested in fallback raw-content elements such as noscript, iframe, noembed, and noframes. The Domino serializer's fallbackRawContentTags traversal stopped at the DocumentFragment used by template.content, so matching closing tags in xmp, style, script, comments, or text nodes were not escaped. Standard interpolation with comments or text nodes is reachable without relaxed schemas; literal xmp or style requires CUSTOM_ELEMENTS_SCHEMA or NO_ERRORS_SCHEMA, while Renderer2 imperative DOM construction is unconditionally affected. When HTML5 RAWTEXT browser parsing encounters the unescaped closing tag, it exits the fallback container and interprets trailing markup as active DOM elements, enabling arbitrary JavaScript execution. This issue is fixed in versions 20.3.30, 21.2.22, and 22.1.4.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

