GHSA-qxh6-94w6-9r5p

Suggest an improvement
Source
https://github.com/advisories/GHSA-qxh6-94w6-9r5p
Import Source
https://github.com/github/advisory-database/blob/main/advisories/github-reviewed/2026/06/GHSA-qxh6-94w6-9r5p/GHSA-qxh6-94w6-9r5p.json
JSON Data
https://api.osv.dev/v1/vulns/GHSA-qxh6-94w6-9r5p
Aliases
Published
2026-06-15T17:25:55Z
Modified
2026-07-15T22:30:45Z
Severity
  • 6.1 (Medium) CVSS_V3 - CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N CVSS Calculator
  • 8.3 (High) CVSS_V4 - CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:P/VC:H/VI:N/VA:N/SC:H/SI:N/SA:N CVSS Calculator
Summary
@angular/service-worker: Sensitive Header Leakage on Cross-Origin Redirects in Angular Service Worker
Details

An information disclosure vulnerability exists in the @angular/service-worker package of the Angular framework. When the Service Worker fetches assets, it preserves metadata (such as headers) from the original request. However, on cross-origin redirects, the Service Worker fails to strip sensitive headers, violating the Fetch redirect algorithm.

This allows a remote attacker to obtain sensitive credentials (e.g., Authorization tokens, Proxy-Authorization credentials, or session cookies) by triggering a cross-origin redirect to an untrusted external origin.

Impact

If an application configured with the Angular Service Worker fetches assets with credential headers (such as Authorization header), and one of those requests is redirected to a different origin, the Service Worker will forward those headers to the new origin. This exposes critical credentials and session identifiers to unauthorized third-party servers.

Attack Preconditions

For this vulnerability to be exploitable:

  1. Vulnerable Configuration: The application must utilize the @angular/service-worker package to fetch assets.
  2. Credentialed Requests: The application must attach sensitive request headers (like Authorization, Proxy-Authorization, or rely on cookies) to asset-group requests.
  3. Redirect Flow: These requests must encounter a cross-origin redirect to an attacker-controlled or untrusted domain.

Patched Versions

  • 22.0.1
  • 21.2.17
  • 20.3.25

Credits

This vulnerability was discovered and reported by CodeMender from Google DeepMind.

Database specific
{
    "cwe_ids":  [
        "CWE-200",
        "CWE-359"
    ],
    "github_reviewed":  true,
    "github_reviewed_at":  "2026-06-15T17:25:55Z",
    "nvd_published_at":  "2026-06-22T16:16:39Z",
    "severity":  "HIGH"
}
References

Affected packages

npm / @angular/service-worker

Package

Name
@angular/service-worker
View open source insights on deps.dev
Purl
pkg:npm/%40angular/service-worker

Affected ranges

Type
SEMVER
Events
Introduced
22.0.0-next.0
Fixed
22.0.1

Database specific

source
"https://github.com/github/advisory-database/blob/main/advisories/github-reviewed/2026/06/GHSA-qxh6-94w6-9r5p/GHSA-qxh6-94w6-9r5p.json"

npm / @angular/service-worker

Package

Name
@angular/service-worker
View open source insights on deps.dev
Purl
pkg:npm/%40angular/service-worker

Affected ranges

Type
SEMVER
Events
Introduced
21.0.0-next.0
Fixed
21.2.17

Database specific

source
"https://github.com/github/advisory-database/blob/main/advisories/github-reviewed/2026/06/GHSA-qxh6-94w6-9r5p/GHSA-qxh6-94w6-9r5p.json"

npm / @angular/service-worker

Package

Name
@angular/service-worker
View open source insights on deps.dev
Purl
pkg:npm/%40angular/service-worker

Affected ranges

Type
SEMVER
Events
Introduced
20.0.0-next.0
Fixed
20.3.25

Database specific

source
"https://github.com/github/advisory-database/blob/main/advisories/github-reviewed/2026/06/GHSA-qxh6-94w6-9r5p/GHSA-qxh6-94w6-9r5p.json"

npm / @angular/service-worker

Package

Name
@angular/service-worker
View open source insights on deps.dev
Purl
pkg:npm/%40angular/service-worker

Affected ranges

Type
SEMVER
Events
Introduced
0 Unknown introduced version / All previous versions are affected
Last Affected
19.2.25

Database specific

source
"https://github.com/github/advisory-database/blob/main/advisories/github-reviewed/2026/06/GHSA-qxh6-94w6-9r5p/GHSA-qxh6-94w6-9r5p.json"