CVE-2026-52725
Description
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.15, 20.3.22, and 19.2.23, an issue in the @angular/core package allows bypassing script-execution restrictions during dynamic component creation. Specifically, the dynamic component instantiation mechanism (createComponent) failed to reject mounting components directly onto a <script> or namespaced script element (such as <svg:script>). This enabled the initialization of custom components on a tag that executes scripts, allowing attackers to hijack or inject script-executing hosts. This flaw enables an attacker who can control the host element or selector parameter passed to createComponent to initialize or mount an Angular component directly onto a <script> tag, leading to execution of untrusted code or client-side Cross-Site Scripting (XSS). This vulnerability is fixed in 22.0.0-rc.2, 21.2.15, 20.3.22, and 19.2.23.
How to fix
- angular angular19.2.23, 20.3.22, 21.2.15 or later
- @angular/core21.2.15, 22.0.0-rc.2, 19.2.23, 20.3.22 or later
Affected products
| Product | Affected versions | Fixed in |
|---|---|---|
| angular angular | v ≤ 18.2.14, 19.0.0 ≤ v < 19.2.23, 20.0.0 ≤ v < 20.3.22, 21.0.0 ≤ v < 21.2.15, 22.0.0 | 19.2.23, 20.3.22, 21.2.15 |
| @angular/corenpm | 21.0.0-next.0 ≤ v < 21.2.15, 22.0.0-next.0 ≤ v < 22.0.0-rc.2, 19.0.0-next.0 ≤ v < 19.2.23, v ≤ 18.2.14, 20.0.0-next.0 ≤ v < 20.3.22 | 21.2.15, 22.0.0-rc.2, 19.2.23, 20.3.22 |
Check your version
Choose the product and enter the version you run to see whether it falls in the affected range.
Attack Surface Management
See the assets tied to your domains, the technologies they run and known vulnerabilities in one list.