Description
Angular is a development platform for building mobile and desktop web applications using TypeScript/JavaScript and other languages. Prior to 20.3.34 and 21.0.3, the @angular/common HttpClient function xsrfInterceptorFn uses a regular expression that does not normalize request URLs in the same way as the browser's WHATWG URL parser. With XSRF protection enabled, a mutating HTTP request to an attacker-controlled URL containing backslashes, stripped control characters or spaces, or removable ASCII whitespace can be misclassified as relative and same-origin, causing the interceptor to attach the X-XSRF-TOKEN header before the browser dispatches the request to a cross-origin host. With permissive CORS handling for the custom header, the attacker can obtain the victim's XSRF token and use it to perform cross-site request forgery against the victim session. This issue is fixed in versions 20.3.34 and 21.0.3.
Published: 2026-11-05
Score: 5.9 Medium
EPSS: n/a
KEV: No
Impact: Token Leakage Leading to CSRF
Action: Apply Patch
AI Analysis

Impact

The vulnerability lies in Angular's @angular/common HttpClient xsrfInterceptorFn regex that fails to normalize URLs consistently with the browser's parser. With XSRF protection turned on, an attacker can craft a mutation request to a malicious URL containing crafted characters that cause the interceptor to treat the URL as same‑origin. The interceptor then appends the X‑XSRF‑TOKEN header, inadvertently leaking the victim's token. The attacker can use this token to forge requests from the victim's session, bypassing CSRF defenses.

Affected Systems

Angular developers using Angular versions prior to 20.3.34 and prior to 21.0.3 are affected. The flaw resides in the common HttpClient module; any application that relies on Angular's built‑in XSRF client side interceptor and has XSRF enabled is potentially vulnerable. The issue is fixed in Angular 20.3.34 and Angular 21.0.3 releases.

Risk and Exploitability

The reported CVSS score of 5.9 indicates moderate severity. EPSS is unavailable, and the issue is not listed in CISA's KEV catalogue, suggesting no widely known exploit yet. However, the flaw can be exploited by an attacker who can influence the victim’s application to send an XHR request to a crafted URL; such malicious URLs may be injected via user input or site‑content. Successful exploitation requires the victim’s browser to have XSRF protection enabled and the server to allow the custom X‑XSRF‑TOKEN header through CORS. In such a scenario, the attacker can retrieve the XSRF token and perform CSRF attacks against authenticated sessions.

Generated by OpenCVE AI on November 5, 2026 at 21:20 UTC.

Remediation

No solution or workaround provided in the CVE record.

OpenCVE Recommended Actions

  • Upgrade Angular to at least 20.3.34 or 21.0.3 depending on the major version in use.
  • If upgrading immediately is not possible, temporarily disable XSRF protection on the HttpClient instance used by the application.
  • Ensure that CORS configurations do not allow the custom X‑XSRF‑TOKEN header to be accessed by external origins; tighten CORS settings if necessary.

Generated by OpenCVE AI on November 5, 2026 at 21:20 UTC.

Tracking

Sign in to view the affected projects.

Advisories
Source ID Title
Github GHSA Github GHSA GHSA-jfgx-762w-99vr @angular/common: XSRF Token Leakage via URL Parsing Discrepancy in Angular HTTP Client (Incomplete fix for CVE-2025-66035)
History

Thu, 05 Nov 2026 20:30:00 +0000

Type Values Removed Values Added
Description Angular is a development platform for building mobile and desktop web applications using TypeScript/JavaScript and other languages. Prior to 20.3.34 and 21.0.3, the @angular/common HttpClient function xsrfInterceptorFn uses a regular expression that does not normalize request URLs in the same way as the browser's WHATWG URL parser. With XSRF protection enabled, a mutating HTTP request to an attacker-controlled URL containing backslashes, stripped control characters or spaces, or removable ASCII whitespace can be misclassified as relative and same-origin, causing the interceptor to attach the X-XSRF-TOKEN header before the browser dispatches the request to a cross-origin host. With permissive CORS handling for the custom header, the attacker can obtain the victim's XSRF token and use it to perform cross-site request forgery against the victim session. This issue is fixed in versions 20.3.34 and 21.0.3.
Title Angular: XSRF Token Leakage via URL Parsing Discrepancy in Angular HTTP Client (Incomplete fix for CVE-2025-66035)
Weaknesses CWE-201
CWE-359
References
Metrics cvssV4_0

{'score': 5.9, 'vector': 'CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:A/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N'}


Subscriptions

No data.

cve-icon MITRE

Status: PUBLISHED

Assigner: GitHub_M

Published:

Updated: 2026-11-05T20:25:07.322Z

Reserved: 2026-10-16T17:52:09.081Z

Link: CVE-2026-111753

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Received

Published: 2026-11-05T21:18:35.800

Modified: 2026-11-05T21:18:35.800

Link: CVE-2026-111753

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-11-05T21:30:17Z

Weaknesses
  • CWE-201

    Insertion of Sensitive Information Into Sent Data

  • CWE-359

    Exposure of Private Personal Information to an Unauthorized Actor