CVE-2025-59052
Angular SSR: Global Platform Injector Race Condition Leads to Cross-Request Data Leakage
Angular is a development platform for building mobile and desktop web applications using TypeScript/JavaScript and other languages. Angular uses a DI container (the "platform injector") to hold request-specific state during server-side rendering. For historical reasons, the container was stored as a JavaScript module-scoped global variable. When multiple requests are processed concurrently, they could inadvertently share or overwrite the global injector state. In practical terms, this can lead to one request responding with data meant for a completely different request, leaking data or tokens included on the rendered page or in response headers. As long as an attacker had network access to send any traffic that received a rendered response, they may have been able to send a large number of requests and then inspect the responses for information leaks. The APIs bootstrapApplication, getPlatform, and destroyPlatform were vulnerable and required SSR-only breaking changes.
The issue has been patched in all active release lines as well as in the v21 prerelease. Patched packages include @angular/platform-server 21.0.0-next.3, 20.3.0, 19.2.15, and 18.2.14 and @angular/ssr 21.0.0-next.3, 20.3.0, 19.2.16, and 18.2.21. Several workarounds are available. Disable SSR via Server Routes or builder options, remove any asynchronous behavior from custom bootstrap functions, remove uses of getPlatform() in application code, and/or ensure that the server build defines ngJitMode as false.
Attack profile
How easy it is to exploit
- Attack vector
- Network
- Complexity
- Low
- Privileges needed
- None
- User interaction
- Passive
What an attacker can affect
- Confidentiality
- High
- Integrity
- Low
- Availability
- None
Exploit likelihood
What each source reports
CVE List Score used 7.1
Angular SSR: Global Platform Injector Race Condition Leads to Cross-Request Data Leakage
Angular is a development platform for building mobile and desktop web applications using TypeScript/JavaScript and other languages. Angular uses a DI container (the "platform injector") to hold request-specific state during server-side rendering. For historical reasons, the container was stored as a JavaScript module-scoped global variable. When multiple requests are processed concurrently, they could inadvertently share or overwrite the global injector state. In practical terms, this can lead to one request responding with data meant for a completely different request, leaking data or tokens included on the rendered page or in response headers. As long as an attacker had network access to send any traffic that received a rendered response, they may have been able to send a large number of requests and then inspect the responses for information leaks. The APIs bootstrapApplication, getPlatform, and destroyPlatform were vulnerable and required SSR-only breaking changes.
The issue has been patched in all active release lines as well as in the v21 prerelease. Patched packages include @angular/platform-server 21.0.0-next.3, 20.3.0, 19.2.15, and 18.2.14 and @angular/ssr 21.0.0-next.3, 20.3.0, 19.2.16, and 18.2.21. Several workarounds are available. Disable SSR via Server Routes or builder options, remove any asynchronous behavior from custom bootstrap functions, remove uses of getPlatform() in application code, and/or ensure that the server build defines ngJitMode as false.
- Record
CVE-2025-59052- CVSS 4.0
- 7.1 High
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:P/VC:H/VI:L/VA:N/SC:N/SI:N/SA:N - Weakness
- CWE-362
- Updated
- 2026-11-02
EUVDEUVD-2025-33972 7.1
Angular is a development platform for building mobile and desktop web applications using TypeScript/JavaScript and other languages. Angular uses a DI container (the "platform injector") to hold request-specific state during server-side rendering. For historical reasons, the container was stored as a JavaScript module-scoped global variable. When multiple requests are processed concurrently, they could inadvertently share or overwrite the global injector state. In practical terms, this can lead to one request responding with data meant for a completely different request, leaking data or tokens included on the rendered page or in response headers. As long as an attacker had network access to send any traffic that received a rendered response, they may have been able to send a large number of requests and then inspect the responses for information leaks. The APIs bootstrapApplication, getPlatform, and destroyPlatform were vulnerable and required SSR-only breaking changes.
The issue has been patched in all active release lines as well as in the v21 prerelease. Patched packages include @angular/platform-server 21.0.0-next.3, 20.3.0, 19.2.15, and 18.2.14 and @angular/ssr 21.0.0-next.3, 20.3.0, 19.2.16, and 18.2.21. Several workarounds are available. Disable SSR via Server Routes or builder options, remove any asynchronous behavior from custom bootstrap functions, remove uses of getPlatform() in application code, and/or ensure that the server build defines ngJitMode as false.
- Record
EUVD-2025-33972- CVSS 4.0
- 7.1 High
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:P/VC:H/VI:L/VA:N/SC:N/SI:N/SA:N - Updated
- 2026-11-02
GitHub AdvisoriesGHSA-68x2-mx4q-78m7 7.1
Angular SSR: Global Platform Injector Race Condition Leads to Cross-Request Data Leakage
Impact
Angular uses a DI container (the "platform injector") to hold request-specific state during server-side rendering. For historical reasons, the container was stored as a JavaScript module-scoped global variable. When multiple requests are processed concurrently, they could inadvertently share or overwrite the global injector state.
In practical terms, this can lead to one request responding with data meant for a completely different request, leaking data or tokens included on the rendered page or in response headers. As long as an attacker had network access to send any traffic that received a rendered response, they may have been able to send a large number of requests and then inspect the responses for information leaks.
The following APIs were vulnerable and required SSR-only breaking changes:
bootstrapApplication: This function previously implicitly retrieved the last platform injector that was created. It now requires an explicitBootstrapContextin a server environment. This function is only used for standalone applications. NgModule-based applications are not affected.getPlatform: This function previously returned the last platform instance that was created. It now always returnsnullin a server environment.destroyPlatform: This function previously destroyed the last platform instance that was created. It's now a no-op when called in a server environment.
For bootstrapApplication, the framework now provides a new argument to the application's bootstrap function:
// Before:
const bootstrap = () => bootstrapApplication(AppComponent, config);
// After:
const bootstrap = (context: BootstrapContext) =>
bootstrapApplication(AppComponent, config, context);
As is usually the case for changes to Angular, an automatic schematic will take care of these code changes as part of ng update:
# For apps on Angular v20:
ng update @angular/cli @angular/core
# For apps on Angular v19:
ng update @angular/cli@19 @angular/core@19
# For apps on Angular v18:
ng update @angular/cli@18 @angular/core@18
The schematic can also be invoked explicitly if the version bump was pulled in independently:
# For apps on Angular v20:
ng update @angular/core --name add-bootstrap-context-to-server-main
# For apps on Angular v19:
ng update @angular/core@19 --name add-bootstrap-context-to-server-main
# For apps on Angular v18:
ng update @angular/core@18 --name add-bootstrap-context-to-server-main
For applications that still use CommonEngine, the bootstrap property in CommonEngineOptions also gains the same context argument in the patched versions of Angular.
In local development (ng serve), Angular CLI triggered a codepath for Angular's "JIT" feature on the server even in applications that weren't using it in the browser. The codepath introduced async behavior between platform creation and application bootstrap, triggering the race condition even if an application didn't explicitly use getPlatform or custom async logic in bootstrap. Angular applications should never run in this mode outside of local development.
Patches
The issue has been patched in all active release lines as well as in the v21 prerelease:
@angular/platform-server: 21.0.0-next.3@angular/platform-server: 20.3.0@angular/platform-server: 19.2.15@angular/platform-server:18.2.14@angular/ssr: 21.0.0-next.3@angular/ssr: 20.3.0@angular/ssr: 19.2.16@angular/ssr: 18.2.21
Workarounds
- Disable SSR via Server Routes (v19+) or builder options.
- Remove any asynchronous behavior from custom
bootstrapfunctions. - Remove uses of
getPlatform()in application code. - Ensure that the server build defines
ngJitModeas false.
References
- Record
GHSA-68x2-mx4q-78m7- CVSS 4.0
- 7.1 High
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:P/VC:H/VI:L/VA:N/SC:N/SI:N/SA:N - Weakness
- CWE-362
- Updated
- 2026-11-02
NVD 7.1
Angular is a development platform for building mobile and desktop web applications using TypeScript/JavaScript and other languages. Angular uses a DI container (the "platform injector") to hold request-specific state during server-side rendering. For historical reasons, the container was stored as a JavaScript module-scoped global variable. When multiple requests are processed concurrently, they could inadvertently share or overwrite the global injector state. In practical terms, this can lead to one request responding with data meant for a completely different request, leaking data or tokens included on the rendered page or in response headers. As long as an attacker had network access to send any traffic that received a rendered response, they may have been able to send a large number of requests and then inspect the responses for information leaks. The APIs bootstrapApplication, getPlatform, and destroyPlatform were vulnerable and required SSR-only breaking changes.
The issue has been patched in all active release lines as well as in the v21 prerelease. Patched packages include @angular/platform-server 21.0.0-next.3, 20.3.0, 19.2.15, and 18.2.14 and @angular/ssr 21.0.0-next.3, 20.3.0, 19.2.16, and 18.2.21. Several workarounds are available. Disable SSR via Server Routes or builder options, remove any asynchronous behavior from custom bootstrap functions, remove uses of getPlatform() in application code, and/or ensure that the server build defines ngJitMode as false.
- Record
CVE-2025-59052- CVSS 4.0
- 7.1 High
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:P/VC:H/VI:L/VA:N/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X - Weakness
- CWE-362
- Updated
- 2026-11-02
OSVGHSA-68x2-mx4q-78m7 7.1
Angular SSR: Global Platform Injector Race Condition Leads to Cross-Request Data Leakage
Impact
Angular uses a DI container (the "platform injector") to hold request-specific state during server-side rendering. For historical reasons, the container was stored as a JavaScript module-scoped global variable. When multiple requests are processed concurrently, they could inadvertently share or overwrite the global injector state.
In practical terms, this can lead to one request responding with data meant for a completely different request, leaking data or tokens included on the rendered page or in response headers. As long as an attacker had network access to send any traffic that received a rendered response, they may have been able to send a large number of requests and then inspect the responses for information leaks.
The following APIs were vulnerable and required SSR-only breaking changes:
bootstrapApplication: This function previously implicitly retrieved the last platform injector that was created. It now requires an explicitBootstrapContextin a server environment. This function is only used for standalone applications. NgModule-based applications are not affected.getPlatform: This function previously returned the last platform instance that was created. It now always returnsnullin a server environment.destroyPlatform: This function previously destroyed the last platform instance that was created. It's now a no-op when called in a server environment.
For bootstrapApplication, the framework now provides a new argument to the application's bootstrap function:
// Before:
const bootstrap = () => bootstrapApplication(AppComponent, config);
// After:
const bootstrap = (context: BootstrapContext) =>
bootstrapApplication(AppComponent, config, context);
As is usually the case for changes to Angular, an automatic schematic will take care of these code changes as part of ng update:
# For apps on Angular v20:
ng update @angular/cli @angular/core
# For apps on Angular v19:
ng update @angular/cli@19 @angular/core@19
# For apps on Angular v18:
ng update @angular/cli@18 @angular/core@18
The schematic can also be invoked explicitly if the version bump was pulled in independently:
# For apps on Angular v20:
ng update @angular/core --name add-bootstrap-context-to-server-main
# For apps on Angular v19:
ng update @angular/core@19 --name add-bootstrap-context-to-server-main
# For apps on Angular v18:
ng update @angular/core@18 --name add-bootstrap-context-to-server-main
For applications that still use CommonEngine, the bootstrap property in CommonEngineOptions also gains the same context argument in the patched versions of Angular.
In local development (ng serve), Angular CLI triggered a codepath for Angular's "JIT" feature on the server even in applications that weren't using it in the browser. The codepath introduced async behavior between platform creation and application bootstrap, triggering the race condition even if an application didn't explicitly use getPlatform or custom async logic in bootstrap. Angular applications should never run in this mode outside of local development.
Patches
The issue has been patched in all active release lines as well as in the v21 prerelease:
@angular/platform-server: 21.0.0-next.3@angular/platform-server: 20.3.0@angular/platform-server: 19.2.15@angular/platform-server:18.2.14@angular/ssr: 21.0.0-next.3@angular/ssr: 20.3.0@angular/ssr: 19.2.16@angular/ssr: 18.2.21
Workarounds
- Disable SSR via Server Routes (v19+) or builder options.
- Remove any asynchronous behavior from custom
bootstrapfunctions. - Remove uses of
getPlatform()in application code. - Ensure that the server build defines
ngJitModeas false.
References
- Record
GHSA-68x2-mx4q-78m7- CVSS 4.0
- 7.1 High
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:P/VC:H/VI:L/VA:N/SC:N/SI:N/SA:N - Weakness
- CWE-362
- Updated
- 2026-11-02
OSVCLSA-2026-1775176179No score
TuxCare security update for @angular (2 CVEs)
TuxCare rebuilt 3 @angular packages to address 2 CVEs. Fixed in 17.3.12-tuxcare.3.
- Record
CLSA-2026-1775176179- Updated
- 2026-11-02
Show 48 moreShow less
OSVCLSA-2026-1783126874No score
TuxCare security update for @angular (17 CVEs)
TuxCare rebuilt 3 @angular packages to address 17 CVEs. Fixed in 17.1.0-tuxcare.2.
- Record
CLSA-2026-1783126874- Updated
- 2026-11-02
OSVCLSA-2026-1789403396No score
TuxCare security update for @angular (5 CVEs)
TuxCare rebuilt 2 @angular packages to address 5 CVEs. Fixed in 19.2.25-tuxcare.1.
- Record
CLSA-2026-1789403396- Updated
- 2026-11-02
OSVCLSA-2026-1792160916No score
TuxCare security update for @angular/animations (2 CVEs)
TuxCare rebuilt @angular/animations to address 2 CVEs. Fixed in 16.2.12-tuxcare.2.
- Record
CLSA-2026-1792160916- Updated
- 2026-11-02
OSVCLSA-2026-1792161110No score
TuxCare security update for @angular/animations (2 CVEs)
TuxCare rebuilt @angular/animations to address 2 CVEs. Fixed in 17.3.12-tuxcare.3.
- Record
CLSA-2026-1792161110- Updated
- 2026-11-02
OSVCLSA-2026-1792161229No score
TuxCare security update for @angular/animations (12 CVEs)
TuxCare rebuilt @angular/animations to address 12 CVEs. Fixed in 17.1.0-tuxcare.2.
- Record
CLSA-2026-1792161229- Updated
- 2026-11-02
OSVCLSA-2026-1792161304No score
TuxCare security update for @angular/animations (1 CVE)
TuxCare rebuilt @angular/animations to address 1 CVE. Fixed in 19.2.25-tuxcare.1.
- Record
CLSA-2026-1792161304- Updated
- 2026-11-02
OSVCLSA-2026-1792163494No score
TuxCare security update for @angular/router (1 CVE)
TuxCare rebuilt @angular/router to address 1 CVE. Fixed in 16.2.12-tuxcare.2.
- Record
CLSA-2026-1792163494- Updated
- 2026-11-02
OSVCLSA-2026-1792163497No score
TuxCare security update for @angular/router (1 CVE)
TuxCare rebuilt @angular/router to address 1 CVE. Fixed in 17.3.12-tuxcare.3.
- Record
CLSA-2026-1792163497- Updated
- 2026-11-02
OSVCLSA-2026-1792163620No score
TuxCare security update for @angular/router (8 CVEs)
TuxCare rebuilt @angular/router to address 8 CVEs. Fixed in 17.1.0-tuxcare.2.
- Record
CLSA-2026-1792163620- Updated
- 2026-11-02
OSVCLSA-2026-1792163696No score
TuxCare security update for @angular/router (1 CVE)
TuxCare rebuilt @angular/router to address 1 CVE. Fixed in 19.2.25-tuxcare.1.
- Record
CLSA-2026-1792163696- Updated
- 2026-11-02
OSVCLSA-2026-1792208137No score
TuxCare security update for @angular/upgrade (8 CVEs)
TuxCare rebuilt @angular/upgrade to address 8 CVEs. Fixed in 17.1.0-tuxcare.2.
- Record
CLSA-2026-1792208137- Updated
- 2026-11-02
OSVCLSA-2026-1792208173No score
TuxCare security update for @angular/upgrade (1 CVE)
TuxCare rebuilt @angular/upgrade to address 1 CVE. Fixed in 19.2.25-tuxcare.1.
- Record
CLSA-2026-1792208173- Updated
- 2026-11-02
OSVCLSA-2026-1792208456No score
TuxCare security update for @angular/upgrade (1 CVE)
TuxCare rebuilt @angular/upgrade to address 1 CVE. Fixed in 17.3.12-tuxcare.3.
- Record
CLSA-2026-1792208456- Updated
- 2026-11-02
OSVCLSA-2026-1792208538No score
TuxCare security update for @angular/upgrade (1 CVE)
TuxCare rebuilt @angular/upgrade to address 1 CVE. Fixed in 16.2.12-tuxcare.2.
- Record
CLSA-2026-1792208538- Updated
- 2026-11-02
OSVCLSA-2026-1792250259No score
TuxCare security update for @angular/compiler (5 CVEs)
TuxCare rebuilt @angular/compiler to address 5 CVEs. Fixed in 19.2.25-tuxcare.1.
- Record
CLSA-2026-1792250259- Updated
- 2026-11-02
OSVCLSA-2026-1792250523No score
TuxCare security update for @angular/compiler (2 CVEs)
TuxCare rebuilt @angular/compiler to address 2 CVEs. Fixed in 16.2.12-tuxcare.2.
- Record
CLSA-2026-1792250523- Updated
- 2026-11-02
OSVCLSA-2026-1792250593No score
TuxCare security update for @angular/compiler (2 CVEs)
TuxCare rebuilt @angular/compiler to address 2 CVEs. Fixed in 17.3.12-tuxcare.3.
- Record
CLSA-2026-1792250593- Updated
- 2026-11-02
OSVCLSA-2026-1792251053No score
TuxCare security update for @angular/compiler (3 CVEs)
TuxCare rebuilt @angular/compiler to address 3 CVEs. Fixed in 17.1.0-tuxcare.2.
- Record
CLSA-2026-1792251053- Updated
- 2026-11-10
OSVCLSA-2026-1792281818No score
TuxCare security update for @angular/common (1 CVE)
TuxCare rebuilt @angular/common to address 1 CVE. Fixed in 17.3.12-tuxcare.3.
- Record
CLSA-2026-1792281818- Updated
- 2026-11-10
OSVCLSA-2026-1792325425No score
TuxCare security update for @angular/compiler-cli (5 CVEs)
TuxCare rebuilt @angular/compiler-cli to address 5 CVEs. Fixed in 19.2.25-tuxcare.1.
- Record
CLSA-2026-1792325425- Updated
- 2026-11-02
OSVCLSA-2026-1792325931No score
TuxCare security update for @angular/compiler-cli (2 CVEs)
TuxCare rebuilt @angular/compiler-cli to address 2 CVEs. Fixed in 16.2.12-tuxcare.2.
- Record
CLSA-2026-1792325931- Updated
- 2026-11-02
OSVCLSA-2026-1792325968No score
TuxCare security update for @angular/compiler-cli (15 CVEs)
TuxCare rebuilt @angular/compiler-cli to address 15 CVEs. Fixed in 17.1.0-tuxcare.2.
- Record
CLSA-2026-1792325968- Updated
- 2026-11-02
OSVCLSA-2026-1792326063No score
TuxCare security update for @angular/compiler-cli (2 CVEs)
TuxCare rebuilt @angular/compiler-cli to address 2 CVEs. Fixed in 17.3.12-tuxcare.3.
- Record
CLSA-2026-1792326063- Updated
- 2026-11-02
OSVCLSA-2026-1792345281No score
TuxCare security update for @angular/core (5 CVEs)
TuxCare rebuilt @angular/core to address 5 CVEs. Fixed in 19.2.25-tuxcare.1.
- Record
CLSA-2026-1792345281- Updated
- 2026-11-02
OSVCLSA-2026-1792345688No score
TuxCare security update for @angular/core (2 CVEs)
TuxCare rebuilt @angular/core to address 2 CVEs. Fixed in 17.3.12-tuxcare.3.
- Record
CLSA-2026-1792345688- Updated
- 2026-11-02
OSVCLSA-2026-1792345707No score
TuxCare security update for @angular/core (2 CVEs)
TuxCare rebuilt @angular/core to address 2 CVEs. Fixed in 16.2.12-tuxcare.2.
- Record
CLSA-2026-1792345707- Updated
- 2026-11-02
OSVCLSA-2026-1792357214No score
TuxCare security update for @angular/elements (2 CVEs)
TuxCare rebuilt @angular/elements to address 2 CVEs. Fixed in 17.3.12-tuxcare.3.
- Record
CLSA-2026-1792357214- Updated
- 2026-11-02
OSVCLSA-2026-1792357295No score
TuxCare security update for @angular/elements (12 CVEs)
TuxCare rebuilt @angular/elements to address 12 CVEs. Fixed in 17.1.0-tuxcare.2.
- Record
CLSA-2026-1792357295- Updated
- 2026-11-02
OSVCLSA-2026-1792357347No score
TuxCare security update for @angular/elements (5 CVEs)
TuxCare rebuilt @angular/elements to address 5 CVEs. Fixed in 19.2.25-tuxcare.1.
- Record
CLSA-2026-1792357347- Updated
- 2026-11-02
OSVCLSA-2026-1792358062No score
TuxCare security update for @angular/elements (2 CVEs)
TuxCare rebuilt @angular/elements to address 2 CVEs. Fixed in 16.2.12-tuxcare.2.
- Record
CLSA-2026-1792358062- Updated
- 2026-11-02
OSVCLSA-2026-1792366618No score
TuxCare security update for @angular/forms (1 CVE)
TuxCare rebuilt @angular/forms to address 1 CVE. Fixed in 19.2.25-tuxcare.1.
- Record
CLSA-2026-1792366618- Updated
- 2026-11-02
OSVCLSA-2026-1792366913No score
TuxCare security update for @angular/forms (1 CVE)
TuxCare rebuilt @angular/forms to address 1 CVE. Fixed in 17.3.12-tuxcare.3.
- Record
CLSA-2026-1792366913- Updated
- 2026-11-02
OSVCLSA-2026-1792366944No score
TuxCare security update for @angular/forms (8 CVEs)
TuxCare rebuilt @angular/forms to address 8 CVEs. Fixed in 17.1.0-tuxcare.2.
- Record
CLSA-2026-1792366944- Updated
- 2026-11-02
OSVCLSA-2026-1792366967No score
TuxCare security update for @angular/forms (1 CVE)
TuxCare rebuilt @angular/forms to address 1 CVE. Fixed in 16.2.12-tuxcare.2.
- Record
CLSA-2026-1792366967- Updated
- 2026-11-02
OSVCLSA-2026-1792371632No score
TuxCare security update for @angular/localize (15 CVEs)
TuxCare rebuilt @angular/localize to address 15 CVEs. Fixed in 17.1.0-tuxcare.2.
- Record
CLSA-2026-1792371632- Updated
- 2026-11-02
OSVCLSA-2026-1792371663No score
TuxCare security update for @angular/localize (5 CVEs)
TuxCare rebuilt @angular/localize to address 5 CVEs. Fixed in 19.2.25-tuxcare.1.
- Record
CLSA-2026-1792371663- Updated
- 2026-11-02
OSVCLSA-2026-1792372002No score
TuxCare security update for @angular/localize (2 CVEs)
TuxCare rebuilt @angular/localize to address 2 CVEs. Fixed in 16.2.12-tuxcare.2.
- Record
CLSA-2026-1792372002- Updated
- 2026-11-02
OSVCLSA-2026-1792372051No score
TuxCare security update for @angular/localize (2 CVEs)
TuxCare rebuilt @angular/localize to address 2 CVEs. Fixed in 17.3.12-tuxcare.3.
- Record
CLSA-2026-1792372051- Updated
- 2026-11-02
OSVCLSA-2026-1792375741No score
TuxCare security update for @angular/platform-browser (8 CVEs)
TuxCare rebuilt @angular/platform-browser to address 8 CVEs. Fixed in 17.1.0-tuxcare.2.
- Record
CLSA-2026-1792375741- Updated
- 2026-11-02
OSVCLSA-2026-1792375776No score
TuxCare security update for @angular/platform-browser (1 CVE)
TuxCare rebuilt @angular/platform-browser to address 1 CVE. Fixed in 19.2.25-tuxcare.1.
- Record
CLSA-2026-1792375776- Updated
- 2026-11-02
OSVCLSA-2026-1792376111No score
TuxCare security update for @angular/platform-browser (1 CVE)
TuxCare rebuilt @angular/platform-browser to address 1 CVE. Fixed in 17.3.12-tuxcare.3.
- Record
CLSA-2026-1792376111- Updated
- 2026-11-02
OSVCLSA-2026-1792376112No score
TuxCare security update for @angular/platform-browser (1 CVE)
TuxCare rebuilt @angular/platform-browser to address 1 CVE. Fixed in 16.2.12-tuxcare.2.
- Record
CLSA-2026-1792376112- Updated
- 2026-11-02
OSVCLSA-2026-1792380005No score
TuxCare security update for @angular/platform-server (5 CVEs)
TuxCare rebuilt @angular/platform-server to address 5 CVEs. Fixed in 17.1.0-tuxcare.2.
- Record
CLSA-2026-1792380005- Updated
- 2026-11-10
OSVCLSA-2026-1792380053No score
TuxCare security update for @angular/platform-server (1 CVE)
TuxCare rebuilt @angular/platform-server to address 1 CVE. Fixed in 19.2.25-tuxcare.1.
- Record
CLSA-2026-1792380053- Updated
- 2026-11-02
OSVCLSA-2026-1792380385No score
TuxCare security update for @angular/platform-server (1 CVE)
TuxCare rebuilt @angular/platform-server to address 1 CVE. Fixed in 17.3.12-tuxcare.3.
- Record
CLSA-2026-1792380385- Updated
- 2026-11-02
OSVCLSA-2026-1792380407No score
TuxCare security update for @angular/platform-server (1 CVE)
TuxCare rebuilt @angular/platform-server to address 1 CVE. Fixed in 16.2.12-tuxcare.2.
- Record
CLSA-2026-1792380407- Updated
- 2026-11-02
OSVCLSA-2026-1792382652No score
TuxCare security update for @angular/platform-browser-dynamic (1 CVE)
TuxCare rebuilt @angular/platform-browser-dynamic to address 1 CVE. Fixed in 19.2.25-tuxcare.1.
- Record
CLSA-2026-1792382652- Updated
- 2026-11-02
OSVCLSA-2026-1792382945No score
TuxCare security update for @angular/platform-browser-dynamic (1 CVE)
TuxCare rebuilt @angular/platform-browser-dynamic to address 1 CVE. Fixed in 16.2.12-tuxcare.2.
- Record
CLSA-2026-1792382945- Updated
- 2026-11-02
Affected products
Affected packages
| Package | Affected | Fixed |
|---|---|---|
@angular/platform-servernpm | 16.0.0-next.0 up to 18.2.14 | 18.2.14 |
@angular/platform-servernpm | 20.0.0-next.0 up to 20.3.0 | 20.3.0 |
@angular/platform-servernpm | 19.0.0-next.0 up to 19.2.15 | 19.2.15 |
@angular/platform-servernpm | 21.0.0-next.0 up to 21.0.0-next.3 | 21.0.0-next.3 |
@angular/ssrnpm | 17.0.0-next.0 up to 18.2.21 | 18.2.21 |
@angular/ssrnpm | 19.0.0-next.0 up to 19.2.16 | 19.2.16 |
@angular/ssrnpm | 20.0.0-next.0 up to 20.3.0 | 20.3.0 |
@angular/ssrnpm | 21.0.0-next.0 up to 21.0.0-next.3 | 21.0.0-next.3 |
@nguniversal/commonnpm | 16.0.0-next.0 to 16.2.0 | None known |
@angular/bazelTuxCare:npm From an advisory covering 2 CVEs | 17.3.12-tuxcare.0 up to 17.3.12-tuxcare.3, plus listed versions 17.3.1217.3.12-tuxcare.117.3.12-tuxcare.2 | 17.3.12-tuxcare.3 |
Show 58 moreShow less
| Package | Affected | Fixed |
|---|---|---|
@angular/benchpressTuxCare:npm From an advisory covering 2 CVEs | 17.3.12-tuxcare.0 up to 17.3.12-tuxcare.3, plus listed versions 17.3.1217.3.12-tuxcare.117.3.12-tuxcare.2 | 17.3.12-tuxcare.3 |
@angular/language-serviceTuxCare:npm From an advisory covering 2 CVEs | 17.3.12-tuxcare.0 up to 17.3.12-tuxcare.3, plus listed versions 17.3.1217.3.12-tuxcare.117.3.12-tuxcare.2 | 17.3.12-tuxcare.3 |
@angular/bazelTuxCare:npm From an advisory covering 17 CVEs | 17.1.0-tuxcare.0 up to 17.1.0-tuxcare.2, plus listed versions 17.1.017.1.0-tuxcare.1 | 17.1.0-tuxcare.2 |
@angular/benchpressTuxCare:npm From an advisory covering 17 CVEs | 17.1.0-tuxcare.0 up to 17.1.0-tuxcare.2, plus listed versions 17.1.017.1.0-tuxcare.1 | 17.1.0-tuxcare.2 |
@angular/language-serviceTuxCare:npm From an advisory covering 17 CVEs | 17.1.0-tuxcare.0 up to 17.1.0-tuxcare.2, plus listed versions 17.1.017.1.0-tuxcare.1 | 17.1.0-tuxcare.2 |
@angular/bazelTuxCare:npm From an advisory covering 5 CVEs | 19.2.25-tuxcare.0 up to 19.2.25-tuxcare.1, plus listed versions 19.2.25 | 19.2.25-tuxcare.1 |
@angular/language-serviceTuxCare:npm From an advisory covering 5 CVEs | 19.2.25-tuxcare.0 up to 19.2.25-tuxcare.1, plus listed versions 19.2.25 | 19.2.25-tuxcare.1 |
@angular/animationsTuxCare:npm From an advisory covering 2 CVEs | 16.2.12-tuxcare.0 up to 16.2.12-tuxcare.2, plus listed versions 16.2.1216.2.12-tuxcare.1 | 16.2.12-tuxcare.2 |
@angular/animationsTuxCare:npm From an advisory covering 2 CVEs | 17.3.12-tuxcare.0 up to 17.3.12-tuxcare.3, plus listed versions 17.3.1217.3.12-tuxcare.117.3.12-tuxcare.2 | 17.3.12-tuxcare.3 |
@angular/animationsTuxCare:npm From an advisory covering 12 CVEs | 17.1.0-tuxcare.0 up to 17.1.0-tuxcare.2, plus listed versions 17.1.017.1.0-tuxcare.1 | 17.1.0-tuxcare.2 |
@angular/animationsTuxCare:npm | 19.2.25-tuxcare.0 up to 19.2.25-tuxcare.1, plus listed versions 19.2.25 | 19.2.25-tuxcare.1 |
@angular/routerTuxCare:npm | 16.2.12-tuxcare.0 up to 16.2.12-tuxcare.2, plus listed versions 16.2.1216.2.12-tuxcare.1 | 16.2.12-tuxcare.2 |
@angular/routerTuxCare:npm | 17.3.12-tuxcare.0 up to 17.3.12-tuxcare.3, plus listed versions 17.3.1217.3.12-tuxcare.117.3.12-tuxcare.2 | 17.3.12-tuxcare.3 |
@angular/routerTuxCare:npm From an advisory covering 8 CVEs | 17.1.0-tuxcare.0 up to 17.1.0-tuxcare.2, plus listed versions 17.1.017.1.0-tuxcare.1 | 17.1.0-tuxcare.2 |
@angular/routerTuxCare:npm | 19.2.25-tuxcare.0 up to 19.2.25-tuxcare.1, plus listed versions 19.2.25 | 19.2.25-tuxcare.1 |
@angular/upgradeTuxCare:npm From an advisory covering 8 CVEs | 17.1.0-tuxcare.0 up to 17.1.0-tuxcare.2, plus listed versions 17.1.017.1.0-tuxcare.1 | 17.1.0-tuxcare.2 |
@angular/upgradeTuxCare:npm | 19.2.25-tuxcare.0 up to 19.2.25-tuxcare.1, plus listed versions 19.2.25 | 19.2.25-tuxcare.1 |
@angular/upgradeTuxCare:npm | 17.3.12-tuxcare.0 up to 17.3.12-tuxcare.3, plus listed versions 17.3.1217.3.12-tuxcare.117.3.12-tuxcare.2 | 17.3.12-tuxcare.3 |
@angular/upgradeTuxCare:npm | 16.2.12-tuxcare.0 up to 16.2.12-tuxcare.2, plus listed versions 16.2.1216.2.12-tuxcare.1 | 16.2.12-tuxcare.2 |
@angular/compilerTuxCare:npm From an advisory covering 5 CVEs | 19.2.25-tuxcare.0 up to 19.2.25-tuxcare.1, plus listed versions 19.2.25 | 19.2.25-tuxcare.1 |
@angular/compilerTuxCare:npm From an advisory covering 2 CVEs | 16.2.12-tuxcare.0 up to 16.2.12-tuxcare.2, plus listed versions 16.2.1216.2.12-tuxcare.1 | 16.2.12-tuxcare.2 |
@angular/compilerTuxCare:npm From an advisory covering 2 CVEs | 17.3.12-tuxcare.0 up to 17.3.12-tuxcare.3, plus listed versions 17.3.1217.3.12-tuxcare.117.3.12-tuxcare.2 | 17.3.12-tuxcare.3 |
@angular/compilerTuxCare:npm From an advisory covering 15 CVEs | 17.1.0-tuxcare.0 up to 17.1.0-tuxcare.2, plus listed versions 17.1.017.1.0-tuxcare.1 | 17.1.0-tuxcare.2 |
@angular/commonTuxCare:npm From an advisory covering 2 CVEs | 17.3.12-tuxcare.0 up to 17.3.12-tuxcare.3, plus listed versions 17.3.1217.3.12-tuxcare.117.3.12-tuxcare.2 | 17.3.12-tuxcare.3 |
@angular/compiler-cliTuxCare:npm From an advisory covering 5 CVEs | 19.2.25-tuxcare.0 up to 19.2.25-tuxcare.1, plus listed versions 19.2.25 | 19.2.25-tuxcare.1 |
@angular/compiler-cliTuxCare:npm From an advisory covering 2 CVEs | 16.2.12-tuxcare.0 up to 16.2.12-tuxcare.2, plus listed versions 16.2.1216.2.12-tuxcare.1 | 16.2.12-tuxcare.2 |
@angular/compiler-cliTuxCare:npm From an advisory covering 15 CVEs | 17.1.0-tuxcare.0 up to 17.1.0-tuxcare.2, plus listed versions 17.1.017.1.0-tuxcare.1 | 17.1.0-tuxcare.2 |
@angular/compiler-cliTuxCare:npm From an advisory covering 2 CVEs | 17.3.12-tuxcare.0 up to 17.3.12-tuxcare.3, plus listed versions 17.3.1217.3.12-tuxcare.117.3.12-tuxcare.2 | 17.3.12-tuxcare.3 |
@angular/coreTuxCare:npm From an advisory covering 5 CVEs | 19.2.25-tuxcare.0 up to 19.2.25-tuxcare.1, plus listed versions 19.2.25 | 19.2.25-tuxcare.1 |
@angular/coreTuxCare:npm From an advisory covering 2 CVEs | 17.3.12-tuxcare.0 up to 17.3.12-tuxcare.3, plus listed versions 17.3.1217.3.12-tuxcare.117.3.12-tuxcare.2 | 17.3.12-tuxcare.3 |
@angular/coreTuxCare:npm From an advisory covering 2 CVEs | 16.2.12-tuxcare.0 up to 16.2.12-tuxcare.2, plus listed versions 16.2.1216.2.12-tuxcare.1 | 16.2.12-tuxcare.2 |
@angular/elementsTuxCare:npm From an advisory covering 2 CVEs | 17.3.12-tuxcare.0 up to 17.3.12-tuxcare.3, plus listed versions 17.3.1217.3.12-tuxcare.117.3.12-tuxcare.2 | 17.3.12-tuxcare.3 |
@angular/elementsTuxCare:npm From an advisory covering 12 CVEs | 17.1.0-tuxcare.0 up to 17.1.0-tuxcare.2, plus listed versions 17.1.017.1.0-tuxcare.1 | 17.1.0-tuxcare.2 |
@angular/elementsTuxCare:npm From an advisory covering 5 CVEs | 19.2.25-tuxcare.0 up to 19.2.25-tuxcare.1, plus listed versions 19.2.25 | 19.2.25-tuxcare.1 |
@angular/elementsTuxCare:npm From an advisory covering 2 CVEs | 16.2.12-tuxcare.0 up to 16.2.12-tuxcare.2, plus listed versions 16.2.1216.2.12-tuxcare.1 | 16.2.12-tuxcare.2 |
@angular/formsTuxCare:npm | 19.2.25-tuxcare.0 up to 19.2.25-tuxcare.1, plus listed versions 19.2.25 | 19.2.25-tuxcare.1 |
@angular/formsTuxCare:npm | 17.3.12-tuxcare.0 up to 17.3.12-tuxcare.3, plus listed versions 17.3.1217.3.12-tuxcare.117.3.12-tuxcare.2 | 17.3.12-tuxcare.3 |
@angular/formsTuxCare:npm From an advisory covering 8 CVEs | 17.1.0-tuxcare.0 up to 17.1.0-tuxcare.2, plus listed versions 17.1.017.1.0-tuxcare.1 | 17.1.0-tuxcare.2 |
@angular/formsTuxCare:npm | 16.2.12-tuxcare.0 up to 16.2.12-tuxcare.2, plus listed versions 16.2.1216.2.12-tuxcare.1 | 16.2.12-tuxcare.2 |
@angular/localizeTuxCare:npm From an advisory covering 15 CVEs | 17.1.0-tuxcare.0 up to 17.1.0-tuxcare.2, plus listed versions 17.1.017.1.0-tuxcare.1 | 17.1.0-tuxcare.2 |
@angular/localizeTuxCare:npm From an advisory covering 5 CVEs | 19.2.25-tuxcare.0 up to 19.2.25-tuxcare.1, plus listed versions 19.2.25 | 19.2.25-tuxcare.1 |
@angular/localizeTuxCare:npm From an advisory covering 2 CVEs | 16.2.12-tuxcare.0 up to 16.2.12-tuxcare.2, plus listed versions 16.2.1216.2.12-tuxcare.1 | 16.2.12-tuxcare.2 |
@angular/localizeTuxCare:npm From an advisory covering 2 CVEs | 17.3.12-tuxcare.0 up to 17.3.12-tuxcare.3, plus listed versions 17.3.1217.3.12-tuxcare.117.3.12-tuxcare.2 | 17.3.12-tuxcare.3 |
@angular/platform-browserTuxCare:npm From an advisory covering 8 CVEs | 17.1.0-tuxcare.0 up to 17.1.0-tuxcare.2, plus listed versions 17.1.017.1.0-tuxcare.1 | 17.1.0-tuxcare.2 |
@angular/platform-browserTuxCare:npm | 19.2.25-tuxcare.0 up to 19.2.25-tuxcare.1, plus listed versions 19.2.25 | 19.2.25-tuxcare.1 |
@angular/platform-browserTuxCare:npm | 17.3.12-tuxcare.0 up to 17.3.12-tuxcare.3, plus listed versions 17.3.1217.3.12-tuxcare.117.3.12-tuxcare.2 | 17.3.12-tuxcare.3 |
@angular/platform-browserTuxCare:npm | 16.2.12-tuxcare.0 up to 16.2.12-tuxcare.2, plus listed versions 16.2.1216.2.12-tuxcare.1 | 16.2.12-tuxcare.2 |
@angular/platform-serverTuxCare:npm From an advisory covering 8 CVEs | 17.1.0-tuxcare.0 up to 17.1.0-tuxcare.2, plus listed versions 17.1.017.1.0-tuxcare.1 | 17.1.0-tuxcare.2 |
@angular/platform-serverTuxCare:npm | 19.2.25-tuxcare.0 up to 19.2.25-tuxcare.1, plus listed versions 19.2.25 | 19.2.25-tuxcare.1 |
@angular/platform-serverTuxCare:npm | 17.3.12-tuxcare.0 up to 17.3.12-tuxcare.3, plus listed versions 17.3.1217.3.12-tuxcare.117.3.12-tuxcare.2 | 17.3.12-tuxcare.3 |
@angular/platform-serverTuxCare:npm | 16.2.12-tuxcare.0 up to 16.2.12-tuxcare.2, plus listed versions 16.2.1216.2.12-tuxcare.1 | 16.2.12-tuxcare.2 |
@angular/platform-browser-dynamicTuxCare:npm | 19.2.25-tuxcare.0 up to 19.2.25-tuxcare.1, plus listed versions 19.2.25 | 19.2.25-tuxcare.1 |
@angular/platform-browser-dynamicTuxCare:npm | 16.2.12-tuxcare.0 up to 16.2.12-tuxcare.2, plus listed versions 16.2.1216.2.12-tuxcare.1 | 16.2.12-tuxcare.2 |
@angular/platform-browser-dynamicTuxCare:npm | 17.3.12-tuxcare.0 up to 17.3.12-tuxcare.3, plus listed versions 17.3.1217.3.12-tuxcare.117.3.12-tuxcare.2 | 17.3.12-tuxcare.3 |
@angular/platform-browser-dynamicTuxCare:npm From an advisory covering 8 CVEs | 17.1.0-tuxcare.0 up to 17.1.0-tuxcare.2, plus listed versions 17.1.017.1.0-tuxcare.1 | 17.1.0-tuxcare.2 |
@angular/service-workerTuxCare:npm From an advisory covering 5 CVEs | 19.2.25-tuxcare.0 up to 19.2.25-tuxcare.1, plus listed versions 19.2.25 | 19.2.25-tuxcare.1 |
@angular/service-workerTuxCare:npm | 17.3.12-tuxcare.0 up to 17.3.12-tuxcare.3, plus listed versions 17.3.1217.3.12-tuxcare.117.3.12-tuxcare.2 | 17.3.12-tuxcare.3 |
@angular/service-workerTuxCare:npm | 16.2.12-tuxcare.0 up to 16.2.12-tuxcare.2, plus listed versions 16.2.1216.2.12-tuxcare.1 | 16.2.12-tuxcare.2 |
History
| Recorded | Changed | Sources |
|---|---|---|
| affected, aliases | ||
| affected, facts | ||
| first indexed | CVE List, EUVD, GitHub Advisories, NVD, OSV |
Dates are when Every CVE recorded each change. Upstream dates may differ.
In short
CVE-2025-59052 is a high vulnerability (CVSS 7.1) in Angular, published September 10, 2025. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 0.37%, the 30th percentile. Fixed in @angular/platform-server 18.2.14.
References
Left out on purpose, here and in the API, to keep responses small: 5 source records.