{"id":"CVE-2026-54246","title":"Skipper is an HTTP router and reverse proxy for service composition","summary":"Skipper is an HTTP router and reverse proxy for service composition. Prior to 0.27.13, the routesrv component serves cluster-wide control-plane data without application-layer authentication through /routes, /routes/{zone}, /swarm/redis/s…","severity":"medium","cvss":5.7,"cvssVector":"CVSS:3.1/AV:A/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N","cwe":["CWE-306"],"vendor":"zalando","product":"skipper","affected":["skipper < 0.27.13"],"patched":["github.com/zalando/skipper 0.27.13"],"published":"2026-09-14","updated":"2026-09-16","sourceUpdated":"2026-09-16T13:42:48.877","source":"NVD","sourceUrl":"https://nvd.nist.gov/vuln/detail/CVE-2026-54246","references":[{"url":"https://github.com/zalando/skipper/commit/fb3d5f98ee749d9a1dfc5df2d51ac9b82fab92aa","label":"security-advisories@github.com"},{"url":"https://github.com/zalando/skipper/pull/4056","label":"security-advisories@github.com"},{"url":"https://github.com/zalando/skipper/releases/tag/v0.27.13","label":"security-advisories@github.com"},{"url":"https://github.com/zalando/skipper/security/advisories/GHSA-5587-2x54-jj6h","label":"security-advisories@github.com"},{"url":"https://github.com/advisories/GHSA-5587-2x54-jj6h"}],"tags":["nvd","cve.org","ghsa","go"],"epss":0.00338,"epssPercentile":0.27377,"aliases":["GHSA-5587-2x54-jj6h"],"ecosystem":"go","ssvc":{"exploitation":"none","automatable":"no","technicalImpact":"partial","timestamp":"2026-09-15T14:38:31.741550Z"},"ingestedAt":"2026-07-17T22:16:59.674Z","slug":"CVE-2026-54246","body":"## Overview\n\nSkipper is an HTTP router and reverse proxy for service composition. Prior to 0.27.13, the routesrv component serves cluster-wide control-plane data without application-layer authentication through /routes, /routes/{zone}, /swarm/redis/shards, and /swarm/valkey/shards. The handlers registered in routesrv/routesrv.go, eskipBytes.ServeHTTP in routesrv/eskipbytes.go, RedisHandler.ServeHTTP in routesrv/redishandler.go, and ValkeyHandler.ServeHTTP in routesrv/valkeyhandler.go only restrict HTTP methods and do not authenticate callers. A compromised or otherwise attacker-controlled pod that can reach routesrv on the Kubernetes cluster network can bypass its namespace-scoped RBAC and read Ingress and RouteGroup backend URLs, filter-chain and OAuth or OIDC path details, and Redis or Valkey shard addresses across namespaces. NetworkPolicy can restrict reachability but does not remove the missing-authentication condition, and the established impact is confidentiality exposure rather than direct integrity or availability loss. This issue is fixed in version 0.27.13.\n\n## Remediation\n\nRefer to the linked advisories for vendor-supplied fixes and affected version ranges.\n\n## Package advisory (CVE-2026-54246)\n\nAffected packages:\n\n- `github.com/zalando/skipper < 0.27.13`\n\nPatched in:\n\n- `github.com/zalando/skipper 0.27.13`\n\nSource: https://github.com/advisories/GHSA-5587-2x54-jj6h","depth":"sunlit","depthScore":31,"depthScoreParts":{"impact":31.4,"likelihood":0.1,"exploitation":0,"ransomware":0},"changes":[]}