Vulnerability Details CVE-2026-50556
Angular is a development platform for building mobile and desktop web applications using TypeScript/JavaScript and other languages. Prior to 22.0.0-rc.2, 21.2.16, 20.3.24, and 19.2.25, a Cross-Site Scripting (XSS) vulnerability exists in @angular/platform-server's DOM emulation dependency (domino) when serializing the content of <noscript> elements. When rendering dynamic text content inside a <noscript> element via template bindings (such as {{ value }} or [textContent]), the template engine expects the browser to render the content safely. Under Server-Side Rendering (SSR), domino is configured with scripting enabled, meaning <noscript> is treated as a raw-text element. However, domino's serializer completely omitted <noscript> from the list of raw-text elements requiring closing-tag escaping during DOM serialization. As a result, any occurrence of </noscript> in the bound dynamic text was never escaped under any circumstances. The unescaped closing tag was serialized directly into the output HTML (e.g. <noscript></noscript><script>alert(1)</script></noscript>). When parsed by a browser, it closes the <noscript> block early, allowing the injected <script> block to execute in the user's browser context, causing same-origin Cross-Site Scripting (XSS). This vulnerability is fixed in 22.0.0-rc.2, 21.2.16, 20.3.24, and 19.2.25.
Exploit prediction scoring system (EPSS) score
EPSS Score 0.002
EPSS Ranking 9.3%
CVSS Severity
CVSS v3 Score 6.1
Products affected by CVE-2026-50556
-
cpe:2.3:a:angularjs:angularjs:-
-
cpe:2.3:a:angularjs:angularjs:0.10.0
-
cpe:2.3:a:angularjs:angularjs:0.10.1
-
cpe:2.3:a:angularjs:angularjs:0.10.2
-
cpe:2.3:a:angularjs:angularjs:0.10.3
-
cpe:2.3:a:angularjs:angularjs:0.10.4
-
cpe:2.3:a:angularjs:angularjs:0.10.5
-
cpe:2.3:a:angularjs:angularjs:0.10.6
-
cpe:2.3:a:angularjs:angularjs:0.9.0
-
cpe:2.3:a:angularjs:angularjs:0.9.1
-
cpe:2.3:a:angularjs:angularjs:0.9.10
-
cpe:2.3:a:angularjs:angularjs:0.9.11
-
cpe:2.3:a:angularjs:angularjs:0.9.12
-
cpe:2.3:a:angularjs:angularjs:0.9.13
-
cpe:2.3:a:angularjs:angularjs:0.9.14
-
cpe:2.3:a:angularjs:angularjs:0.9.15
-
cpe:2.3:a:angularjs:angularjs:0.9.16
-
cpe:2.3:a:angularjs:angularjs:0.9.17
-
cpe:2.3:a:angularjs:angularjs:0.9.18
-
cpe:2.3:a:angularjs:angularjs:0.9.19
-
cpe:2.3:a:angularjs:angularjs:0.9.2
-
cpe:2.3:a:angularjs:angularjs:0.9.3
-
cpe:2.3:a:angularjs:angularjs:0.9.4
-
cpe:2.3:a:angularjs:angularjs:0.9.5
-
cpe:2.3:a:angularjs:angularjs:0.9.6
-
cpe:2.3:a:angularjs:angularjs:0.9.7
-
cpe:2.3:a:angularjs:angularjs:0.9.9
-
cpe:2.3:a:angularjs:angularjs:1.0.0
-
cpe:2.3:a:angularjs:angularjs:1.0.1
-
cpe:2.3:a:angularjs:angularjs:1.0.2
-
cpe:2.3:a:angularjs:angularjs:1.0.3
-
cpe:2.3:a:angularjs:angularjs:1.0.4
-
cpe:2.3:a:angularjs:angularjs:1.0.5
-
cpe:2.3:a:angularjs:angularjs:1.0.6
-
cpe:2.3:a:angularjs:angularjs:1.0.7
-
cpe:2.3:a:angularjs:angularjs:1.0.8
-
cpe:2.3:a:angularjs:angularjs:1.1.0
-
cpe:2.3:a:angularjs:angularjs:1.1.1
-
cpe:2.3:a:angularjs:angularjs:1.1.2
-
cpe:2.3:a:angularjs:angularjs:1.1.3
-
cpe:2.3:a:angularjs:angularjs:1.1.4
-
cpe:2.3:a:angularjs:angularjs:1.1.5
-
cpe:2.3:a:angularjs:angularjs:1.2.0
-
cpe:2.3:a:angularjs:angularjs:1.2.1
-
cpe:2.3:a:angularjs:angularjs:1.2.10
-
cpe:2.3:a:angularjs:angularjs:1.2.11
-
cpe:2.3:a:angularjs:angularjs:1.2.12
-
cpe:2.3:a:angularjs:angularjs:1.2.13
-
cpe:2.3:a:angularjs:angularjs:1.2.14
-
cpe:2.3:a:angularjs:angularjs:1.2.15
-
cpe:2.3:a:angularjs:angularjs:1.2.16
-
cpe:2.3:a:angularjs:angularjs:1.2.17
-
cpe:2.3:a:angularjs:angularjs:1.2.18
-
cpe:2.3:a:angularjs:angularjs:1.2.19
-
cpe:2.3:a:angularjs:angularjs:1.2.2
-
cpe:2.3:a:angularjs:angularjs:1.2.20
-
cpe:2.3:a:angularjs:angularjs:1.2.21
-
cpe:2.3:a:angularjs:angularjs:1.2.22
-
cpe:2.3:a:angularjs:angularjs:1.2.23
-
cpe:2.3:a:angularjs:angularjs:1.2.24
-
cpe:2.3:a:angularjs:angularjs:1.2.25
-
cpe:2.3:a:angularjs:angularjs:1.2.26
-
cpe:2.3:a:angularjs:angularjs:1.2.27
-
cpe:2.3:a:angularjs:angularjs:1.2.28
-
cpe:2.3:a:angularjs:angularjs:1.2.29
-
cpe:2.3:a:angularjs:angularjs:1.2.3
-
cpe:2.3:a:angularjs:angularjs:1.2.30
-
cpe:2.3:a:angularjs:angularjs:1.2.31
-
cpe:2.3:a:angularjs:angularjs:1.2.32
-
cpe:2.3:a:angularjs:angularjs:1.2.4
-
cpe:2.3:a:angularjs:angularjs:1.2.5
-
cpe:2.3:a:angularjs:angularjs:1.2.6
-
cpe:2.3:a:angularjs:angularjs:1.2.7
-
cpe:2.3:a:angularjs:angularjs:1.2.8
-
cpe:2.3:a:angularjs:angularjs:1.2.9
-
cpe:2.3:a:angularjs:angularjs:1.3.0
-
cpe:2.3:a:angularjs:angularjs:1.3.1
-
cpe:2.3:a:angularjs:angularjs:1.3.10
-
cpe:2.3:a:angularjs:angularjs:1.3.11
-
cpe:2.3:a:angularjs:angularjs:1.3.12
-
cpe:2.3:a:angularjs:angularjs:1.3.13
-
cpe:2.3:a:angularjs:angularjs:1.3.14
-
cpe:2.3:a:angularjs:angularjs:1.3.15
-
cpe:2.3:a:angularjs:angularjs:1.3.16
-
cpe:2.3:a:angularjs:angularjs:1.3.17
-
cpe:2.3:a:angularjs:angularjs:1.3.18
-
cpe:2.3:a:angularjs:angularjs:1.3.19
-
cpe:2.3:a:angularjs:angularjs:1.3.2
-
cpe:2.3:a:angularjs:angularjs:1.3.20
-
cpe:2.3:a:angularjs:angularjs:1.3.3
-
cpe:2.3:a:angularjs:angularjs:1.3.4
-
cpe:2.3:a:angularjs:angularjs:1.3.5
-
cpe:2.3:a:angularjs:angularjs:1.3.6
-
cpe:2.3:a:angularjs:angularjs:1.3.7
-
cpe:2.3:a:angularjs:angularjs:1.3.8
-
cpe:2.3:a:angularjs:angularjs:1.3.9
-
cpe:2.3:a:angularjs:angularjs:1.4.0
-
cpe:2.3:a:angularjs:angularjs:1.4.1
-
cpe:2.3:a:angularjs:angularjs:1.4.10
-
cpe:2.3:a:angularjs:angularjs:1.4.11
-
cpe:2.3:a:angularjs:angularjs:1.4.12
-
cpe:2.3:a:angularjs:angularjs:1.4.13
-
cpe:2.3:a:angularjs:angularjs:1.4.14
-
cpe:2.3:a:angularjs:angularjs:1.4.2
-
cpe:2.3:a:angularjs:angularjs:1.4.3
-
cpe:2.3:a:angularjs:angularjs:1.4.4
-
cpe:2.3:a:angularjs:angularjs:1.4.5
-
cpe:2.3:a:angularjs:angularjs:1.4.6
-
cpe:2.3:a:angularjs:angularjs:1.4.7
-
cpe:2.3:a:angularjs:angularjs:1.4.8
-
cpe:2.3:a:angularjs:angularjs:1.4.9
-
cpe:2.3:a:angularjs:angularjs:1.5.0
-
cpe:2.3:a:angularjs:angularjs:1.5.1
-
cpe:2.3:a:angularjs:angularjs:1.5.10
-
cpe:2.3:a:angularjs:angularjs:1.5.11
-
cpe:2.3:a:angularjs:angularjs:1.5.2
-
cpe:2.3:a:angularjs:angularjs:1.5.3
-
cpe:2.3:a:angularjs:angularjs:1.5.4
-
cpe:2.3:a:angularjs:angularjs:1.5.5
-
cpe:2.3:a:angularjs:angularjs:1.5.6
-
cpe:2.3:a:angularjs:angularjs:1.5.7
-
cpe:2.3:a:angularjs:angularjs:1.5.8
-
cpe:2.3:a:angularjs:angularjs:1.5.9
-
cpe:2.3:a:angularjs:angularjs:1.6.0
-
cpe:2.3:a:angularjs:angularjs:1.6.1
-
cpe:2.3:a:angularjs:angularjs:1.6.10
-
cpe:2.3:a:angularjs:angularjs:1.6.2
-
cpe:2.3:a:angularjs:angularjs:1.6.3
-
cpe:2.3:a:angularjs:angularjs:1.6.4
-
cpe:2.3:a:angularjs:angularjs:1.6.5
-
cpe:2.3:a:angularjs:angularjs:1.6.6
-
cpe:2.3:a:angularjs:angularjs:1.6.7
-
cpe:2.3:a:angularjs:angularjs:1.6.8
-
cpe:2.3:a:angularjs:angularjs:1.6.9
-
cpe:2.3:a:angularjs:angularjs:1.7.0
-
cpe:2.3:a:angularjs:angularjs:1.7.1
-
cpe:2.3:a:angularjs:angularjs:1.7.2
-
cpe:2.3:a:angularjs:angularjs:1.7.3
-
cpe:2.3:a:angularjs:angularjs:1.7.4
-
cpe:2.3:a:angularjs:angularjs:1.7.5
-
cpe:2.3:a:angularjs:angularjs:1.7.6
-
cpe:2.3:a:angularjs:angularjs:1.7.7
-
cpe:2.3:a:angularjs:angularjs:1.7.8
-
cpe:2.3:a:angularjs:angularjs:1.7.9
-
cpe:2.3:a:angularjs:angularjs:1.8.0
-
cpe:2.3:a:angularjs:angularjs:1.8.1
-
cpe:2.3:a:angularjs:angularjs:1.8.2
-
cpe:2.3:a:angularjs:angularjs:1.8.3
-
cpe:2.3:a:angularjs:angularjs:10.0.0
-
cpe:2.3:a:angularjs:angularjs:10.1.0
-
cpe:2.3:a:angularjs:angularjs:10.2.5
-
cpe:2.3:a:angularjs:angularjs:11.0.0
-
cpe:2.3:a:angularjs:angularjs:11.1.0
-
cpe:2.3:a:angularjs:angularjs:11.2.0
-
cpe:2.3:a:angularjs:angularjs:12.0.0
-
cpe:2.3:a:angularjs:angularjs:12.1.0
-
cpe:2.3:a:angularjs:angularjs:12.2.0
-
cpe:2.3:a:angularjs:angularjs:13.0.0
-
cpe:2.3:a:angularjs:angularjs:13.1.0
-
cpe:2.3:a:angularjs:angularjs:13.2.0
-
cpe:2.3:a:angularjs:angularjs:13.3.0
-
cpe:2.3:a:angularjs:angularjs:14.0.0
-
cpe:2.3:a:angularjs:angularjs:14.1.0
-
cpe:2.3:a:angularjs:angularjs:14.2.0
-
cpe:2.3:a:angularjs:angularjs:15.0.0
-
cpe:2.3:a:angularjs:angularjs:15.1.0
-
cpe:2.3:a:angularjs:angularjs:15.2.0
-
cpe:2.3:a:angularjs:angularjs:16.0.0
-
cpe:2.3:a:angularjs:angularjs:16.1.0
-
cpe:2.3:a:angularjs:angularjs:16.2.0
-
cpe:2.3:a:angularjs:angularjs:17.0.0
-
cpe:2.3:a:angularjs:angularjs:17.1.0
-
cpe:2.3:a:angularjs:angularjs:17.2.0
-
cpe:2.3:a:angularjs:angularjs:17.3.0
-
cpe:2.3:a:angularjs:angularjs:18.0.0
-
cpe:2.3:a:angularjs:angularjs:18.1.0
-
cpe:2.3:a:angularjs:angularjs:18.2.0
-
cpe:2.3:a:angularjs:angularjs:18.2.14
-
cpe:2.3:a:angularjs:angularjs:19.0.0
-
cpe:2.3:a:angularjs:angularjs:19.1.0
-
cpe:2.3:a:angularjs:angularjs:19.2.0
-
cpe:2.3:a:angularjs:angularjs:19.2.18
-
cpe:2.3:a:angularjs:angularjs:19.2.19
-
cpe:2.3:a:angularjs:angularjs:19.2.20
-
cpe:2.3:a:angularjs:angularjs:19.2.21
-
cpe:2.3:a:angularjs:angularjs:19.2.22
-
cpe:2.3:a:angularjs:angularjs:19.2.23
-
cpe:2.3:a:angularjs:angularjs:19.2.24
-
cpe:2.3:a:angularjs:angularjs:2.0.0
-
cpe:2.3:a:angularjs:angularjs:2.1.0
-
cpe:2.3:a:angularjs:angularjs:2.2.0
-
cpe:2.3:a:angularjs:angularjs:2.3.0
-
cpe:2.3:a:angularjs:angularjs:2.4.0
-
cpe:2.3:a:angularjs:angularjs:20.0.0
-
cpe:2.3:a:angularjs:angularjs:20.1.0
-
cpe:2.3:a:angularjs:angularjs:20.2.0
-
cpe:2.3:a:angularjs:angularjs:20.3.0
-
cpe:2.3:a:angularjs:angularjs:20.3.16
-
cpe:2.3:a:angularjs:angularjs:20.3.17
-
cpe:2.3:a:angularjs:angularjs:20.3.18
-
cpe:2.3:a:angularjs:angularjs:20.3.19
-
cpe:2.3:a:angularjs:angularjs:20.3.20
-
cpe:2.3:a:angularjs:angularjs:20.3.21
-
cpe:2.3:a:angularjs:angularjs:20.3.22
-
cpe:2.3:a:angularjs:angularjs:20.3.23
-
cpe:2.3:a:angularjs:angularjs:21.0.0
-
cpe:2.3:a:angularjs:angularjs:21.0.4
-
cpe:2.3:a:angularjs:angularjs:21.0.5
-
cpe:2.3:a:angularjs:angularjs:21.0.6
-
cpe:2.3:a:angularjs:angularjs:21.0.7
-
cpe:2.3:a:angularjs:angularjs:21.0.8
-
cpe:2.3:a:angularjs:angularjs:21.0.9
-
cpe:2.3:a:angularjs:angularjs:21.1.0
-
cpe:2.3:a:angularjs:angularjs:21.1.1
-
cpe:2.3:a:angularjs:angularjs:21.1.2
-
cpe:2.3:a:angularjs:angularjs:21.1.3
-
cpe:2.3:a:angularjs:angularjs:21.1.4
-
cpe:2.3:a:angularjs:angularjs:21.1.5
-
cpe:2.3:a:angularjs:angularjs:21.1.6
-
cpe:2.3:a:angularjs:angularjs:21.2.0
-
cpe:2.3:a:angularjs:angularjs:21.2.1
-
cpe:2.3:a:angularjs:angularjs:21.2.10
-
cpe:2.3:a:angularjs:angularjs:21.2.11
-
cpe:2.3:a:angularjs:angularjs:21.2.12
-
cpe:2.3:a:angularjs:angularjs:21.2.13
-
cpe:2.3:a:angularjs:angularjs:21.2.14
-
cpe:2.3:a:angularjs:angularjs:21.2.15
-
cpe:2.3:a:angularjs:angularjs:21.2.2
-
cpe:2.3:a:angularjs:angularjs:21.2.3
-
cpe:2.3:a:angularjs:angularjs:21.2.4
-
cpe:2.3:a:angularjs:angularjs:21.2.5
-
cpe:2.3:a:angularjs:angularjs:21.2.6
-
cpe:2.3:a:angularjs:angularjs:21.2.7
-
cpe:2.3:a:angularjs:angularjs:21.2.8
-
cpe:2.3:a:angularjs:angularjs:21.2.9
-
cpe:2.3:a:angularjs:angularjs:22.0.0
-
cpe:2.3:a:angularjs:angularjs:4.0.0
-
cpe:2.3:a:angularjs:angularjs:4.1.0
-
cpe:2.3:a:angularjs:angularjs:4.2.0
-
cpe:2.3:a:angularjs:angularjs:4.3.0
-
cpe:2.3:a:angularjs:angularjs:4.4.0
-
cpe:2.3:a:angularjs:angularjs:5.0.0
-
cpe:2.3:a:angularjs:angularjs:5.1.0
-
cpe:2.3:a:angularjs:angularjs:5.2.0
-
cpe:2.3:a:angularjs:angularjs:6.0.0
-
cpe:2.3:a:angularjs:angularjs:6.1.0
-
cpe:2.3:a:angularjs:angularjs:7.0.0
-
cpe:2.3:a:angularjs:angularjs:7.1.0
-
cpe:2.3:a:angularjs:angularjs:7.2.0
-
cpe:2.3:a:angularjs:angularjs:8.0.0
-
cpe:2.3:a:angularjs:angularjs:8.1.0
-
cpe:2.3:a:angularjs:angularjs:8.2.0
-
cpe:2.3:a:angularjs:angularjs:9.0.0
-
cpe:2.3:a:angularjs:angularjs:9.1.0