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.
Problem Types
| Type | CWE ID | Description |
|---|
| CWE | CWE-200 | CWE-200: Exposure of Sensitive Information to an Unauthorized Actor |
| CWE | CWE-441 | CWE-441: Unintended Proxy or Intermediary ('Confused Deputy') |
| CWE | CWE-524 | CWE-524: Use of Cache Containing Sensitive Information |
Type: CWE
Description: CWE-200: Exposure of Sensitive Information to an Unauthorized Actor
Type: CWE
Description: CWE-441: Unintended Proxy or Intermediary ('Confused Deputy')
Type: CWE
Description: CWE-524: Use of Cache Containing Sensitive Information
Metrics
| Version | Base score | Base severity | Vector |
|---|
| 4.0 | 5.7 | MEDIUM | CVSS:4.0/AV:L/AC:H/AT:P/PR:N/UI:P/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N |
Version: 4.0
Base score: 5.7
Base severity: MEDIUM
Vector: CVSS:4.0/AV:L/AC:H/AT:P/PR:N/UI:P/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N