CVE-2026-50178: Angular: Remote Code Execution via JSDoc Hover Command Injection in VS Code Angular Language Service Extension
The Angular Language Service VS Code Extension provides a rich editing experience for Angular templates. the client-side Angular Language Service VS Code extension configures the tooltip Markdown renderer with the isTrusted: true option (located in client/src/client.ts). This setting instructs VS Code to trust all rendered content it receives, which enables active elements such as command: URIs. However, the background Angular Language Server process fails to escape or sanitize brackets, raw links, and control characters from JSDoc strings before forwarding the hover Markdown content (located in server/src/handlers/hover.ts and server/src/textrender.ts). An attacker can leverage this behavior by crafting a project TypeScript or JavaScript file (or a third-party npm package dependency) containing a malicious JSDoc tooltip with an embedded active command link. When a developer hovers over the target symbol to render the tooltip and clicks the malicious link, the IDE executes the command sequence directly on the developer's host machine. Prior to 21.2.4, This vulnerability is fixed in 21.2.4.
Affected Software
Remediation
Recommended actions to resolve this vulnerability, in priority order.
- Upgrade
Upgrade
Angular Language Service VS Code Extensionto a version that resolves this vulnerability.Fixed in 21.2.4 - Configuration
In client/src/client.ts, configure the tooltip Markdown renderer to use isTrusted: false instead of isTrusted: true to prevent active command link content from being trusted/executed.
VS Code Angular Language Service Extension (client-side tooltip renderer) isTrusted = false
Event History
Frequently Asked Questions
What is the severity of CVE-2026-50178?
CVE-2026-50178 has a high severity score of 8.7.
How do I fix CVE-2026-50178?
To mitigate CVE-2026-50178, update the Angular Language Service VS Code extension to the latest version.
What type of vulnerability is CVE-2026-50178?
CVE-2026-50178 is a remote code execution vulnerability related to command injection in the Angular Language Service.
Which software is affected by CVE-2026-50178?
CVE-2026-50178 affects the Angular Language Service VS Code Extension.
Can CVE-2026-50178 lead to serious security issues?
Yes, CVE-2026-50178 can potentially allow for remote code execution, leading to significant security risks.