[ CVE-2026-111754 · Published 3 Nov 2026 ]
@angular/platform-server: Open Redirect via Protocol-Relative URLs in Server-Side Rendering (SSR)
[ Description ]Official description
Angular is a development platform for building mobile and desktop web applications using TypeScript/JavaScript and other languages. Prior to 20.3.33, 21.2.25, and 22.2.1, ServerPlatformLocation in Angular server-side rendering checks for protocol-relative URLs before WHATWG URL normalization. A request path containing a popping dot segment followed by multiple slashes can bypass the raw resolveUrl check and normalize to a pathname beginning with two slashes. When Angular SSR detects a mismatch with the router's final location, it can place that pathname in an HTTP Location header, causing a browser to navigate to an attacker-controlled origin. Affected applications use @angular/platform-server and @angular/ssr and either expose compatible parameter or child route shapes or pass user-controlled navigation targets through infrastructure that preserves the relevant dot segments or semicolons. Pure client-side SPAs are not affected. This issue is fixed in versions 20.3.33, 21.2.25, and 22.2.1.
[ Fixes ]Fixes and patches
- @angular/platform-server 22.2.1Fixed version · GitHub Advisories · npm package @angular/platform-server: upgrade to 22.2.1 or later (affected >= 22.0.0, < 22.2.1)
- @angular/platform-server 21.2.25Fixed version · GitHub Advisories · npm package @angular/platform-server: upgrade to 21.2.25 or later (affected >= 21.0.0, < 21.2.25)
- @angular/platform-server 20.3.33Fixed version · GitHub Advisories · npm package @angular/platform-server: upgrade to 20.3.33 or later (affected >= 20.0.0, < 20.3.33)
[ Advisories ]Government CERT advisories
-
BSI CERT-BundWID-SEC-2026-4339
Angular: Multiple vulnerabilities Translated from German
[ Packages ]Affected open-source packages
- @angular/platform-server npmAffected >= 22.0.0, < 22.2.1 · fixed in 22.2.1 · GHSA-w739-gvwx-grc3
- @angular/platform-server npmAffected >= 21.0.0, < 21.2.25 · fixed in 21.2.25 · GHSA-w739-gvwx-grc3
- @angular/platform-server npmAffected >= 20.0.0, < 20.3.33 · fixed in 20.3.33 · GHSA-w739-gvwx-grc3
- @angular/platform-server npmAffected <= 19.2.25 · GHSA-w739-gvwx-grc3
[ References ]References
- github.com/angular/angular/commit/450af9c813c7660b9bd91e5635f705ee3ed7b32a
- github.com/angular/angular/commit/83944fc8c50e86be90e8ec4184cd15002b5af262
- github.com/angular/angular/commit/928dcfd2582152655b5559509d057bf6a5a19521
- github.com/angular/angular/issues/71076
- github.com/angular/angular/pull/71077
- github.com/angular/angular/pull/71078
- github.com/angular/angular/pull/71079
- github.com/angular/angular/releases/tag/v20.3.33
- github.com/angular/angular/releases/tag/v21.2.25
- github.com/angular/angular/releases/tag/v22.2.1
- github.com/angular/angular/security/advisories/GHSA-w739-gvwx-grc3