{"id":"CVE-2025-59052","aliases":["CLSA-2026-1775176179","CLSA-2026-1783126874","CLSA-2026-1789403396","CLSA-2026-1792160916","CLSA-2026-1792161110","CLSA-2026-1792161229","CLSA-2026-1792161304","CLSA-2026-1792163494","CLSA-2026-1792163497","CLSA-2026-1792163620","CLSA-2026-1792163696","CLSA-2026-1792208137","CLSA-2026-1792208173","CLSA-2026-1792208456","CLSA-2026-1792208538","CLSA-2026-1792250259","CLSA-2026-1792250523","CLSA-2026-1792250593","CLSA-2026-1792251053","CLSA-2026-1792281818","CLSA-2026-1792325425","CLSA-2026-1792325931","CLSA-2026-1792325968","CLSA-2026-1792326063","CLSA-2026-1792345281","CLSA-2026-1792345688","CLSA-2026-1792345707","CLSA-2026-1792357214","CLSA-2026-1792357295","CLSA-2026-1792357347","CLSA-2026-1792358062","CLSA-2026-1792366618","CLSA-2026-1792366913","CLSA-2026-1792366944","CLSA-2026-1792366967","CLSA-2026-1792371632","CLSA-2026-1792371663","CLSA-2026-1792372002","CLSA-2026-1792372051","CLSA-2026-1792375741","CLSA-2026-1792375776","CLSA-2026-1792376111","CLSA-2026-1792376112","CLSA-2026-1792380005","CLSA-2026-1792380053","CLSA-2026-1792380385","CLSA-2026-1792380407","CLSA-2026-1792382652","CLSA-2026-1792382945","CLSA-2026-1792382992","CLSA-2026-1792383001","CLSA-2026-1792386139","CLSA-2026-1792386416","CLSA-2026-1792386481","EUVD-2025-33972","GHSA-68x2-mx4q-78m7"],"status":"published","title":"Angular SSR: Global Platform Injector Race Condition Leads to Cross-Request Data Leakage","description":"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.\nThe 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.","severity":{"version":"4.0","score":7.1,"vector":"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","level":"high","assessor":"cna","from":"cve"},"epss":{"day":"2026-11-10","score":0.0037,"percentile":0.31183,"model":"v2026.06.15"},"facts":{"in_kev":false,"known_exploited":false,"public_exploit":false,"fix_available":true},"cwes":["CWE-362"],"published":"2025-09-10T20:13:56Z","modified":"2026-11-02T19:59:16Z","fixes":[{"ecosystem":"npm","package":"@angular/platform-server","fixed_in":["18.2.14","20.3.0","19.2.15","21.0.0-next.3"],"sources":["ghsa","osv"]},{"ecosystem":"npm","package":"@angular/ssr","fixed_in":["18.2.21","19.2.16","20.3.0","21.0.0-next.3"],"sources":["ghsa","osv"]},{"ecosystem":"TuxCare:npm","package":"@angular/animations","fixed_in":["19.2.25-tuxcare.1"],"sources":["osv"]},{"ecosystem":"TuxCare:npm","package":"@angular/router","fixed_in":["16.2.12-tuxcare.2","17.3.12-tuxcare.3","19.2.25-tuxcare.1"],"sources":["osv"]},{"ecosystem":"TuxCare:npm","package":"@angular/upgrade","fixed_in":["19.2.25-tuxcare.1","17.3.12-tuxcare.3","16.2.12-tuxcare.2"],"sources":["osv"]},{"ecosystem":"TuxCare:npm","package":"@angular/forms","fixed_in":["19.2.25-tuxcare.1","17.3.12-tuxcare.3","16.2.12-tuxcare.2"],"sources":["osv"]},{"ecosystem":"TuxCare:npm","package":"@angular/platform-browser","fixed_in":["19.2.25-tuxcare.1","17.3.12-tuxcare.3","16.2.12-tuxcare.2"],"sources":["osv"]},{"ecosystem":"TuxCare:npm","package":"@angular/platform-server","fixed_in":["19.2.25-tuxcare.1","17.3.12-tuxcare.3","16.2.12-tuxcare.2"],"sources":["osv"]},{"ecosystem":"TuxCare:npm","package":"@angular/platform-browser-dynamic","fixed_in":["19.2.25-tuxcare.1","16.2.12-tuxcare.2","17.3.12-tuxcare.3"],"sources":["osv"]},{"ecosystem":"TuxCare:npm","package":"@angular/service-worker","fixed_in":["17.3.12-tuxcare.3","16.2.12-tuxcare.2"],"sources":["osv"]}],"affected":[{"source":"ghsa","ecosystem":"npm","package":"@angular/platform-server","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"16.0.0-next.0"},{"fixed":"18.2.14"}]}]},{"source":"ghsa","ecosystem":"npm","package":"@angular/platform-server","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"20.0.0-next.0"},{"fixed":"20.3.0"}]}]},{"source":"ghsa","ecosystem":"npm","package":"@angular/platform-server","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"19.0.0-next.0"},{"fixed":"19.2.15"}]}]},{"source":"ghsa","ecosystem":"npm","package":"@angular/platform-server","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"21.0.0-next.0"},{"fixed":"21.0.0-next.3"}]}]},{"source":"ghsa","ecosystem":"npm","package":"@angular/ssr","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"17.0.0-next.0"},{"fixed":"18.2.21"}]}]},{"source":"ghsa","ecosystem":"npm","package":"@angular/ssr","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"19.0.0-next.0"},{"fixed":"19.2.16"}]}]},{"source":"ghsa","ecosystem":"npm","package":"@angular/ssr","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"20.0.0-next.0"},{"fixed":"20.3.0"}]}]},{"source":"ghsa","ecosystem":"npm","package":"@angular/ssr","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"21.0.0-next.0"},{"fixed":"21.0.0-next.3"}]}]},{"source":"ghsa","ecosystem":"npm","package":"@nguniversal/common","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"16.0.0-next.0"},{"last_affected":"16.2.0"}]}]},{"source":"osv","ecosystem":"TuxCare:npm","package":"@angular/bazel","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"17.3.12-tuxcare.0"},{"fixed":"17.3.12-tuxcare.3"}]}],"versions":["17.3.12","17.3.12-tuxcare.1","17.3.12-tuxcare.2"],"bundled":2},{"source":"osv","ecosystem":"TuxCare:npm","package":"@angular/benchpress","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"17.3.12-tuxcare.0"},{"fixed":"17.3.12-tuxcare.3"}]}],"versions":["17.3.12","17.3.12-tuxcare.1","17.3.12-tuxcare.2"],"bundled":2},{"source":"osv","ecosystem":"TuxCare:npm","package":"@angular/language-service","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"17.3.12-tuxcare.0"},{"fixed":"17.3.12-tuxcare.3"}]}],"versions":["17.3.12","17.3.12-tuxcare.1","17.3.12-tuxcare.2"],"bundled":2},{"source":"osv","ecosystem":"TuxCare:npm","package":"@angular/bazel","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"17.1.0-tuxcare.0"},{"fixed":"17.1.0-tuxcare.2"}]}],"versions":["17.1.0","17.1.0-tuxcare.1"],"bundled":17},{"source":"osv","ecosystem":"TuxCare:npm","package":"@angular/benchpress","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"17.1.0-tuxcare.0"},{"fixed":"17.1.0-tuxcare.2"}]}],"versions":["17.1.0","17.1.0-tuxcare.1"],"bundled":17},{"source":"osv","ecosystem":"TuxCare:npm","package":"@angular/language-service","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"17.1.0-tuxcare.0"},{"fixed":"17.1.0-tuxcare.2"}]}],"versions":["17.1.0","17.1.0-tuxcare.1"],"bundled":17},{"source":"osv","ecosystem":"TuxCare:npm","package":"@angular/bazel","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"19.2.25-tuxcare.0"},{"fixed":"19.2.25-tuxcare.1"}]}],"versions":["19.2.25"],"bundled":5},{"source":"osv","ecosystem":"TuxCare:npm","package":"@angular/language-service","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"19.2.25-tuxcare.0"},{"fixed":"19.2.25-tuxcare.1"}]}],"versions":["19.2.25"],"bundled":5},{"source":"osv","ecosystem":"TuxCare:npm","package":"@angular/animations","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"16.2.12-tuxcare.0"},{"fixed":"16.2.12-tuxcare.2"}]}],"versions":["16.2.12","16.2.12-tuxcare.1"],"bundled":2},{"source":"osv","ecosystem":"TuxCare:npm","package":"@angular/animations","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"17.3.12-tuxcare.0"},{"fixed":"17.3.12-tuxcare.3"}]}],"versions":["17.3.12","17.3.12-tuxcare.1","17.3.12-tuxcare.2"],"bundled":2},{"source":"osv","ecosystem":"TuxCare:npm","package":"@angular/animations","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"17.1.0-tuxcare.0"},{"fixed":"17.1.0-tuxcare.2"}]}],"versions":["17.1.0","17.1.0-tuxcare.1"],"bundled":12},{"source":"osv","ecosystem":"TuxCare:npm","package":"@angular/animations","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"19.2.25-tuxcare.0"},{"fixed":"19.2.25-tuxcare.1"}]}],"versions":["19.2.25"]},{"source":"osv","ecosystem":"TuxCare:npm","package":"@angular/router","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"16.2.12-tuxcare.0"},{"fixed":"16.2.12-tuxcare.2"}]}],"versions":["16.2.12","16.2.12-tuxcare.1"]},{"source":"osv","ecosystem":"TuxCare:npm","package":"@angular/router","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"17.3.12-tuxcare.0"},{"fixed":"17.3.12-tuxcare.3"}]}],"versions":["17.3.12","17.3.12-tuxcare.1","17.3.12-tuxcare.2"]},{"source":"osv","ecosystem":"TuxCare:npm","package":"@angular/router","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"17.1.0-tuxcare.0"},{"fixed":"17.1.0-tuxcare.2"}]}],"versions":["17.1.0","17.1.0-tuxcare.1"],"bundled":8},{"source":"osv","ecosystem":"TuxCare:npm","package":"@angular/router","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"19.2.25-tuxcare.0"},{"fixed":"19.2.25-tuxcare.1"}]}],"versions":["19.2.25"]},{"source":"osv","ecosystem":"TuxCare:npm","package":"@angular/upgrade","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"17.1.0-tuxcare.0"},{"fixed":"17.1.0-tuxcare.2"}]}],"versions":["17.1.0","17.1.0-tuxcare.1"],"bundled":8},{"source":"osv","ecosystem":"TuxCare:npm","package":"@angular/upgrade","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"19.2.25-tuxcare.0"},{"fixed":"19.2.25-tuxcare.1"}]}],"versions":["19.2.25"]},{"source":"osv","ecosystem":"TuxCare:npm","package":"@angular/upgrade","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"17.3.12-tuxcare.0"},{"fixed":"17.3.12-tuxcare.3"}]}],"versions":["17.3.12","17.3.12-tuxcare.1","17.3.12-tuxcare.2"]},{"source":"osv","ecosystem":"TuxCare:npm","package":"@angular/upgrade","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"16.2.12-tuxcare.0"},{"fixed":"16.2.12-tuxcare.2"}]}],"versions":["16.2.12","16.2.12-tuxcare.1"]},{"source":"osv","ecosystem":"TuxCare:npm","package":"@angular/compiler","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"19.2.25-tuxcare.0"},{"fixed":"19.2.25-tuxcare.1"}]}],"versions":["19.2.25"],"bundled":5},{"source":"osv","ecosystem":"TuxCare:npm","package":"@angular/compiler","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"16.2.12-tuxcare.0"},{"fixed":"16.2.12-tuxcare.2"}]}],"versions":["16.2.12","16.2.12-tuxcare.1"],"bundled":2},{"source":"osv","ecosystem":"TuxCare:npm","package":"@angular/compiler","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"17.3.12-tuxcare.0"},{"fixed":"17.3.12-tuxcare.3"}]}],"versions":["17.3.12","17.3.12-tuxcare.1","17.3.12-tuxcare.2"],"bundled":2},{"source":"osv","ecosystem":"TuxCare:npm","package":"@angular/compiler","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"17.1.0-tuxcare.0"},{"fixed":"17.1.0-tuxcare.2"}]}],"versions":["17.1.0","17.1.0-tuxcare.1"],"bundled":15},{"source":"osv","ecosystem":"TuxCare:npm","package":"@angular/common","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"17.3.12-tuxcare.0"},{"fixed":"17.3.12-tuxcare.3"}]}],"versions":["17.3.12","17.3.12-tuxcare.1","17.3.12-tuxcare.2"],"bundled":2},{"source":"osv","ecosystem":"TuxCare:npm","package":"@angular/compiler-cli","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"19.2.25-tuxcare.0"},{"fixed":"19.2.25-tuxcare.1"}]}],"versions":["19.2.25"],"bundled":5},{"source":"osv","ecosystem":"TuxCare:npm","package":"@angular/compiler-cli","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"16.2.12-tuxcare.0"},{"fixed":"16.2.12-tuxcare.2"}]}],"versions":["16.2.12","16.2.12-tuxcare.1"],"bundled":2},{"source":"osv","ecosystem":"TuxCare:npm","package":"@angular/compiler-cli","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"17.1.0-tuxcare.0"},{"fixed":"17.1.0-tuxcare.2"}]}],"versions":["17.1.0","17.1.0-tuxcare.1"],"bundled":15},{"source":"osv","ecosystem":"TuxCare:npm","package":"@angular/compiler-cli","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"17.3.12-tuxcare.0"},{"fixed":"17.3.12-tuxcare.3"}]}],"versions":["17.3.12","17.3.12-tuxcare.1","17.3.12-tuxcare.2"],"bundled":2},{"source":"osv","ecosystem":"TuxCare:npm","package":"@angular/core","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"19.2.25-tuxcare.0"},{"fixed":"19.2.25-tuxcare.1"}]}],"versions":["19.2.25"],"bundled":5},{"source":"osv","ecosystem":"TuxCare:npm","package":"@angular/core","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"17.3.12-tuxcare.0"},{"fixed":"17.3.12-tuxcare.3"}]}],"versions":["17.3.12","17.3.12-tuxcare.1","17.3.12-tuxcare.2"],"bundled":2},{"source":"osv","ecosystem":"TuxCare:npm","package":"@angular/core","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"16.2.12-tuxcare.0"},{"fixed":"16.2.12-tuxcare.2"}]}],"versions":["16.2.12","16.2.12-tuxcare.1"],"bundled":2},{"source":"osv","ecosystem":"TuxCare:npm","package":"@angular/elements","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"17.3.12-tuxcare.0"},{"fixed":"17.3.12-tuxcare.3"}]}],"versions":["17.3.12","17.3.12-tuxcare.1","17.3.12-tuxcare.2"],"bundled":2},{"source":"osv","ecosystem":"TuxCare:npm","package":"@angular/elements","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"17.1.0-tuxcare.0"},{"fixed":"17.1.0-tuxcare.2"}]}],"versions":["17.1.0","17.1.0-tuxcare.1"],"bundled":12},{"source":"osv","ecosystem":"TuxCare:npm","package":"@angular/elements","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"19.2.25-tuxcare.0"},{"fixed":"19.2.25-tuxcare.1"}]}],"versions":["19.2.25"],"bundled":5},{"source":"osv","ecosystem":"TuxCare:npm","package":"@angular/elements","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"16.2.12-tuxcare.0"},{"fixed":"16.2.12-tuxcare.2"}]}],"versions":["16.2.12","16.2.12-tuxcare.1"],"bundled":2},{"source":"osv","ecosystem":"TuxCare:npm","package":"@angular/forms","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"19.2.25-tuxcare.0"},{"fixed":"19.2.25-tuxcare.1"}]}],"versions":["19.2.25"]},{"source":"osv","ecosystem":"TuxCare:npm","package":"@angular/forms","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"17.3.12-tuxcare.0"},{"fixed":"17.3.12-tuxcare.3"}]}],"versions":["17.3.12","17.3.12-tuxcare.1","17.3.12-tuxcare.2"]},{"source":"osv","ecosystem":"TuxCare:npm","package":"@angular/forms","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"17.1.0-tuxcare.0"},{"fixed":"17.1.0-tuxcare.2"}]}],"versions":["17.1.0","17.1.0-tuxcare.1"],"bundled":8},{"source":"osv","ecosystem":"TuxCare:npm","package":"@angular/forms","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"16.2.12-tuxcare.0"},{"fixed":"16.2.12-tuxcare.2"}]}],"versions":["16.2.12","16.2.12-tuxcare.1"]},{"source":"osv","ecosystem":"TuxCare:npm","package":"@angular/localize","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"17.1.0-tuxcare.0"},{"fixed":"17.1.0-tuxcare.2"}]}],"versions":["17.1.0","17.1.0-tuxcare.1"],"bundled":15},{"source":"osv","ecosystem":"TuxCare:npm","package":"@angular/localize","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"19.2.25-tuxcare.0"},{"fixed":"19.2.25-tuxcare.1"}]}],"versions":["19.2.25"],"bundled":5},{"source":"osv","ecosystem":"TuxCare:npm","package":"@angular/localize","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"16.2.12-tuxcare.0"},{"fixed":"16.2.12-tuxcare.2"}]}],"versions":["16.2.12","16.2.12-tuxcare.1"],"bundled":2},{"source":"osv","ecosystem":"TuxCare:npm","package":"@angular/localize","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"17.3.12-tuxcare.0"},{"fixed":"17.3.12-tuxcare.3"}]}],"versions":["17.3.12","17.3.12-tuxcare.1","17.3.12-tuxcare.2"],"bundled":2},{"source":"osv","ecosystem":"TuxCare:npm","package":"@angular/platform-browser","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"17.1.0-tuxcare.0"},{"fixed":"17.1.0-tuxcare.2"}]}],"versions":["17.1.0","17.1.0-tuxcare.1"],"bundled":8},{"source":"osv","ecosystem":"TuxCare:npm","package":"@angular/platform-browser","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"19.2.25-tuxcare.0"},{"fixed":"19.2.25-tuxcare.1"}]}],"versions":["19.2.25"]},{"source":"osv","ecosystem":"TuxCare:npm","package":"@angular/platform-browser","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"17.3.12-tuxcare.0"},{"fixed":"17.3.12-tuxcare.3"}]}],"versions":["17.3.12","17.3.12-tuxcare.1","17.3.12-tuxcare.2"]},{"source":"osv","ecosystem":"TuxCare:npm","package":"@angular/platform-browser","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"16.2.12-tuxcare.0"},{"fixed":"16.2.12-tuxcare.2"}]}],"versions":["16.2.12","16.2.12-tuxcare.1"]},{"source":"osv","ecosystem":"TuxCare:npm","package":"@angular/platform-server","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"17.1.0-tuxcare.0"},{"fixed":"17.1.0-tuxcare.2"}]}],"versions":["17.1.0","17.1.0-tuxcare.1"],"bundled":8},{"source":"osv","ecosystem":"TuxCare:npm","package":"@angular/platform-server","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"19.2.25-tuxcare.0"},{"fixed":"19.2.25-tuxcare.1"}]}],"versions":["19.2.25"]},{"source":"osv","ecosystem":"TuxCare:npm","package":"@angular/platform-server","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"17.3.12-tuxcare.0"},{"fixed":"17.3.12-tuxcare.3"}]}],"versions":["17.3.12","17.3.12-tuxcare.1","17.3.12-tuxcare.2"]},{"source":"osv","ecosystem":"TuxCare:npm","package":"@angular/platform-server","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"16.2.12-tuxcare.0"},{"fixed":"16.2.12-tuxcare.2"}]}],"versions":["16.2.12","16.2.12-tuxcare.1"]},{"source":"osv","ecosystem":"TuxCare:npm","package":"@angular/platform-browser-dynamic","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"19.2.25-tuxcare.0"},{"fixed":"19.2.25-tuxcare.1"}]}],"versions":["19.2.25"]},{"source":"osv","ecosystem":"TuxCare:npm","package":"@angular/platform-browser-dynamic","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"16.2.12-tuxcare.0"},{"fixed":"16.2.12-tuxcare.2"}]}],"versions":["16.2.12","16.2.12-tuxcare.1"]},{"source":"osv","ecosystem":"TuxCare:npm","package":"@angular/platform-browser-dynamic","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"17.3.12-tuxcare.0"},{"fixed":"17.3.12-tuxcare.3"}]}],"versions":["17.3.12","17.3.12-tuxcare.1","17.3.12-tuxcare.2"]},{"source":"osv","ecosystem":"TuxCare:npm","package":"@angular/platform-browser-dynamic","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"17.1.0-tuxcare.0"},{"fixed":"17.1.0-tuxcare.2"}]}],"versions":["17.1.0","17.1.0-tuxcare.1"],"bundled":8},{"source":"osv","ecosystem":"TuxCare:npm","package":"@angular/service-worker","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"19.2.25-tuxcare.0"},{"fixed":"19.2.25-tuxcare.1"}]}],"versions":["19.2.25"],"bundled":5},{"source":"osv","ecosystem":"TuxCare:npm","package":"@angular/service-worker","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"17.3.12-tuxcare.0"},{"fixed":"17.3.12-tuxcare.3"}]}],"versions":["17.3.12","17.3.12-tuxcare.1","17.3.12-tuxcare.2"]},{"source":"osv","ecosystem":"TuxCare:npm","package":"@angular/service-worker","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"16.2.12-tuxcare.0"},{"fixed":"16.2.12-tuxcare.2"}]}],"versions":["16.2.12","16.2.12-tuxcare.1"]},{"source":"osv","ecosystem":"npm","package":"@angular/platform-server","ranges":[{"type":"SEMVER","events":[{"introduced":"16.0.0-next.0"},{"fixed":"18.2.14"}]}]},{"source":"osv","ecosystem":"npm","package":"@angular/platform-server","ranges":[{"type":"SEMVER","events":[{"introduced":"20.0.0-next.0"},{"fixed":"20.3.0"}]}]},{"source":"osv","ecosystem":"npm","package":"@angular/platform-server","ranges":[{"type":"SEMVER","events":[{"introduced":"19.0.0-next.0"},{"fixed":"19.2.15"}]}]},{"source":"osv","ecosystem":"npm","package":"@angular/platform-server","ranges":[{"type":"SEMVER","events":[{"introduced":"21.0.0-next.0"},{"fixed":"21.0.0-next.3"}]}]},{"source":"osv","ecosystem":"npm","package":"@angular/ssr","ranges":[{"type":"SEMVER","events":[{"introduced":"17.0.0-next.0"},{"fixed":"18.2.21"}]}]},{"source":"osv","ecosystem":"npm","package":"@angular/ssr","ranges":[{"type":"SEMVER","events":[{"introduced":"19.0.0-next.0"},{"fixed":"19.2.16"}]}]},{"source":"osv","ecosystem":"npm","package":"@angular/ssr","ranges":[{"type":"SEMVER","events":[{"introduced":"20.0.0-next.0"},{"fixed":"20.3.0"}]}]},{"source":"osv","ecosystem":"npm","package":"@angular/ssr","ranges":[{"type":"SEMVER","events":[{"introduced":"21.0.0-next.0"},{"fixed":"21.0.0-next.3"}]}]},{"source":"osv","ecosystem":"npm","package":"@nguniversal/common","ranges":[{"type":"SEMVER","events":[{"introduced":"16.0.0-next.0"},{"last_affected":"16.2.0"}]}]}],"products":[{"vendor":"angular","product":"angular"}],"references":[{"url":"https://github.com/angular/angular/security/advisories/GHSA-68x2-mx4q-78m7","tags":["x_refsource_CONFIRM","web"]},{"url":"https://github.com/angular/angular-cli/pull/31108","tags":["x_refsource_MISC","web"]},{"url":"https://github.com/angular/angular/pull/63562","tags":["x_refsource_MISC","web"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2025-59052","tags":["advisory"]},{"url":"https://github.com/advisories/GHSA-68x2-mx4q-78m7"},{"url":"https://github.com/angular/angular","tags":["package"]}],"sources":{"cve":[{"id":"CVE-2025-59052","title":"Angular SSR: Global Platform Injector Race Condition Leads to Cross-Request Data Leakage","description":"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.\nThe 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.","status":"published","published":"2025-09-10T20:13:56.965Z","modified":"2025-09-10T20:25:32.147Z","cvss":[{"version":"4.0","score":7.1,"vector":"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","level":"high","assessor":"cna"}],"cwes":["CWE-362"],"updated_at":"2026-11-02T14:32:47.812946Z"}],"euvd":[{"id":"EUVD-2025-33972","description":"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.\nThe 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.","status":"published","published":"2025-09-10T20:13:56Z","modified":"2025-09-10T20:25:32Z","cvss":[{"version":"4.0","score":7.1,"vector":"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","level":"high"}],"updated_at":"2026-11-02T20:31:45.093776Z"}],"ghsa":[{"id":"GHSA-68x2-mx4q-78m7","title":"Angular SSR: Global Platform Injector Race Condition Leads to Cross-Request Data Leakage","description":"### Impact\n\nAngular 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.\n\nIn 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.\n\nThe following APIs were vulnerable and required SSR-only breaking changes:\n\n* `bootstrapApplication`: This function previously implicitly retrieved the last platform injector that was created. It now requires an explicit `BootstrapContext` in a server environment. This function is only used for standalone applications. NgModule-based applications are not affected.\n* `getPlatform`: This function previously returned the last platform instance that was created. It now always returns `null` in a server environment.\n* `destroyPlatform`: This function previously destroyed the last platform instance that was created. It's now a no-op when called in a server environment.\n\nFor `bootstrapApplication`, the framework now provides a new argument to the application's bootstrap function:\n\n```ts\n// Before:\nconst bootstrap = () =\u003e bootstrapApplication(AppComponent, config);\n\n// After:\nconst bootstrap = (context: BootstrapContext) =\u003e\n  bootstrapApplication(AppComponent, config, context);\n```\n\nAs is usually the case for changes to Angular, an automatic schematic will take care of these code changes as part of ng update:\n\n```sh\n# For apps on Angular v20:\nng update @angular/cli @angular/core\n\n# For apps on Angular v19:\nng update @angular/cli@19 @angular/core@19\n\n# For apps on Angular v18:\nng update @angular/cli@18 @angular/core@18\n```\n\nThe schematic can also be invoked explicitly if the version bump was pulled in independently:\n\n```sh\n# For apps on Angular v20:\nng update @angular/core --name add-bootstrap-context-to-server-main\n\n# For apps on Angular v19:\nng update @angular/core@19 --name add-bootstrap-context-to-server-main\n\n# For apps on Angular v18:\nng update @angular/core@18 --name add-bootstrap-context-to-server-main\n```\n\nFor applications that still use `CommonEngine`, the `bootstrap` property in `CommonEngineOptions` also gains the same `context` argument in the patched versions of Angular.\n\nIn 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.\n\n### Patches\n\nThe issue has been patched in [all active release lines](https://angular.dev/reference/releases#actively-supported-versions) as well as in the v21 prerelease:\n\n* `@angular/platform-server`: 21.0.0-next.3\n* `@angular/platform-server`: 20.3.0\n* `@angular/platform-server`: 19.2.15\n* `@angular/platform-server:` 18.2.14\n\n* `@angular/ssr`: 21.0.0-next.3\n* `@angular/ssr`: 20.3.0\n* `@angular/ssr`: 19.2.16\n* `@angular/ssr`: 18.2.21\n\n### Workarounds\n\n* Disable SSR via [Server Routes](https://angular.dev/guide/ssr#server-routing) (v19+) or builder options.\n* Remove any asynchronous behavior from custom `bootstrap` functions.\n* Remove uses of `getPlatform()` in application code.\n* Ensure that the server build defines `ngJitMode` as false.\n\n### References\n\n* https://github.com/angular/angular/pull/63562\n* https://github.com/angular/angular-cli/pull/31108","status":"published","published":"2025-09-10T21:56:01Z","modified":"2025-09-10T21:56:02Z","cvss":[{"version":"4.0","score":7.1,"vector":"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","level":"high"}],"cwes":["CWE-362"],"updated_at":"2026-11-02T14:38:57.074217Z"}],"nvd":[{"id":"CVE-2025-59052","description":"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.\nThe 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.","status":"published","published":"2025-09-10T21:15:37.283Z","modified":"2026-06-17T09:45:30.48Z","cvss":[{"version":"4.0","score":7.1,"vector":"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","level":"high","assessor":"secondary"}],"cwes":["CWE-362"],"updated_at":"2026-11-02T14:11:28.834562Z"}],"osv":[{"id":"GHSA-68x2-mx4q-78m7","title":"Angular SSR: Global Platform Injector Race Condition Leads to Cross-Request Data Leakage","description":"### Impact\n\nAngular 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.\n\nIn 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.\n\nThe following APIs were vulnerable and required SSR-only breaking changes:\n\n* `bootstrapApplication`: This function previously implicitly retrieved the last platform injector that was created. It now requires an explicit `BootstrapContext` in a server environment. This function is only used for standalone applications. NgModule-based applications are not affected.\n* `getPlatform`: This function previously returned the last platform instance that was created. It now always returns `null` in a server environment.\n* `destroyPlatform`: This function previously destroyed the last platform instance that was created. It's now a no-op when called in a server environment.\n\nFor `bootstrapApplication`, the framework now provides a new argument to the application's bootstrap function:\n\n```ts\n// Before:\nconst bootstrap = () =\u003e bootstrapApplication(AppComponent, config);\n\n// After:\nconst bootstrap = (context: BootstrapContext) =\u003e\n  bootstrapApplication(AppComponent, config, context);\n```\n\nAs is usually the case for changes to Angular, an automatic schematic will take care of these code changes as part of ng update:\n\n```sh\n# For apps on Angular v20:\nng update @angular/cli @angular/core\n\n# For apps on Angular v19:\nng update @angular/cli@19 @angular/core@19\n\n# For apps on Angular v18:\nng update @angular/cli@18 @angular/core@18\n```\n\nThe schematic can also be invoked explicitly if the version bump was pulled in independently:\n\n```sh\n# For apps on Angular v20:\nng update @angular/core --name add-bootstrap-context-to-server-main\n\n# For apps on Angular v19:\nng update @angular/core@19 --name add-bootstrap-context-to-server-main\n\n# For apps on Angular v18:\nng update @angular/core@18 --name add-bootstrap-context-to-server-main\n```\n\nFor applications that still use `CommonEngine`, the `bootstrap` property in `CommonEngineOptions` also gains the same `context` argument in the patched versions of Angular.\n\nIn 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.\n\n### Patches\n\nThe issue has been patched in [all active release lines](https://angular.dev/reference/releases#actively-supported-versions) as well as in the v21 prerelease:\n\n* `@angular/platform-server`: 21.0.0-next.3\n* `@angular/platform-server`: 20.3.0\n* `@angular/platform-server`: 19.2.15\n* `@angular/platform-server:` 18.2.14\n\n* `@angular/ssr`: 21.0.0-next.3\n* `@angular/ssr`: 20.3.0\n* `@angular/ssr`: 19.2.16\n* `@angular/ssr`: 18.2.21\n\n### Workarounds\n\n* Disable SSR via [Server Routes](https://angular.dev/guide/ssr#server-routing) (v19+) or builder options.\n* Remove any asynchronous behavior from custom `bootstrap` functions.\n* Remove uses of `getPlatform()` in application code.\n* Ensure that the server build defines `ngJitMode` as false.\n\n### References\n\n* https://github.com/angular/angular/pull/63562\n* https://github.com/angular/angular-cli/pull/31108","status":"published","published":"2025-09-10T21:56:01Z","modified":"2025-09-10T22:28:44.074455Z","cvss":[{"version":"4.0","score":7.1,"vector":"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","level":"high"}],"cwes":["CWE-362"],"updated_at":"2026-11-02T15:46:39.618611Z"},{"id":"CLSA-2026-1775176179","title":"TuxCare security update for @angular (2 CVEs)","description":"TuxCare rebuilt 3 @angular packages to address 2 CVEs. Fixed in 17.3.12-tuxcare.3.","status":"published","published":"2026-08-04T14:52:21Z","modified":"2026-10-19T07:45:07.712785294Z","updated_at":"2026-11-02T15:43:44.009773Z"},{"id":"CLSA-2026-1783126874","title":"TuxCare security update for @angular (17 CVEs)","description":"TuxCare rebuilt 3 @angular packages to address 17 CVEs. Fixed in 17.1.0-tuxcare.2.","status":"published","published":"2026-08-04T14:52:41Z","modified":"2026-10-23T19:28:12.985288462Z","updated_at":"2026-11-02T15:43:45.794021Z"},{"id":"CLSA-2026-1789403396","title":"TuxCare security update for @angular (5 CVEs)","description":"TuxCare rebuilt 2 @angular packages to address 5 CVEs. Fixed in 19.2.25-tuxcare.1.","status":"published","published":"2026-09-14T16:29:56Z","modified":"2026-10-19T07:45:31.178837257Z","updated_at":"2026-11-02T15:43:47.938828Z"},{"id":"CLSA-2026-1792160916","title":"TuxCare security update for @angular/animations (2 CVEs)","description":"TuxCare rebuilt @angular/animations to address 2 CVEs. Fixed in 16.2.12-tuxcare.2.","status":"published","published":"2026-10-16T14:28:32Z","modified":"2026-10-16T16:30:45.170640891Z","updated_at":"2026-11-02T15:43:50.949147Z"},{"id":"CLSA-2026-1792161110","title":"TuxCare security update for @angular/animations (2 CVEs)","description":"TuxCare rebuilt @angular/animations to address 2 CVEs. Fixed in 17.3.12-tuxcare.3.","status":"published","published":"2026-10-16T14:31:50Z","modified":"2026-10-16T16:30:37.87502307Z","updated_at":"2026-11-02T15:43:50.949147Z"},{"id":"CLSA-2026-1792161229","title":"TuxCare security update for @angular/animations (12 CVEs)","description":"TuxCare rebuilt @angular/animations to address 12 CVEs. Fixed in 17.1.0-tuxcare.2.","status":"published","published":"2026-10-16T14:33:49Z","modified":"2026-11-02T19:58:43.627671921Z","updated_at":"2026-11-02T20:22:47.555648Z"},{"id":"CLSA-2026-1792161304","title":"TuxCare security update for @angular/animations (1 CVE)","description":"TuxCare rebuilt @angular/animations to address 1 CVE. Fixed in 19.2.25-tuxcare.1.","status":"published","published":"2026-10-16T14:35:04Z","modified":"2026-11-02T19:58:39.952736383Z","updated_at":"2026-11-02T20:23:05.444228Z"},{"id":"CLSA-2026-1792163494","title":"TuxCare security update for @angular/router (1 CVE)","description":"TuxCare rebuilt @angular/router to address 1 CVE. Fixed in 16.2.12-tuxcare.2.","status":"published","published":"2026-10-16T15:11:34Z","modified":"2026-11-02T19:58:57.230457518Z","updated_at":"2026-11-02T20:21:43.894482Z"},{"id":"CLSA-2026-1792163497","title":"TuxCare security update for @angular/router (1 CVE)","description":"TuxCare rebuilt @angular/router to address 1 CVE. Fixed in 17.3.12-tuxcare.3.","status":"published","published":"2026-10-16T15:11:37Z","modified":"2026-11-02T19:58:37.109725914Z","updated_at":"2026-11-02T20:23:16.654089Z"},{"id":"CLSA-2026-1792163620","title":"TuxCare security update for @angular/router (8 CVEs)","description":"TuxCare rebuilt @angular/router to address 8 CVEs. Fixed in 17.1.0-tuxcare.2.","status":"published","published":"2026-10-16T15:13:40Z","modified":"2026-11-02T19:58:47.007701425Z","updated_at":"2026-11-02T20:22:33.689046Z"},{"id":"CLSA-2026-1792163696","title":"TuxCare security update for @angular/router (1 CVE)","description":"TuxCare rebuilt @angular/router to address 1 CVE. Fixed in 19.2.25-tuxcare.1.","status":"published","published":"2026-10-16T15:14:56Z","modified":"2026-11-02T19:58:59.662651478Z","updated_at":"2026-11-02T20:21:33.036174Z"},{"id":"CLSA-2026-1792208137","title":"TuxCare security update for @angular/upgrade (8 CVEs)","description":"TuxCare rebuilt @angular/upgrade to address 8 CVEs. Fixed in 17.1.0-tuxcare.2.","status":"published","published":"2026-10-17T03:35:33Z","modified":"2026-11-02T19:58:29.665427863Z","updated_at":"2026-11-02T20:23:55.577236Z"},{"id":"CLSA-2026-1792208173","title":"TuxCare security update for @angular/upgrade (1 CVE)","description":"TuxCare rebuilt @angular/upgrade to address 1 CVE. Fixed in 19.2.25-tuxcare.1.","status":"published","published":"2026-10-17T03:36:13Z","modified":"2026-11-02T19:58:36.348258682Z","updated_at":"2026-11-02T20:23:21.540308Z"},{"id":"CLSA-2026-1792208456","title":"TuxCare security update for @angular/upgrade (1 CVE)","description":"TuxCare rebuilt @angular/upgrade to address 1 CVE. Fixed in 17.3.12-tuxcare.3.","status":"published","published":"2026-10-17T03:40:52Z","modified":"2026-11-02T19:58:27.58388183Z","updated_at":"2026-11-02T20:23:59.264371Z"},{"id":"CLSA-2026-1792208538","title":"TuxCare security update for @angular/upgrade (1 CVE)","description":"TuxCare rebuilt @angular/upgrade to address 1 CVE. Fixed in 16.2.12-tuxcare.2.","status":"published","published":"2026-10-17T03:42:18Z","modified":"2026-11-02T19:58:41.490489078Z","updated_at":"2026-11-02T20:22:57.008699Z"},{"id":"CLSA-2026-1792250259","title":"TuxCare security update for @angular/compiler (5 CVEs)","description":"TuxCare rebuilt @angular/compiler to address 5 CVEs. Fixed in 19.2.25-tuxcare.1.","status":"published","published":"2026-10-17T15:17:39Z","modified":"2026-10-17T19:01:28.083998868Z","updated_at":"2026-11-02T15:43:52.011757Z"},{"id":"CLSA-2026-1792250523","title":"TuxCare security update for @angular/compiler (2 CVEs)","description":"TuxCare rebuilt @angular/compiler to address 2 CVEs. Fixed in 16.2.12-tuxcare.2.","status":"published","published":"2026-10-17T15:21:59Z","modified":"2026-10-17T19:01:37.71344155Z","updated_at":"2026-11-02T15:43:52.011757Z"},{"id":"CLSA-2026-1792250593","title":"TuxCare security update for @angular/compiler (2 CVEs)","description":"TuxCare rebuilt @angular/compiler to address 2 CVEs. Fixed in 17.3.12-tuxcare.3.","status":"published","published":"2026-10-17T15:23:13Z","modified":"2026-10-17T19:01:39.471368561Z","updated_at":"2026-11-02T15:43:52.011757Z"},{"id":"CLSA-2026-1792251053","title":"TuxCare security update for @angular/compiler (3 CVEs)","description":"TuxCare rebuilt @angular/compiler to address 3 CVEs. Fixed in 17.1.0-tuxcare.2.","status":"published","published":"2026-10-17T15:30:49Z","modified":"2026-11-10T19:45:27.618304333Z","updated_at":"2026-11-10T20:12:40.351566Z"},{"id":"CLSA-2026-1792281818","title":"TuxCare security update for @angular/common (1 CVE)","description":"TuxCare rebuilt @angular/common to address 1 CVE. Fixed in 17.3.12-tuxcare.3.","status":"published","published":"2026-10-18T00:03:37Z","modified":"2026-11-10T19:45:37.662747211Z","updated_at":"2026-11-10T20:12:31.252427Z"},{"id":"CLSA-2026-1792325425","title":"TuxCare security update for @angular/compiler-cli (5 CVEs)","description":"TuxCare rebuilt @angular/compiler-cli to address 5 CVEs. Fixed in 19.2.25-tuxcare.1.","status":"published","published":"2026-10-18T12:10:25Z","modified":"2026-10-18T13:15:49.519840666Z","updated_at":"2026-11-02T15:43:52.545698Z"},{"id":"CLSA-2026-1792325931","title":"TuxCare security update for @angular/compiler-cli (2 CVEs)","description":"TuxCare rebuilt @angular/compiler-cli to address 2 CVEs. Fixed in 16.2.12-tuxcare.2.","status":"published","published":"2026-10-18T12:18:47Z","modified":"2026-10-18T13:15:54.931410865Z","updated_at":"2026-11-02T15:43:52.545698Z"},{"id":"CLSA-2026-1792325968","title":"TuxCare security update for @angular/compiler-cli (15 CVEs)","description":"TuxCare rebuilt @angular/compiler-cli to address 15 CVEs. Fixed in 17.1.0-tuxcare.2.","status":"published","published":"2026-10-18T12:19:24Z","modified":"2026-11-02T19:59:15.681690962Z","updated_at":"2026-11-02T20:20:10.890532Z"},{"id":"CLSA-2026-1792326063","title":"TuxCare security update for @angular/compiler-cli (2 CVEs)","description":"TuxCare rebuilt @angular/compiler-cli to address 2 CVEs. Fixed in 17.3.12-tuxcare.3.","status":"published","published":"2026-10-18T12:21:03Z","modified":"2026-10-18T13:16:03.924768254Z","updated_at":"2026-11-02T15:43:52.545698Z"},{"id":"CLSA-2026-1792345281","title":"TuxCare security update for @angular/core (5 CVEs)","description":"TuxCare rebuilt @angular/core to address 5 CVEs. Fixed in 19.2.25-tuxcare.1.","status":"published","published":"2026-10-18T17:41:21Z","modified":"2026-10-18T19:15:52.222563332Z","updated_at":"2026-11-02T15:43:52.782414Z"},{"id":"CLSA-2026-1792345688","title":"TuxCare security update for @angular/core (2 CVEs)","description":"TuxCare rebuilt @angular/core to address 2 CVEs. Fixed in 17.3.12-tuxcare.3.","status":"published","published":"2026-10-18T17:48:04Z","modified":"2026-10-18T19:16:03.247092471Z","updated_at":"2026-11-02T15:43:52.782414Z"},{"id":"CLSA-2026-1792345707","title":"TuxCare security update for @angular/core (2 CVEs)","description":"TuxCare rebuilt @angular/core to address 2 CVEs. Fixed in 16.2.12-tuxcare.2.","status":"published","published":"2026-10-18T17:48:23Z","modified":"2026-10-18T19:15:10.632856099Z","updated_at":"2026-11-02T15:43:52.782414Z"},{"id":"CLSA-2026-1792357214","title":"TuxCare security update for @angular/elements (2 CVEs)","description":"TuxCare rebuilt @angular/elements to address 2 CVEs. Fixed in 17.3.12-tuxcare.3.","status":"published","published":"2026-10-18T21:00:10Z","modified":"2026-10-19T07:45:32.171536901Z","updated_at":"2026-11-02T15:43:52.782414Z"},{"id":"CLSA-2026-1792357295","title":"TuxCare security update for @angular/elements (12 CVEs)","description":"TuxCare rebuilt @angular/elements to address 12 CVEs. Fixed in 17.1.0-tuxcare.2.","status":"published","published":"2026-10-18T21:01:31Z","modified":"2026-11-02T19:59:14.934593968Z","updated_at":"2026-11-02T20:20:14.314897Z"},{"id":"CLSA-2026-1792357347","title":"TuxCare security update for @angular/elements (5 CVEs)","description":"TuxCare rebuilt @angular/elements to address 5 CVEs. Fixed in 19.2.25-tuxcare.1.","status":"published","published":"2026-10-18T21:02:27Z","modified":"2026-10-19T07:45:50.888157013Z","updated_at":"2026-11-02T15:43:52.782414Z"},{"id":"CLSA-2026-1792358062","title":"TuxCare security update for @angular/elements (2 CVEs)","description":"TuxCare rebuilt @angular/elements to address 2 CVEs. Fixed in 16.2.12-tuxcare.2.","status":"published","published":"2026-10-18T21:14:20Z","modified":"2026-10-19T07:45:37.542623036Z","updated_at":"2026-11-02T15:43:53.071325Z"},{"id":"CLSA-2026-1792366618","title":"TuxCare security update for @angular/forms (1 CVE)","description":"TuxCare rebuilt @angular/forms to address 1 CVE. Fixed in 19.2.25-tuxcare.1.","status":"published","published":"2026-10-18T23:36:58Z","modified":"2026-11-02T19:58:49.039791275Z","updated_at":"2026-11-02T20:22:21.718834Z"},{"id":"CLSA-2026-1792366913","title":"TuxCare security update for @angular/forms (1 CVE)","description":"TuxCare rebuilt @angular/forms to address 1 CVE. Fixed in 17.3.12-tuxcare.3.","status":"published","published":"2026-10-18T23:41:49Z","modified":"2026-11-02T19:58:30.885799641Z","updated_at":"2026-11-02T20:23:44.164659Z"},{"id":"CLSA-2026-1792366944","title":"TuxCare security update for @angular/forms (8 CVEs)","description":"TuxCare rebuilt @angular/forms to address 8 CVEs. Fixed in 17.1.0-tuxcare.2.","status":"published","published":"2026-10-18T23:42:20Z","modified":"2026-11-02T19:58:54.981192099Z","updated_at":"2026-11-02T20:21:56.452101Z"},{"id":"CLSA-2026-1792366967","title":"TuxCare security update for @angular/forms (1 CVE)","description":"TuxCare rebuilt @angular/forms to address 1 CVE. Fixed in 16.2.12-tuxcare.2.","status":"published","published":"2026-10-18T23:42:47Z","modified":"2026-11-02T19:58:41.440882144Z","updated_at":"2026-11-02T20:22:57.008699Z"},{"id":"CLSA-2026-1792371632","title":"TuxCare security update for @angular/localize (15 CVEs)","description":"TuxCare rebuilt @angular/localize to address 15 CVEs. Fixed in 17.1.0-tuxcare.2.","status":"published","published":"2026-10-19T01:00:28Z","modified":"2026-11-02T19:58:54.110317442Z","updated_at":"2026-11-02T20:21:56.452101Z"},{"id":"CLSA-2026-1792371663","title":"TuxCare security update for @angular/localize (5 CVEs)","description":"TuxCare rebuilt @angular/localize to address 5 CVEs. Fixed in 19.2.25-tuxcare.1.","status":"published","published":"2026-10-19T01:01:03Z","modified":"2026-10-19T07:46:38.719886677Z","updated_at":"2026-11-02T15:43:53.353888Z"},{"id":"CLSA-2026-1792372002","title":"TuxCare security update for @angular/localize (2 CVEs)","description":"TuxCare rebuilt @angular/localize to address 2 CVEs. Fixed in 16.2.12-tuxcare.2.","status":"published","published":"2026-10-19T01:06:38Z","modified":"2026-10-19T07:46:53.193072678Z","updated_at":"2026-11-02T15:43:53.353888Z"},{"id":"CLSA-2026-1792372051","title":"TuxCare security update for @angular/localize (2 CVEs)","description":"TuxCare rebuilt @angular/localize to address 2 CVEs. Fixed in 17.3.12-tuxcare.3.","status":"published","published":"2026-10-19T01:07:28Z","modified":"2026-10-19T07:46:55.758516153Z","updated_at":"2026-11-02T15:43:53.353888Z"},{"id":"CLSA-2026-1792375741","title":"TuxCare security update for @angular/platform-browser (8 CVEs)","description":"TuxCare rebuilt @angular/platform-browser to address 8 CVEs. Fixed in 17.1.0-tuxcare.2.","status":"published","published":"2026-10-19T02:08:57Z","modified":"2026-11-02T19:58:55.661938817Z","updated_at":"2026-11-02T20:21:56.452101Z"},{"id":"CLSA-2026-1792375776","title":"TuxCare security update for @angular/platform-browser (1 CVE)","description":"TuxCare rebuilt @angular/platform-browser to address 1 CVE. Fixed in 19.2.25-tuxcare.1.","status":"published","published":"2026-10-19T02:09:36Z","modified":"2026-11-02T19:58:47.340554062Z","updated_at":"2026-11-02T20:22:33.689046Z"},{"id":"CLSA-2026-1792376111","title":"TuxCare security update for @angular/platform-browser (1 CVE)","description":"TuxCare rebuilt @angular/platform-browser to address 1 CVE. Fixed in 17.3.12-tuxcare.3.","status":"published","published":"2026-10-19T02:15:09Z","modified":"2026-11-02T19:58:57.986322718Z","updated_at":"2026-11-02T20:21:38.851758Z"},{"id":"CLSA-2026-1792376112","title":"TuxCare security update for @angular/platform-browser (1 CVE)","description":"TuxCare rebuilt @angular/platform-browser to address 1 CVE. Fixed in 16.2.12-tuxcare.2.","status":"published","published":"2026-10-19T02:15:09Z","modified":"2026-11-02T19:58:55.817683522Z","updated_at":"2026-11-02T20:21:47.341589Z"},{"id":"CLSA-2026-1792380005","title":"TuxCare security update for @angular/platform-server (5 CVEs)","description":"TuxCare rebuilt @angular/platform-server to address 5 CVEs. Fixed in 17.1.0-tuxcare.2.","status":"published","published":"2026-10-19T03:20:01Z","modified":"2026-11-10T19:45:54.587346031Z","updated_at":"2026-11-10T20:12:31.252427Z"},{"id":"CLSA-2026-1792380053","title":"TuxCare security update for @angular/platform-server (1 CVE)","description":"TuxCare rebuilt @angular/platform-server to address 1 CVE. Fixed in 19.2.25-tuxcare.1.","status":"published","published":"2026-10-19T03:20:53Z","modified":"2026-11-02T19:59:16.789291429Z","updated_at":"2026-11-02T20:20:05.241925Z"},{"id":"CLSA-2026-1792380385","title":"TuxCare security update for @angular/platform-server (1 CVE)","description":"TuxCare rebuilt @angular/platform-server to address 1 CVE. Fixed in 17.3.12-tuxcare.3.","status":"published","published":"2026-10-19T03:26:21Z","modified":"2026-11-02T19:59:15.021099024Z","updated_at":"2026-11-02T20:20:14.314897Z"},{"id":"CLSA-2026-1792380407","title":"TuxCare security update for @angular/platform-server (1 CVE)","description":"TuxCare rebuilt @angular/platform-server to address 1 CVE. Fixed in 16.2.12-tuxcare.2.","status":"published","published":"2026-10-19T03:26:43Z","modified":"2026-11-02T19:58:53.744604746Z","updated_at":"2026-11-02T20:21:56.452101Z"},{"id":"CLSA-2026-1792382652","title":"TuxCare security update for @angular/platform-browser-dynamic (1 CVE)","description":"TuxCare rebuilt @angular/platform-browser-dynamic to address 1 CVE. Fixed in 19.2.25-tuxcare.1.","status":"published","published":"2026-10-19T04:04:12Z","modified":"2026-11-02T19:59:02.115897622Z","updated_at":"2026-11-02T20:21:23.736144Z"},{"id":"CLSA-2026-1792382945","title":"TuxCare security update for @angular/platform-browser-dynamic (1 CVE)","description":"TuxCare rebuilt @angular/platform-browser-dynamic to address 1 CVE. Fixed in 16.2.12-tuxcare.2.","status":"published","published":"2026-10-19T04:09:01Z","modified":"2026-11-02T19:58:39.162420643Z","updated_at":"2026-11-02T20:23:16.654089Z"}]},"sources_more":{"osv":5}}
