@backstage/plugin-proxy-backend: Backstage: Inconsistent credential enforcement for overlapping proxy routes
What fixes it
- 0.6.18@backstage/plugin-proxy-backend, npmGitHub
npm install @backstage/plugin-proxy-backend@0.6.18
A fixed version on one release line is not the upgrade target for every line. Check your exact version and any vendor backports.
Description
Impact
An operator can configure overlapping proxy paths with different credential requirements. When a parent path permits unauthenticated access and a nested path requires credentials, the parent exemption can also cover requests handled by the nested proxy. An unauthenticated caller may therefore reach the nested upstream through Backstage, including with static upstream credentials configured for that proxy.
Exploitation requires this specific overlapping route configuration. The resulting confidentiality and integrity impact depends on the capabilities exposed by the nested upstream.
Patches
Upgrade @backstage/plugin-proxy-backend to version 0.6.18 or later. The fixed package is available in Backstage v1.55.0.
Workarounds
- Avoid nesting a credential-protected proxy path below a path configured with
dangerously-allow-unauthenticated. - Apply the same credential requirement to overlapping proxy paths.
- Restrict direct network access to the Backstage backend until the patched package is deployed.
Text from GitHub Advisory Database
Affected versions 4
- @backstage/plugin-proxy-backend, npm>= 0.5.0, < 0.6.18GitHub
- backstageaffected: >= 1.28.0, < 1.55.0CVE List
- plugin-proxy-backendaffected: >= 0.5.0, < 0.6.18CVE List
- @backstage/plugin-proxy-backend, npmfrom 0.5.0, fixed in 0.6.18OSV
References 5
- github.com/backstage/backstage/commit/9df92923ac32558bb80edeceafd8de780c44e218Fixvia CVE List
- github.com/backstage/backstage/releases/tag/v1.55.0Fixvia CVE List
- github.com/backstage/backstage/security/advisories/GHSA-472h-9c5j-prrrAdvisoryvia CVE List
- github.com/advisories/GHSA-472h-9c5j-prrrAdvisoryvia GitHub
- nvd.nist.gov/vuln/detail/CVE-2026-106456Referencevia GitHub