CVE-2026-32635

Cross-Site Scripting
Affects
Angular
in
Angular
No items found.
Versions
>=22.0.0-next.0 <22.0.0-next.3, >=21.0.0-next.0 <21.2.4, >=20.0.0-next.0 <20.3.18, >=17.0.0.next.0 <19.2.20
Exclamation circle icon
Patch Available

This Vulnerability has been fixed in the Never-Ending Support (NES) version offered by HeroDevs.

Overview

Angular is a TypeScript-based web development platform for building scalable single-page and server-side rendered applications. It provides a modular architecture, powerful dependency injection, and built-in tools for building modern, performant, and maintainable applications across web, mobile, and desktop environments.

A high-severity Cross-Site Scripting (XSS) vulnerability (CVE-2026-32635) has been identified in the Angular runtime and compiler. Enabling internationalization for security-sensitive attributes (for example, href on an anchor tag) by adding i18n-<name> attribute bypasses Angular's built-in sanitization mechanism, which when combined with a data binding to untrusted user-generated data can allow an attacker to inject a malicious script.

Per OWASP: Cross-Site Scripting attacks are a type of injection, in which malicious scripts are injected into otherwise benign and trusted websites. XSS attacks occur when an attacker uses a web application to send malicious code, generally in the form of a browser side script, to a different end user. An attacker can use XSS to send a malicious script to an unsuspecting user.

This issue affects multiple versions of Angular.

Details

Module Info

Vulnerability Info

This high-severity vulnerability is found in the @angular/compiler and @angular/core packages in multiple published versions of Angular.

It occurs when the application uses a security-sensitive attribute (for example, href on an anchor tag) together with Angular's ability to internationalize attributes. Enabling internationalization for the sensitive attribute by adding i18n-<name> attribute bypasses Angular's built-in sanitization mechanism, which when combined with a data binding to untrusted user-generated data can allow an attacker to inject a malicious script.

The following example illustrates the issue:

<a href="{{ maliciousUrl }}" i18n-href>Click me</a>

The following attributes have been confirmed to be vulnerable:

  • action
  • background
  • cite
  • codebase
  • data
  • formaction
  • href
  • itemtype
  • longdesc
  • poster
  • src
  • xlink:href

When successfully exploited, this vulnerability allows for arbitrary JavaScript execution within the context of the victim's browser session. This can lead to:

  • Session hijacking: Stealing session cookies, localStorage data, or authentication tokens.
  • Data exfiltration: Accessing and transmitting sensitive information displayed within the application.
  • Unauthorized actions: Performing state-changing actions (like clicking buttons or submitting forms) on behalf of the authenticated user.

Mitigation

Angular versions prior to 19 are End-of-Life and will not receive any updates to address this issue. For more information see here.

Users of the affected components should apply one of the following mitigations:

  • Migrate affected applications to a patched version of Angular.
  • Leverage a commercial support partner like HeroDevs for post-EOL security support.

Credits

VenkatKwest (finder)

Vulnerability Details
Severity
Level
CVSS Assessment
Low
>=0 <4
Medium
>=4 <6
High
>=6 <8
Critical
>=8 <10
High
ID
CVE-2026-32635
PROJECT Affected
Angular
Versions Affected
>=22.0.0-next.0 <22.0.0-next.3, >=21.0.0-next.0 <21.2.4, >=20.0.0-next.0 <20.3.18, >=17.0.0.next.0 <19.2.20
NES Versions Affected
Published date
March 13, 2026
≈ Fix date
March 13, 2026
Category
Cross-Site Scripting
Vex Document
Download VEXHow do I use it?
Sign up for the latest vulnerability alerts fixed in
NES for Angular
Rss feed icon
Subscribe via RSS
or

By clicking “submit” I acknowledge receipt of our Privacy Policy.

Thanks for signing up for our Newsletter! We look forward to connecting with you.
Oops! Something went wrong while submitting the form.