Severity by source
CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:A/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X
Primary rating from GitHub Advisory.
CVSS VectorGitHub Advisory
Lifecycle Timeline
8DescriptionGitHub Advisory
Angular is a development platform for building mobile and desktop web applications using TypeScript/JavaScript and other languages. Prior to 21.0.2, 20.3.15, and 19.2.17, A Stored Cross-Site Scripting (XSS) vulnerability has been identified in the Angular Template Compiler. It occurs because the compiler's internal security schema is incomplete, allowing attackers to bypass Angular's built-in security sanitization. Specifically, the schema fails to classify certain URL-holding attributes (e.g., those that could contain javascript: URLs) as requiring strict URL security, enabling the injection of malicious scripts. This vulnerability is fixed in 21.0.2, 20.3.15, and 19.2.17.
AnalysisAI
We need to produce a JSON with all the specified fields. I'll synthesize the data.
First, the product name: "Angular" is the main product. The vulnerability is in Angular Template Compiler. So "Angular" is sufficient as a single product name. But could also say "Angular Framework" but 1-3 words: "Angular" fits.
Summary: Must be original, not paraphrase description. Start with impact verb and product: "Stored Cross-Site Scripting in Angular Template Compiler versions 19.x prior to 19.2.17, 20.x prior to 20.3.15, 21.x prior to 21.0.2, and 18.x and earlier allows..." include that attacker can inject malicious scripts. Mention EPSS low, KEV not mentioned (so not in KEV), but POC? No explicit POC mention, but there is source code evidence, so likely not public exploit. "no public exploit identified at time of analysis". EPSS 0.04% low. Active exploitation? Not in KEV, but source code suggests a fix, and advisory from GitHub. No indication of active exploitation. So summary: "Stored Cross-Site Scripting (XSS) vulnerability in Angular's template compiler allows attackers to inject malicious JavaScript via specific URL-holding attributes and SVG animation elements, bypassing built-in sanitization." I'll craft more specifically.
Technical context: CWE-79, the underlying technology is Angular's template compiler and its security schema for sanitization of attribute bindings. Mention that the compiler's incomplete schema for URL-holding attributes (like xlink:href, math:href) and SVG animation attribute "attributeName" leads to bypassing sanitization. CPE strings show angular for node.js. The commit diff shows changes to validation functions (e.g., replacing validateIframeAttribute with validateAttribute, adding new test cases for SVG animation). So root cause is insufficient classification of attributes as requiring URL security context.
Risk assessment: Use CVSS vector given: CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:A/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N/E:X... So vector: AV:N network,
Server-Side Rendering in Angular's @angular/platform-server leaks server-side credentials to attacker-controlled origins
Cross-site scripting in Angular's Template Compiler allows attackers to inject arbitrary JavaScript through unsanitized
Command injection via untrusted Markdown rendering in the Angular Language Service VS Code extension (versions prior to
Arbitrary code execution in the Angular Language Service VS Code extension prior to 21.2.4 allows attackers to silently
Server-Side Request Forgery in Angular's @angular/platform-server (SSR) lets remote unauthenticated attackers hijack the
Cross-site scripting in Angular's server-side rendering engine (`@angular/platform-server`) allows arbitrary JavaScript
Cross-site scripting via Angular's server-side rendering package (@angular/platform-server) allows arbitrary JavaScript
Cross-site scripting in Angular's internationalization (i18n) pipeline allows attacker-controlled JavaScript to execute
Cross-site scripting in Angular's compiler and runtime (@angular/core, @angular/compiler) prior to versions 20.3.28, 21.
HttpTransferCache in Angular's SSR stack leaks authenticated user data to subsequent unauthenticated visitors when hiera
The Angular SSR is a server-rise rendering tool for Angular applications. Versions prior to 21.2.0-rc.1, 21.1.5, 20.3.17
The Angular SSR is a server-rise rendering tool for Angular applications. An Open Redirect vulnerability exists in the i
Same weakness CWE-79 – Cross-site Scripting (XSS)
View allVendor StatusVendor
Ubuntu
Priority: Medium| Release | Status | Version |
|---|---|---|
| xenial | needs-triage | - |
| bionic | needs-triage | - |
| focal | needs-triage | - |
| jammy | needs-triage | - |
| noble | needs-triage | - |
| questing | needs-triage | - |
| upstream | needs-triage | - |
| plucky | ignored | end of life, was needs-triage |
Debian
| Release | Status | Fixed Version | Urgency |
|---|---|---|---|
| bullseye | fixed | 1.8.2-2 | - |
| bullseye (security) | fixed | 1.8.3-1+deb12u1~deb11u1 | - |
| bookworm | fixed | 1.8.3-1+deb12u1 | - |
| forky, sid, trixie | fixed | 1.8.3-3 | - |
| (unstable) | not-affected | - | - |
Share
External POC / Exploit Code
Leaving vuln.today
EUVD-2025-200118
GHSA-v4hv-rgfq-gp49