Skip to content

← Public intelligence

npm package

@angular/router

Open actionable advisories and recorded vendor fixes. This public package view has no inventory attached and cannot establish whether your deployment is affected. A vendor fix never resolves your finding; verify your installed version and the source guidance.

Open advisories

3 actionable advisories, newest first. Withdrawn advisories and news are excluded. Coverage is partial.

  1. High, CVSS 8.2npmAmendedPublished

    @angular/router: Denial of Service via RouterLink Query Parameter Retention in Server-Side Rendering (SSR)

    CVE-2026-111751 · GHSA-57xq-rjx2-v5xh

    Affected
    • npm @angular/router >= 22.0.0, < 22.2.1; >= 21.2.0, < 21.2.25
    Fixed in
    22.2.121.2.25· Vendor fix available
    Issue
    A denial of service (DoS) vulnerability was identified in @angular/router when Server-Side Rendering (SSR) is enabled on Node.js (V8) and RouterLink directives are rendered with queryParamsHandling: 'merge' or 'preserve', configured either per link or globally via defaultQueryParamsHandling. Starting in v21.2.0 (angular/angular#66181), RouterLink internals were refactored to use signals, introducing a computed signal (urlTree) that cached the returned UrlTree instance on the directive. Because each rendered link maintains an active RouterLink instance for the entire duration of the request lifecycle, the computed signal permanently pinned the UrlTree and its associated query parameter dictionary in the heap until the SSR response completed. When query parameter handling is set to 'merge' or 'preserve', each link copies the incoming request's query parameters into its own UrlTree. During SSR, memory consumption scales multiplicatively: $$\text{Heap Retention} \approx (\text{Number of…

    Recommended action: Upgrade to 22.2.1 or 21.2.25 by release line, then redeploy and verify.A vendor fix does not resolve your finding until you verify it in your own systems.

    Sources:github.com (1)osv.dev (2)Source checked Evidence →
  2. High, CVSS 8.2npmAmendedPublished

    @angular/router: Denial of Service via Unmatched Empty-Path Outlet Route Matching in Server-Side Rendering (SSR)

    CVE-2026-111752 · GHSA-62vg-58rm-qff7

    Affected
    • npm @angular/router >= 22.0.0, < 22.2.1; >= 21.0.0, < 21.2.25; >= 20.0.0, < 20.3.33; <= 19.2.25
    Fixed in
    22.2.121.2.2520.3.33· Partial vendor fix
    Issue
    A denial of service (DoS) vulnerability was identified in @angular/router when Server-Side Rendering (SSR) is enabled on Node.js (V8). During route recognition, @angular/router fails to validate whether an auxiliary outlet segment in the URL matches a route configured for that specific outlet name. Because unconfigured empty-path outlet groups (such as a:/(), x:/(...), or ///(...)) are not rejected during matching, the router repeatedly re-evaluates the route configuration against each arbitrary outlet segment provided in the URL. When a request URL contains multiple arbitrary empty-path outlet segments, this improper matching forces the router to instantiate duplicate ActivatedRouteSnapshot trees, repeatedly execute canMatch guards and route resolvers, and allocate separate copies of route parameters and queryParams for each unconfigured outlet. An unauthenticated remote attacker can exploit this behavior by sending requests with crafted outlet segments to exhaust the Node.js memory…

    Recommended action: Upgrade to 22.2.1, 21.2.25 or 20.3.33 by release line; some affected versions have no fix yet, then redeploy and verify.A vendor fix does not resolve your finding until you verify it in your own systems.

    Sources:github.com (1)osv.dev (2)Source checked Evidence →
  3. High, CVSS 8.2npmAmendedPublished

    Angular Server-Side Rendering (SSR): Denial of Service via Numeric URL Matrix Parameters

    CVE-2026-101896 · GHSA-ff3f-86qr-9cv3

    Affected
    • npm @angular/router >= 22.0.0, < 22.2.0; >= 21.0.0, < 21.2.24; >= 20.0.0, < 20.3.32; <= 19.2.25
    Fixed in
    22.2.020.3.3221.2.24· Partial vendor fix
    Issue
    A denial of service (DoS) vulnerability was identified in @angular/router when Server-Side Rendering (SSR) is enabled on Node.js (V8). When @angular/router parses incoming request URLs, it extracts path segments, matrix parameters, and child outlets into plain JavaScript objects (Record<string, string). When matrix parameter names or outlet names are numeric strings (such as /a;990;2522), the V8 JavaScript engine interprets them as array-indexed properties rather than named properties. Under V8's internal property-storage heuristics, setting numeric keys on an initially empty object causes V8 to allocate a dense array backing store (HOLEYELEMENTS) sized to the maximum index rather than falling back to sparse dictionary storage. Specifically, assigning sequential or moderately large numeric keys (like 990 followed by 2522) causes V8 to allocate a contiguous backing store of ~2,522 pointers (~20 KB to 25 KB of heap) for a single 11-byte segment. Because each segment in a URL path…

    Recommended action: Upgrade to 22.2.0, 21.2.24 or 20.3.32 by release line; some affected versions have no fix yet, then redeploy and verify.A vendor fix does not resolve your finding until you verify it in your own systems.

    Sources:github.com (1)osv.dev (2)Source checked Evidence →