mediumCVSS 4Vulnerability

CVE-2026-88059

A security bypass vulnerability was discovered in `@angular/common` when Server-Side Rendering (SSR) and hydration are enabled in applications using a hierarchical `HttpClient` configuration with `withRequestsMadeViaParent()`. The `HttpTransferCache` utility optimizes hydration by caching outgoing HTTP requests performed during SSR and transferring the cached state to the client-side application via `TransferState` (serialized as JSON in `<script id="ng-state">`). Following the remediation of [CVE-2026-50170](https://github.com/angular/angular/security/advisories/GHSA-q6f4-qqrg-jv6x), `HttpTransferCache` automatically skips caching requests that contain authentication headers or credentials (`Authorization`, `Cookie`, `withCredentials`, etc.). However, when a child `HttpClient` delegates to a parent client via `withRequestsMadeViaParent()`, the child's `TransferCache` interceptor evaluates whether the request is eligible for caching **before** delegating to the parent client's interceptor chain. If an outgoing request originates as anonymous from the child client, the child `TransferCache` marks the request as cacheable. When the request reaches a parent interceptor that injects sensitive authentication credentials (such as an `Authorization` header or API token), the parent `TransferCache` correctly skips caching the authenticated request. However, when the backend returns the private, authenticated response, the child `TransferCache` still stores the response in `TransferState` based on its initial pre-delegation evaluation. ### Impact Successful exploitation allows sensitive, user-specific information belonging to an authenticated user to be leaked to unauthenticated or unauthorized users. This occurs when: 1. During SSR, a child `HttpClient` initiates an unauthenticated request that is subsequently authenticated by a parent interceptor. 2. The authenticated response body is cached into the SSR-rendered HTML page (`TransferState`). 3. The rendered HTML pag

Properties

ghsa_id
GHSA-p297-fm68-3q8c
severity
medium
summary
Angular: Information Leak via `HttpTransferCache` Bypass When Using `withRequestsMadeViaParent`
cvss_score
4
cve_id
CVE-2026-88059
cvss_vector
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:C/C:L/I:N/A:N
is_ghsa_only
false
ghsa_published
2026-09-10T20:19:19Z
source_url
https://github.com/advisories/GHSA-p297-fm68-3q8c
ghsa_updated
2026-09-10T20:19:20Z

Related Entities (5)

REPORTED_BY (1)

[Source]GitHub Advisory Database

VULNERABLE_TO (1)

[Software]npm/@angular/common

AFFECTS (1)

[Software]npm/@angular/common

HAS_WEAKNESS (2)

[Weakness]Exposure of Sensitive Information to an Unauthorized Actor
[Weakness]Use of Cache Containing Sensitive Information

Explore deeper with Ninja Signal's threat intelligence graph

CVE-2026-88059 (CVSS 4) — Ninja Signal Threat Intelligence | Ninja Signal