@backstage/plugin-scaffolder-backend: Backstage's scaffolder credential handling may allow unintended GitHub authentication fallback
What fixes it
- 4.1.0@backstage/plugin-scaffolder-backend, npmGitHub
npm install @backstage/plugin-scaffolder-backend@4.1.0 - 0.9.13@backstage/plugin-scaffolder-backend-module-github, npmGitHub
npm install @backstage/plugin-scaffolder-backend-module-github@0.9.13 - 0.11.10@backstage/plugin-scaffolder-backend-module-gitlab, npmGitHub
npm install @backstage/plugin-scaffolder-backend-module-gitlab@0.11.10 - 0.2.25@backstage/plugin-scaffolder-backend-module-azure, npmGitHub
npm install @backstage/plugin-scaffolder-backend-module-azure@0.2.25 - 0.3.10@backstage/plugin-scaffolder-backend-module-bitbucket-cloud, npmGitHub
npm install @backstage/plugin-scaffolder-backend-module-bitbucket-cloud@0.3.10 - 0.2.25@backstage/plugin-scaffolder-backend-module-bitbucket-server, npmGitHub
npm install @backstage/plugin-scaffolder-backend-module-bitbucket-server@0.2.25
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
Scaffolder actions that interact with source control systems may not consistently enforce the intended credential boundaries under certain configurations. An authenticated user could perform operations with broader access than intended.
Patches
@backstage/plugin-scaffolder-backendversion4.1.0@backstage/plugin-scaffolder-backend-module-azureversion0.2.25@backstage/plugin-scaffolder-backend-module-bitbucket-cloudversion0.3.10@backstage/plugin-scaffolder-backend-module-bitbucket-serverversion0.2.25@backstage/plugin-scaffolder-backend-module-githubversion0.9.13@backstage/plugin-scaffolder-backend-module-gitlabversion0.11.10
The fix introduces a new configuration option that enforces user-provided credentials for supported SCM actions. The new behavior is opt-in for compatibility. After upgrading, set:
scaffolder: requireScmUserCredentials: true
Before enabling this setting, review and update your templates as described in the software templates documentation referred to below.
Workarounds
If you cannot upgrade and enable the setting immediately:
- Restrict who can create Scaffolder tasks and which templates they can execute.
- Limit SCM integration credentials to the minimum repository read and mutation permissions required.
- Remove integration credentials for SCM hosts where all required operations can use explicitly supplied user tokens.
Text from GitHub Advisory Database
Affected versions 19
- @backstage/plugin-scaffolder-backend, npm< 4.1.0GitHub
- @backstage/plugin-scaffolder-backend-module-github, npm< 0.9.13GitHub
- @backstage/plugin-scaffolder-backend-module-gitlab, npm< 0.11.10GitHub
- @backstage/plugin-scaffolder-backend-module-azure, npm< 0.2.25GitHub
- @backstage/plugin-scaffolder-backend-module-bitbucket-cloud, npm< 0.3.10GitHub
- @backstage/plugin-scaffolder-backend-module-bitbucket-server, npm< 0.2.25GitHub
- backstageaffected: < 1.54.6CVE List
- plugin-scaffolder-backendaffected: < 4.1.0CVE List
- plugin-scaffolder-backend-module-azureaffected: < 0.2.25CVE List
- plugin-scaffolder-backend-module-bitbucket-cloudaffected: < 0.3.10CVE List
- plugin-scaffolder-backend-module-bitbucket-serveraffected: < 0.2.25CVE List
- plugin-scaffolder-backend-module-githubaffected: < 0.9.13CVE List
- plugin-scaffolder-backend-module-gitlabaffected: < 0.11.10CVE List
- @backstage/plugin-scaffolder-backend, npmfrom first release, fixed in 4.1.0OSV
- @backstage/plugin-scaffolder-backend-module-github, npmfrom first release, fixed in 0.9.13OSV
- @backstage/plugin-scaffolder-backend-module-gitlab, npmfrom first release, fixed in 0.11.10OSV
- @backstage/plugin-scaffolder-backend-module-azure, npmfrom first release, fixed in 0.2.25OSV
- @backstage/plugin-scaffolder-backend-module-bitbucket-cloud, npmfrom first release, fixed in 0.3.10OSV
- @backstage/plugin-scaffolder-backend-module-bitbucket-server, npmfrom first release, fixed in 0.2.25OSV
References 6
- github.com/backstage/backstage/commit/6fb2a41ea47da37eafe5ea744050Fixvia GitHub
- github.com/backstage/backstage/commit/6fb2a41ea47da37eafe5ea744050ef90be6820c0Fixvia CVE List
- github.com/backstage/backstage/releases/tag/v1.54.6Fixvia CVE List
- github.com/backstage/backstage/security/advisories/GHSA-29gx-h2m3-xw44Advisoryvia CVE List
- github.com/advisories/GHSA-29gx-h2m3-xw44Advisoryvia GitHub
- nvd.nist.gov/vuln/detail/CVE-2026-106462Referencevia GitHub