{"cve":"CVE-2026-88058","nvd":{"published":"2026-09-10T19:17:41.800","modified":"2026-09-29T19:01:24.747","status":"Analyzed","description":"Angular is a development platform for building mobile and desktop web applications using TypeScript/JavaScript and other languages. Prior to 20.3.30, 21.2.22, and 22.1.4, Angular server-side rendering (SSR) in @angular/platform-server serializes ProcessingInstruction DOM nodes inside fallback raw-content elements without escaping matching ancestor closing tags. ProcessingInstruction data escaped greater-than characters but left less-than characters untouched and did not inspect fallback ancestors, so data such as a matching closing tag prematurely terminates noscript, iframe, noembed, or noframes containers. The vulnerable nodes cannot be authored through standard Angular templates; reachability requires application or library code using inject(DOCUMENT).createProcessingInstruction with attacker-controlled data or Renderer2 DOM insertion inside a fallback container. In HTML5 RAWTEXT parsing, the premature close causes subsequent sibling elements to be interpreted as live HTML and enables arbitrary JavaScript execution in a victim's browser. This issue is fixed in versions 20.3.30, 21.2.22, and 22.1.4.","cvss_v4":{"vector":"CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:P/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N","score":8.6},"cvss_v3":{"version":"3.1","vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N","score":6.1},"cwes":["CWE-79","CWE-116"],"references":["https://github.com/angular/angular/commit/73d8bbd27cb46495426d4132975a1355b47ad915","https://github.com/angular/angular/commit/89b20568dfaee1ec8e0b3bcf1872acdddd2f4fef","https://github.com/angular/angular/commit/ba3bc47b20b3d12f5eb141ec9c651373ae4d15e8","https://github.com/angular/angular/issues/70146","https://github.com/angular/angular/releases/tag/v20.3.30"],"products":["angular:angular"],"source":"nvd","synced_at":"2026-10-19T22:52:53.108888569+00:00"},"epss":{"cve":"CVE-2026-88058","score":0.00281,"percentile":0.20656,"date":"2026-10-31"},"kev":null,"osv":[{"id":"GHSA-j3r3-mxqp-r2p4","url":"https://osv.dev/vulnerability/GHSA-j3r3-mxqp-r2p4","summary":"Angular SSR: XSS via Unescaped Processing Instruction (<?...?>) Nodes in Fallback Raw-Content Elements","modified":"2026-09-28T20:45:04.134330777Z","packages":[{"ecosystem":"npm","name":"@angular/platform-server","purl":"pkg:npm/%40angular/platform-server","ranges":[">=22.0.0 <22.1.4"],"fixed":["22.1.4"]},{"ecosystem":"npm","name":"@angular/platform-server","purl":"pkg:npm/%40angular/platform-server","ranges":[">=21.0.0 <21.2.22"],"fixed":["21.2.22"]},{"ecosystem":"npm","name":"@angular/platform-server","purl":"pkg:npm/%40angular/platform-server","ranges":[">=20.0.0 <20.3.30"],"fixed":["20.3.30"]},{"ecosystem":"npm","name":"@angular/platform-server","purl":"pkg:npm/%40angular/platform-server","ranges":["<=19.2.25"],"fixed":[]}]}],"attribution":["This product uses the NVD API but is not endorsed or certified by the NVD.","EPSS scores: FIRST Exploit Prediction Scoring System, https://www.first.org/epss","Known exploited vulnerabilities: CISA Known Exploited Vulnerabilities Catalog, https://www.cisa.gov/known-exploited-vulnerabilities-catalog","Package advisories: OSV (https://osv.dev), from the GitHub Advisory Database, PyPA, Go, RustSec and other ecosystem databases, under CC-BY 4.0 or CC0","CVE records: the CVE Program's CVE List (https://www.cve.org), under its terms of use (https://www.cve.org/Legal/TermsOfUse). CVE is a registered trademark of The MITRE Corporation; this product is not affiliated with the CVE Program."]}