Vulnerability DatabaseCVE-2026-106563

CVE-2026-106563: 
JavaScript vulnerability analysis and mitigation

Overview

CVE-2026-106563 is an authorization bypass vulnerability in the @backstage/plugin-kubernetes-backend npm package affecting Backstage, the open-source developer portal framework. Due to improper entity validation in a deprecated Kubernetes services endpoint (/services/:serviceId), an authenticated user with Kubernetes read permissions can access Kubernetes workload data beyond their intended scope by supplying crafted entity data. Affected versions are @backstage/plugin-kubernetes-backend prior to 0.21.8 and Backstage prior to v1.54.1. It carries a CVSS v3.1 base score of 5.3 (Medium) (Github Advisory, Backstage Advisory).

Technical details

The root cause is a combination of improper input validation (CWE-20) and missing authorization (CWE-862) in the deprecated /services/:serviceId route of KubernetesRouter.ts. Prior to the fix, the endpoint accepted a caller-supplied entity object in the POST request body without verifying that the entity actually existed in the Backstage catalog or that the caller was authorized to access it. The patch resolves this by parsing the entity reference, looking it up in the catalog using the caller's credentials, and rejecting requests where the entity is not found (returning HTTP 403). An attacker must be authenticated and hold the kubernetes.resources.read permission, but can then craft an arbitrary entity reference to query Kubernetes object metadata across any configured cluster (Backstage Advisory, Patch Commit).

Impact

Successful exploitation allows an authenticated attacker to read Kubernetes object metadata (workload data) across all clusters configured in the Backstage instance, beyond the scope they are authorized to access. The impact is limited to confidentiality — there is no integrity or availability impact, and no write access is granted. Sensitive information such as pod names, namespaces, labels, annotations, and other Kubernetes resource metadata from unauthorized clusters could be exposed, potentially aiding further reconnaissance or lateral movement within a Kubernetes environment (Github Advisory).

Exploitability

There is no public proof-of-concept exploit and no evidence of in-the-wild exploitation at this time (Github Advisory). The EPSS score is 0.0, indicating very low probability of exploitation in the near term. The vulnerability is not listed in the CISA Known Exploited Vulnerabilities (KEV) catalog. Exploitation requires authentication and the kubernetes.resources.read permission, which raises the bar for opportunistic attackers, though insider threats or compromised accounts remain a concern.

Exploitation steps

  1. Authenticate: Obtain valid Backstage credentials for an account that holds the kubernetes.resources.read permission.
  2. Identify the deprecated endpoint: Confirm the target Backstage instance exposes the deprecated /api/kubernetes/services/:serviceId POST endpoint (present in @backstage/plugin-kubernetes-backend < 0.21.8).
  3. Craft a malicious request: Construct a POST request to /api/kubernetes/services/<any-service-id> with a JSON body containing a crafted entity object referencing an entity the attacker is not authorized to access, e.g.:
{
  "entity": {
    "kind": "Component",
    "metadata": { "name": "target-service", "namespace": "production" }
  }
}
  1. Retrieve unauthorized metadata: The server, lacking catalog-based entity validation, processes the crafted entity and returns Kubernetes workload metadata (pods, deployments, etc.) from configured clusters associated with the specified entity, bypassing intended access controls.
  2. Enumerate clusters: Repeat with different entity references to enumerate Kubernetes object metadata across all clusters configured in the Backstage instance (Backstage Advisory, Patch Commit).

Indicators of compromise

  • Network: Unusual or repeated POST requests to /api/kubernetes/services/<serviceId> from authenticated users, especially with entity references that do not correspond to entities the user normally accesses.
  • Logs: Backstage backend access logs showing POST requests to the deprecated /services/:serviceId endpoint with entity bodies referencing namespaces or components outside the user's normal scope; after patching, HTTP 403 responses with the message Entity not found for crafted entity references.
  • Behavioral: A single authenticated user querying many different entity references or namespaces via the Kubernetes services endpoint in a short time window, suggesting enumeration activity.

Mitigation and workarounds

Upgrade @backstage/plugin-kubernetes-backend to version 0.21.8 or later, or upgrade the Backstage monorepo to v1.54.1 or later, which includes the fix (Backstage Release). If immediate patching is not possible, two workarounds are available: (1) disable the deprecated /services/:serviceId route by deploying a custom Kubernetes router that omits it, or (2) restrict the kubernetes.resources.read permission to a minimal set of trusted users to reduce the attack surface (Github Advisory).

Additional resources


Source: This report was generated using AI

Related JavaScript vulnerabilities:

CVE ID

Severity

Score

Technologies

Component name

CISA KEV exploit

Has fix

Published date

CVE-2026-106557HIGH7.7
  • JavaScript logoJavaScript
  • @backstage/plugin-techdocs-node
NoYesOct 07, 2026
CVE-2026-106108MEDIUM5.6
  • JavaScript logoJavaScript
  • @quasar/app-vite
NoYesOct 07, 2026
CVE-2026-106563MEDIUM5.3
  • JavaScript logoJavaScript
  • @backstage/plugin-kubernetes-backend
NoYesOct 07, 2026
CVE-2026-106561MEDIUM5
  • JavaScript logoJavaScript
  • @backstage/plugin-kubernetes-backend
NoYesOct 07, 2026
CVE-2026-106562MEDIUM4.3
  • JavaScript logoJavaScript
  • @backstage/plugin-search-backend
NoYesOct 07, 2026

Free Vulnerability Assessment

Benchmark your Cloud Security Posture

Evaluate your cloud security practices across 9 security domains to benchmark your risk level and identify gaps in your defenses.

Request assessment

Get a personalized demo

Ready to see Wiz in action?

"Best User Experience I have ever seen, provides full visibility to cloud workloads."
David EstlickCISO
"Wiz provides a single pane of glass to see what is going on in our cloud environments."
Adam FletcherChief Security Officer
"We know that if Wiz identifies something as critical, it actually is."
Greg PoniatowskiHead of Threat and Vulnerability Management