Summary
Backstage: Improper entity validation in deprecated Kubernetes services endpoint
Advisory details
Impact
An authenticated user with Kubernetes read permissions could access Kubernetes workload data beyond their intended scope by supplying crafted entity data to the deprecated services endpoint. The exposure is limited to read-only access to Kubernetes object metadata across configured clusters.
Patches
Patched in @backstage/plugin-kubernetes-backend version 0.21.8.
Workarounds
- Disable the deprecated
/services/:serviceIdroute by deploying a custom Kubernetes router that omits it. - Restrict access to the
kubernetes.resources.readpermission to limit the set of users who can reach the endpoint.
References
- https://github.com/advisories/GHSA-r9ph-3637-55px
- https://github.com/backstage/backstage/security/advisories/GHSA-r9ph-3637-55px
- https://nvd.nist.gov/vuln/detail/CVE-2026-106563
- https://github.com/backstage/backstage/commit/2d5d3e77d630455d6d48cfa8f31fd3c126fd6f29
- https://github.com/backstage/backstage/releases/tag/v1.54.1
Related vulnerabilities
All Supply chain →- HIGHCVE-2026-61427
PraisonAI: MCP HTTP-stream transport is unauthenticated by default, exposing tool enumeration and an unvalidated tool-call surface
- CRITICALCVE-2026-96620
Claude Agent SDK: Argument Injection via resume Option Allows Arbitrary Command Execution
- MEDIUMCVE-2026-102682
Pipecat: Public exposure of Pipecat’s development runner can allow unauthenticated bot session creation
- CRITICALCVE-2026-102748
Dgraph: Zero Unauthenticated HTTP Admin removeNode Denial of Service
- MEDIUMCVE-2026-100347
kin-openapi: Unauthenticated panic (DoS) in openapi3filter legacy router via non-canonical/unsupported HTTP method on a static path
- HIGHCVE-2026-85990
Leantime: Any Authenticated User Can Self-Escalate to Admin via Unauthorized JSON-RPC Methods