5.7 MEDIUM
- CVSS version (CVSS): 4.0
- Attack Vector (AV): Local (L)
- Attack Complexity (AC): High (H)
- Attack Requirement (AT): Present (P)
- Privileges Required (PR): None (N)
- User Interaction (UI): Passive (P)
- Vulnerable System Impact Confidentiality (VC): High (H)
- Vulnerable System Impact Integrity (VI): None (N)
- Vulnerable System Impact Availability (VA): None (N)
- Subsequent System Impact Confidentiality (SC): None (N)
- Subsequent System Impact Integrity (SI): None (N)
- Subsequent System Impact Availability (SA): None (N)
- Modified Attack Vector (MAV): Local (L)
- Modified Attack Complexity (MAC): High (H)
- Modified Attack Requirement (MAT): Present (P)
- Modified Privileges Required (MPR): None (N)
- Modified User Interaction (MUI): Passive (P)
- Modified Vulnerable System Impact Confidentiality (MVC): High (H)
- Modified Vulnerable System Impact Integrity (MVI): None (N)
- Modified Vulnerable System Impact Availability (MVA): None (N)
- Modified Subsequent System Impact Confidentiality (MSC): Negligible (N)
- Modified Subsequent System Impact Integrity (MSI): Negligible (N)
- Modified Subsequent System Impact Availability (MSA): Negligible (N)
- Safety (S): Not Defined (X)
- Automatable (AU): Not Defined (X)
- Recovery (R): Not Defined (X)
- Value Density (V): Not Defined (X)
- Vulnerability Response Effort (RE): Not Defined (X)
- Provider Urgency (U): Not Defined (X)
- Confidentiality Req. (CR): Not Defined (X)
- Integrity Req. (IR): Not Defined (X)
- Availability Req. (AR): Not Defined (X)
- Exploit Maturity (E): Not Defined (X)
Activity log
- Created suggestion
Angular Service Worker Policy-Bypass & Credential-Stripping Vulnerabilities
Angular is a development platform for building mobile and desktop web applications using TypeScript/JavaScript and other languages. Prior to 22.0.0-rc.2, 21.2.15 20.3.22, and 19.2.23, an issue in the @angular/service-worker package compromises the integrity of request-policy enforcement during request reconstruction. When the Angular Service Worker intercepts network requests for matched assets, it reconstructs a new Request object using an internal helper function. During this reconstruction process, the helper function strips the strict, client-defined request redirect policy configuration (such as redirect: 'error'), falling back to the browser's default 'follow' strategy. If the target web application makes client-side requests with a strict policy (e.g., expecting a network error instead of automatically following redirects), the service worker will bypass this instruction and automatically follow HTTP 3xx redirects to other destinations. This acts as an unintended proxy/intermediary ("Confused Deputy") and can result in cookie/credential exposure or same-origin session-restricted data leakage if public dynamic routes redirect to sensitive routes. This vulnerability is fixed in 22.0.0-rc.2, 21.2.15, 20.3.22, and 19.2.23.
References
-
https://github.com/angular/angular/security/advisories/GHSA-gv2q-mqqv-365m x_refsource_CONFIRM
-
https://github.com/angular/angular/pull/67494 x_refsource_MISC
Affected products
- ==<= 18.2.14
- ==>= 22.0.0-next.0, < 22.0.0-rc.2
- ==>= 19.0.0-next.0, < 19.2.23
- ==>= 20.0.0-next.0, < 20.3.22
- ==>= 21.0.0-next.0, < 21.2.15
Matching in nixpkgs
pkgs.angular-language-server
LSP for angular completions, AOT diagnostic, quick info and go to definitions
pkgs.nodePackages.%40angular%2Fcli
None
pkgs.nodePackages_latest.%40angular%2Fcli
None
pkgs.vscode-extensions.angular.ng-template
Editor services for Angular templates
pkgs.vimPlugins.nvim-treesitter-parsers.angular
Tree-sitter grammar for angular
-
nixos-unstable 0.0.0+rev=f0d0685
- nixpkgs-unstable 0.0.0+rev=f0d0685
- nixos-unstable-small 0.0.0+rev=f0d0685
-
nixos-26.05 0.0.0+rev=f0d0685
- nixos-26.05-small 0.0.0+rev=f0d0685
- nixpkgs-26.05-darwin 0.0.0+rev=f0d0685
Package maintainers
-
@tricktron Thibault Gagnaux <tgagnaux@gmail.com>
-
@ratsclub Victor Freire <victor@freire.dev.br>