Skip to content
Heist/ feed
Back to feed
High

angular.js — security advisory

Type: advisorySources: OSVAdvisory ID: UBUNTU-CVE-2026-50178

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/text_render.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.

Products
angular.js
Affected versions
1.2.28-1ubuntu2, 1.2.28-1ubuntu2+esm1, 1.5.10-1, 1.5.10-1ubuntu0.1~esm1, 1.7.9-1, 1.7.9-1ubuntu0.1~esm1, 1.8.2-2, 1.8.2-2ubuntu0.1, 1.8.3-1, 1.8.3-1ubuntu0.24.04.1, 1.8.3-3
Fixed versions
Not specified
CVEs
CVE-2026-50178
Confirmed fixed CVEs
Not specified
Updated in this feed
31 Oct 2026, 00:23 UTC · Revision 1

Source evidence

UBUNTU-CVE-2026-50178

core-osv · Original source

Published 22 Jun 2026, 16:16 UTC

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/text_render.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.

osv:UBUNTU-CVE-2026-50178

angular.js

Fixed versions: Not specified

angular.js

Fixed versions: Not specified

angular.js

Fixed versions: Not specified

angular.js

Fixed versions: Not specified

angular.js

Fixed versions: Not specified

angular.js

Fixed versions: Not specified

angular.js

Fixed versions: Not specified

angular.js

Fixed versions: Not specified

