Backstage: Insufficient audience validation in the Cloudflare Access auth provider
What fixes it
- 0.5.0@backstage/plugin-auth-backend-module-cloudflare-access-provider, npmGitHub
npm install @backstage/plugin-auth-backend-module-cloudflare-access-provider@0.5.0
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
The Cloudflare Access auth provider verifies a token's signature and team issuer, but affected versions do not verify that the token was issued for the Backstage application. A user holding a valid token for another Access application in the same Cloudflare Zero Trust team may therefore be able to authenticate to Backstage if that token reaches the auth endpoint without the Backstage application's audience already being enforced upstream.
Cloudflare Access normally evaluates the protected application before forwarding requests. The reported reproduction exercises the provider directly and does not demonstrate bypass through the ordinary Cloudflare-protected Backstage URL. Relevant deployment topologies include direct origin access, alternate routes around the intended Access application, or another proxy forwarding the assertion unchanged.
A successful sign-in also depends on the deployment's sign-in resolver mapping the presented identity to a Backstage user. The resulting impact depends on the permissions assigned to that identity.
Patches
Upgrade @backstage/plugin-auth-backend-module-cloudflare-access-provider to version 0.5.0 or later. The fixed package is available in Backstage v1.55.0.
This is a breaking configuration change. Before upgrading, set auth.providers.cfaccess.audience to the Audience (AUD) tag for the Backstage application in Cloudflare Zero Trust:
auth:
providers:
cfaccess:
teamName: example
audience: ${AUTH_CFACCESS_AUDIENCE}Workarounds
- Restrict access to the Backstage auth endpoint to the intended Cloudflare Access application.
- Use a custom authenticator that validates the application audience.
- Disable the provider until the patched package can be deployed.
Text from GitHub Advisory Database
Affected versions 4
- @backstage/plugin-auth-backend-module-cloudflare-access-provider, npm>= 0.1.0, < 0.5.0GitHub
- backstageaffected: >= 1.26.0, < 1.55.0CVE List
- plugin-auth-backend-module-cloudflare-access-provideraffected: >= 0.1.0, < 0.5.0CVE List
- @backstage/plugin-auth-backend-module-cloudflare-access-provider, npmfrom 0.1.0, fixed in 0.5.0OSV
References 5
- github.com/backstage/backstage/commit/ed9034cacd9def3b3674f0a764fe992f751e204dFixvia CVE List
- github.com/backstage/backstage/releases/tag/v1.55.0Fixvia CVE List
- github.com/backstage/backstage/security/advisories/GHSA-q333-f498-w2x7Advisoryvia CVE List
- github.com/advisories/GHSA-q333-f498-w2x7Advisoryvia GitHub
- nvd.nist.gov/vuln/detail/CVE-2026-106457Referencevia GitHub