Update dependency @angular/platform-server to v21.2.19 [SECURITY] - #2958
Merged
iamfrankiemoran merged 1 commit intoAug 5, 2026
Merged
Conversation
renovate
Bot
force-pushed
the
renovate/npm-angular-platform-server-vulnerability
branch
from
August 3, 2026 18:06
abf0042 to
e87c96c
Compare
iamfrankiemoran
enabled auto-merge (squash)
August 4, 2026 08:05
renovate
Bot
force-pushed
the
renovate/npm-angular-platform-server-vulnerability
branch
from
August 4, 2026 09:08
e87c96c to
b76f058
Compare
renovate
Bot
force-pushed
the
renovate/npm-angular-platform-server-vulnerability
branch
from
August 4, 2026 10:17
b76f058 to
d6ac3c6
Compare
renovate
Bot
force-pushed
the
renovate/npm-angular-platform-server-vulnerability
branch
2 times, most recently
from
August 4, 2026 12:33
d62b710 to
c4cb3f2
Compare
renovate
Bot
force-pushed
the
renovate/npm-angular-platform-server-vulnerability
branch
from
August 4, 2026 15:57
c4cb3f2 to
a2e0217
Compare
renovate
Bot
force-pushed
the
renovate/npm-angular-platform-server-vulnerability
branch
from
August 4, 2026 18:07
a2e0217 to
6168aef
Compare
renovate
Bot
force-pushed
the
renovate/npm-angular-platform-server-vulnerability
branch
from
August 4, 2026 19:10
6168aef to
1a92530
Compare
renovate
Bot
force-pushed
the
renovate/npm-angular-platform-server-vulnerability
branch
from
August 5, 2026 07:33
1a92530 to
52ca14e
Compare
iamfrankiemoran
deleted the
renovate/npm-angular-platform-server-vulnerability
branch
August 5, 2026 08:36
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This PR contains the following updates:
21.2.17→21.2.19Angular SSR: Missing Fallback Raw-Content Serialization Escaping leads to Cross-Site Scripting (XSS)
CVE-2026-69149 / GHSA-vpx6-8pjr-4g3v
More information
Details
A Cross-Site Scripting (XSS) vulnerability exists in
@angular/platform-server's DOM emulation dependency (domino) when serializing the content of fallback raw-content elements (<iframe>,<noembed>,<noframes>, and<noscript>).When rendering dynamic text content inside fallback raw-content elements via template bindings, the template engine expects the browser to render the content safely. Under Server-Side Rendering (SSR),
dominois configured with scripting enabled, meaning these elements are treated as raw-text elements.However,
domino's serializer previously did not escape text nodes within fallback raw-content elements (<iframe>,<noembed>,<noframes>,<noscript>) during DOM serialization. As a result, any occurrence of closing tags in the bound dynamic text was not escaped.The unescaped closing tag could be serialized directly into the output HTML. When parsed by a browser or re-parsed during SSR post-processing without preserving raw-content parser state, an injected closing tag closes the element early, allowing an injected script block to execute in the user's browser context, causing same-origin Cross-Site Scripting (XSS).
Impact
This vulnerability allows an attacker to perform same-origin Cross-Site Scripting (XSS) attacks against any user visiting an SSR-rendered page that binds user-controlled data inside fallback raw-content elements (
<iframe>,<noembed>,<noframes>,<noscript>). This can lead to session hijacking, credentials theft, unauthorized actions on behalf of users, and defacement.Patched Versions
Workarounds
If you cannot immediately update your dependencies, you can mitigate this issue using any of the following approaches:
domino. Disabling this step preventsdominofrom re-parsing and re-serializing the HTML during server-side rendering.angular.json, setinlineCriticaltofalseunder style optimization options:{ "projects": { "my-app": { "architect": { "build": { "builder": "@angular/build:application", "options": { "optimization": { "styles": { "inlineCritical": false } } } } } } } }CommonEngine, setinlineCriticalCss: falsein your render options.<iframe>,<noembed>,<noframes>,<noscript>).Severity
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:P/VC:H/VI:H/VA:N/SC:N/SI:N/SA:NReferences
This data is provided by the GitHub Advisory Database (CC-BY 4.0).
Release Notes
angular/angular (@angular/platform-server)
v21.2.19Compare Source
compiler
http
platform-server
v21.2.18Compare Source
compiler-cli
core
http
service-worker
Configuration
📅 Schedule: (in timezone Europe/London)
* 17-23 * * 1-5)* 0-8 * * 1-5)* * * * 0,6)🚦 Automerge: Enabled.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR was generated by Mend Renovate. View the repository job log.