Complete source record
{
  "id": "03006112cd210ca09151d2da29142e1281172d8e0fc572bf6a3552d1d99d1692",
  "url": "https://osv.dev/vulnerability/UBUNTU-CVE-2026-50178",
  "method": "structured",
  "payload": {
    "kind": "advisory",
    "title": "UBUNTU-CVE-2026-50178",
    "summary": "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/text_render.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.",
    "evidence": "osv:UBUNTU-CVE-2026-50178",
    "products": [
      {
        "name": {
          "value": "angular.js",
          "evidence": "/affected/0/package/name"
        },
        "prerequisites": [],
        "fixed_versions": [],
        "affected_versions": [
          {
            "value": "1.2.28-1ubuntu2",
            "evidence": "/affected/0/versions"
          },
          {
            "value": "1.2.28-1ubuntu2+esm1",
            "evidence": "/affected/0/versions"
          }
        ]
      },
      {
        "name": {
          "value": "angular.js",
          "evidence": "/affected/1/package/name"
        },
        "prerequisites": [],
        "fixed_versions": [],
        "affected_versions": [
          {
            "value": "1.5.10-1",
            "evidence": "/affected/1/versions"
          },
          {
            "value": "1.5.10-1ubuntu0.1~esm1",
            "evidence": "/affected/1/versions"
          }
        ]
      },
      {
        "name": {
          "value": "angular.js",
          "evidence": "/affected/2/package/name"
        },
        "prerequisites": [],
        "fixed_versions": [],
        "affected_versions": [
          {
            "value": "1.5.10-1",
            "evidence": "/affected/2/versions"
          },
          {
            "value": "1.7.9-1",
            "evidence": "/affected/2/versions"
          },
          {
            "value": "1.7.9-1ubuntu0.1~esm1",
            "evidence": "/affected/2/versions"
          }
        ]
      },
      {
        "name": {
          "value": "angular.js",
          "evidence": "/affected/3/package/name"
        },
        "prerequisites": [],
        "fixed_versions": [],
        "affected_versions": [
          {
            "value": "1.8.2-2",
            "evidence": "/affected/3/versions"
          },
          {
            "value": "1.8.2-2ubuntu0.1",
            "evidence": "/affected/3/versions"
          }
        ]
      },
      {
        "name": {
          "value": "angular.js",
          "evidence": "/affected/4/package/name"
        },
        "prerequisites": [],
        "fixed_versions": [],
        "affected_versions": [
          {
            "value": "1.8.3-1",
            "evidence": "/affected/4/versions"
          },
          {
            "value": "1.8.3-1ubuntu0.24.04.1",
            "evidence": "/affected/4/versions"
          }
        ]
      },
      {
        "name": {
          "value": "angular.js",
          "evidence": "/affected/5/package/name"
        },
        "prerequisites": [],
        "fixed_versions": [],
        "affected_versions": [
          {
            "value": "1.8.3-1",
            "evidence": "/affected/5/versions"
          },
          {
            "value": "1.8.3-3",
            "evidence": "/affected/5/versions"
          }
        ]
      },
      {
        "name": {
          "value": "angular.js",
          "evidence": "/affected/6/package/name"
        },
        "prerequisites": [],
        "fixed_versions": [],
        "affected_versions": [
          {
            "value": "1.8.3-3",
            "evidence": "/affected/6/versions"
          }
        ]
      },
      {
        "name": {
          "value": "angular.js",
          "evidence": "/affected/7/package/name"
        },
        "prerequisites": [],
        "fixed_versions": [],
        "affected_versions": [
          {
            "value": "1.8.3-3",
            "evidence": "/affected/7/versions"
          }
        ]
      }
    ],
    "severity": "high",
    "structured": {
      "id": "UBUNTU-CVE-2026-50178",
      "aliases": [
        "UBUNTU-CVE-2026-50178"
      ],
      "metrics": [
        {
          "type": "CVSS_V4",
          "score": "CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:P/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N"
        },
        {
          "type": "CVSS_V3",
          "score": "CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H"
        },
        {
          "type": "Ubuntu",
          "score": "medium"
        }
      ],
      "affected": [
        {
          "ranges": [
            {
              "type": "ECOSYSTEM",
              "events": [
                {
                  "introduced": "0"
                }
              ]
            }
          ],
          "package": {
            "name": "angular.js",
            "purl": "pkg:deb/ubuntu/angular.js?arch=source&distro=esm-infra%2Fxenial",
            "ecosystem": "Ubuntu:Pro:16.04:LTS"
          },
          "versions": [
            "1.2.28-1ubuntu2",
            "1.2.28-1ubuntu2+esm1"
          ],
          "database_specific": {
            "source": "https://github.com/canonical/ubuntu-security-notices/blob/main/osv/cve/2026/UBUNTU-CVE-2026-50178.json"
          },
          "ecosystem_specific": {
            "binaries": [
              {
                "binary_name": "libjs-angularjs",
                "binary_version": "1.2.28-1ubuntu2+esm1"
              }
            ]
          }
        },
        {
          "ranges": [
            {
              "type": "ECOSYSTEM",
              "events": [
                {
                  "introduced": "0"
                }
              ]
            }
          ],
          "package": {
            "name": "angular.js",
            "purl": "pkg:deb/ubuntu/angular.js?arch=source&distro=esm-infra%2Fbionic",
            "ecosystem": "Ubuntu:Pro:18.04:LTS"
          },
          "versions": [
            "1.5.10-1",
            "1.5.10-1ubuntu0.1~esm1"
          ],
          "database_specific": {
            "source": "https://github.com/canonical/ubuntu-security-notices/blob/main/osv/cve/2026/UBUNTU-CVE-2026-50178.json"
          },
          "ecosystem_specific": {
            "binaries": [
              {
                "binary_name": "libjs-angularjs",
                "binary_version": "1.5.10-1ubuntu0.1~esm1"
              }
            ]
          }
        },
        {
          "ranges": [
            {
              "type": "ECOSYSTEM",
              "events": [
                {
                  "introduced": "0"
                }
              ]
            }
          ],
          "package": {
            "name": "angular.js",
            "purl": "pkg:deb/ubuntu/angular.js?arch=source&distro=esm-apps%2Ffocal",
            "ecosystem": "Ubuntu:Pro:20.04:LTS"
          },
          "versions": [
            "1.5.10-1",
            "1.7.9-1",
            "1.7.9-1ubuntu0.1~esm1"
          ],
          "database_specific": {
            "source": "https://github.com/canonical/ubuntu-security-notices/blob/main/osv/cve/2026/UBUNTU-CVE-2026-50178.json"
          },
          "ecosystem_specific": {
            "binaries": [
              {
                "binary_name": "libjs-angularjs",
                "binary_version": "1.7.9-1ubuntu0.1~esm1"
              }
            ]
          }
        },
        {
          "ranges": [
            {
              "type": "ECOSYSTEM",
              "events": [
                {
                  "introduced": "0"
                }
              ]
            }
          ],
          "package": {
            "name": "angular.js",
            "purl": "pkg:deb/ubuntu/angular.js?arch=source&distro=jammy",
            "ecosystem": "Ubuntu:22.04:LTS"
          },
          "versions": [
            "1.8.2-2",
            "1.8.2-2ubuntu0.1"
          ],
          "database_specific": {
            "source": "https://github.com/canonical/ubuntu-security-notices/blob/main/osv/cve/2026/UBUNTU-CVE-2026-50178.json"
          },
          "ecosystem_specific": {
            "binaries": [
              {
                "binary_name": "libjs-angularjs",
                "binary_version": "1.8.2-2ubuntu0.1"
              }
            ]
          }
        },
        {
          "ranges": [
            {
              "type": "ECOSYSTEM",
              "events": [
                {
                  "introduced": "0"
                }
              ]
            }
          ],
          "package": {
            "name": "angular.js",
            "purl": "pkg:deb/ubuntu/angular.js?arch=source&distro=noble",
            "ecosystem": "Ubuntu:24.04:LTS"
          },
          "versions": [
            "1.8.3-1",
            "1.8.3-1ubuntu0.24.04.1"
          ],
          "database_specific": {
            "source": "https://github.com/canonical/ubuntu-security-notices/blob/main/osv/cve/2026/UBUNTU-CVE-2026-50178.json"
          },
          "ecosystem_specific": {
            "binaries": [
              {
                "binary_name": "libjs-angularjs",
                "binary_version": "1.8.3-1ubuntu0.24.04.1"
              }
            ]
          }
        },
        {
          "ranges": [
            {
              "type": "ECOSYSTEM",
              "events": [
                {
                  "introduced": "0"
                }
              ]
            }
          ],
          "package": {
            "name": "angular.js",
            "purl": "pkg:deb/ubuntu/angular.js?arch=source&distro=questing",
            "ecosystem": "Ubuntu:25.10"
          },
          "versions": [
            "1.8.3-1",
            "1.8.3-3"
          ],
          "database_specific": {
            "source": "https://github.com/canonical/ubuntu-security-notices/blob/main/osv/cve/2026/UBUNTU-CVE-2026-50178.json"
          },
          "ecosystem_specific": {
            "binaries": [
              {
                "binary_name": "libjs-angularjs",
                "binary_version": "1.8.3-3"
              }
            ]
          }
        },
        {
          "ranges": [
            {
              "type": "ECOSYSTEM",
              "events": [
                {
                  "introduced": "0"
                }
              ]
            }
          ],
          "package": {
            "name": "angular.js",
            "purl": "pkg:deb/ubuntu/angular.js?arch=source&distro=stonking",
            "ecosystem": "Ubuntu:26.10"
          },
          "versions": [
            "1.8.3-3"
          ],
          "database_specific": {
            "source": "https://github.com/canonical/ubuntu-security-notices/blob/main/osv/cve/2026/UBUNTU-CVE-2026-50178.json"
          },
          "ecosystem_specific": {
            "binaries": [
              {
                "binary_name": "libjs-angularjs",
                "binary_version": "1.8.3-3"
              }
            ]
          }
        },
        {
          "ranges": [
            {
              "type": "ECOSYSTEM",
              "events": [
                {
                  "introduced": "0"
                }
              ]
            }
          ],
          "package": {
            "name": "angular.js",
            "purl": "pkg:deb/ubuntu/angular.js?arch=source&distro=resolute",
            "ecosystem": "Ubuntu:26.04:LTS"
          },
          "versions": [
            "1.8.3-3"
          ],
          "database_specific": {
            "source": "https://github.com/canonical/ubuntu-security-notices/blob/main/osv/cve/2026/UBUNTU-CVE-2026-50178.json"
          },
          "ecosystem_specific": {
            "binaries": [
              {
                "binary_name": "libjs-angularjs",
                "binary_version": "1.8.3-3"
              }
            ]
          }
        }
      ],
      "modified": "2026-10-17T12:54:11.489993349Z",
      "provider": "osv",
      "upstream": [
        "CVE-2026-50178"
      ],
      "references": [
        "https://ubuntu.com/security/CVE-2026-50178",
        "https://www.cve.org/CVERecord?id=CVE-2026-50178"
      ]
    },
    "related_cves": [
      {
        "value": "CVE-2026-50178",
        "evidence": "/upstream"
      }
    ],
    "security_relevant": true,
    "severity_evidence": "/severity/1/score"
  },
  "source_id": "core-osv",
  "document_id": 353501,
  "published_at": "2026-06-22T16:16:00+00:00"
}