Backstage: Inconsistent credential enforcement for overlapping proxy routes
### 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](https://github.com/backstage/backstage/releases/tag/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.
- Products
- @backstage/plugin-proxy-backend
- Affected versions
- Not specified
- Fixed versions
- 0.6.18
- CVEs
- CVE-2026-106456
- Confirmed fixed CVEs
- Not specified
- Updated in this feed
- 28 Oct 2026, 08:47 UTC · Revision 1
Source evidence
Backstage: Inconsistent credential enforcement for overlapping proxy routes
core-osv · Original sourcePublished 7 Oct 2026, 20:25 UTC
### 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](https://github.com/backstage/backstage/releases/tag/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.
osv:GHSA-472h-9c5j-prrr
@backstage/plugin-proxy-backend
Fixed versions: 0.6.18
Complete source record
{
"id": "944c98df8b55c02dd211803ae6d2b553c21902ecd0dde97805a2e51239e03d58",
"url": "https://osv.dev/vulnerability/GHSA-472h-9c5j-prrr",
"method": "structured",
"payload": {
"kind": "advisory",
"title": "Backstage: Inconsistent credential enforcement for overlapping proxy routes",
"summary": "### 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](https://github.com/backstage/backstage/releases/tag/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.",
"evidence": "osv:GHSA-472h-9c5j-prrr",
"products": [
{
"name": {
"value": "@backstage/plugin-proxy-backend",
"evidence": "/affected/0/package/name"
},
"prerequisites": [],
"fixed_versions": [
{
"value": "0.6.18",
"evidence": "/affected/0/ranges"
}
],
"affected_versions": []
}
],
"severity": "medium",
"structured": {
"id": "GHSA-472h-9c5j-prrr",
"aliases": [
"CVE-2026-106456",
"GHSA-472h-9c5j-prrr"
],
"metrics": [
{
"type": "CVSS_V3",
"score": "CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:L/A:N"
}
],
"affected": [
{
"ranges": [
{
"type": "SEMVER",
"events": [
{
"introduced": "0.5.0"
},
{
"fixed": "0.6.18"
}
]
}
],
"package": {
"name": "@backstage/plugin-proxy-backend",
"purl": "pkg:npm/%40backstage/plugin-proxy-backend",
"ecosystem": "npm"
},
"database_specific": {
"source": "https://github.com/github/advisory-database/blob/main/advisories/github-reviewed/2026/10/GHSA-472h-9c5j-prrr/GHSA-472h-9c5j-prrr.json"
}
}
],
"modified": "2026-10-07T20:30:07.225533458Z",
"provider": "osv",
"references": [
"https://github.com/backstage/backstage/security/advisories/GHSA-472h-9c5j-prrr",
"https://nvd.nist.gov/vuln/detail/CVE-2026-106456",
"https://github.com/backstage/backstage/commit/9df92923ac32558bb80edeceafd8de780c44e218",
"https://github.com/backstage/backstage",
"https://github.com/backstage/backstage/releases/tag/v1.55.0"
],
"provider_metadata": {
"cwe_ids": [
"CWE-863"
],
"severity": "MODERATE",
"github_reviewed": true,
"nvd_published_at": "2026-10-06T21:17:15Z",
"github_reviewed_at": "2026-10-07T20:25:13Z"
}
},
"related_cves": [
{
"value": "CVE-2026-106456",
"evidence": "/aliases"
}
],
"security_relevant": true,
"severity_evidence": "/severity/0/score"
},
"source_id": "core-osv",
"document_id": 97241,
"published_at": "2026-10-07T20:25:13+00:00"
}