Update dependency @backstage/plugin-scaffolder-backend to v3 [SECURITY]#201
Open
alithya-oss-backstage-ci[bot] wants to merge 1 commit intomainfrom
Open
Conversation
Signed-off-by: Renovate Bot <bot@renovateapp.com>
Contributor
Author
Missing ChangesetsThe following package(s) are changed by this PR but do not have a changeset:
See CONTRIBUTING.md for more information about how to add changesets. Changed Packages
|
Contributor
Author
Edited/Blocked NotificationRenovate will not automatically rebase this PR, because it does not recognize the last commit author and assumes somebody else may have edited the PR. You can manually request rebase by checking the rebase/retry box above. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This PR contains the following updates:
^1.33.0→^3.0.0Template Secret leakage in logs in Scaffolder when using
fetch:templateCVE-2025-55285 / GHSA-3x3q-ghcp-whf7
More information
Details
A logging flaw in Backstage Scaffolder’s
fetch:templateaction up to@backstage/plugin-scaffolder-backend2.1.0 may write template secrets to logs. The action emitted a duplicate, pre-redaction copy of input parameters, so values provided via the `` bag could appear in local/server logs when the action ran. Exploitation requires use of thesecretsargument and access to Scaffolder/build logs; integrity and availability are unaffected.2.1.1, which removes the duplicate log path and ensures secrets are redacted.fetch:templateif upgrade is not possible.Severity
CVSS:3.1/AV:N/AC:H/PR:H/UI:R/S:C/C:L/I:N/A:NReferences
This data is provided by OSV and the GitHub Advisory Database (CC-BY 4.0).
Backstage has a Possible Symlink Path Traversal in Scaffolder Actions
CVE-2026-24046 / GHSA-rq6q-wr2q-7pgp
More information
Details
Impact
Multiple Scaffolder actions and archive extraction utilities were vulnerable to symlink-based path traversal attacks. An attacker with access to create and execute Scaffolder templates could exploit symlinks to:
debug:logaction by creating a symlink pointing to sensitive files (e.g.,/etc/passwd, configuration files, secrets)fs:deleteaction by creating symlinks pointing outside the workspaceThis affects any Backstage deployment where users can create or execute Scaffolder templates.
Patches
This vulnerability is fixed in the following package versions:
@backstage/backend-defaultsversion 0.12.2, 0.13.2, 0.14.1, 0.15.0@backstage/plugin-scaffolder-backendversion 2.2.2, 3.0.2, 3.1.1@backstage/plugin-scaffolder-nodeversion 0.11.2, 0.12.3Users should upgrade to these versions or later.
Workarounds
References
Severity
CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:C/C:H/I:N/A:LReferences
This data is provided by OSV and the GitHub Advisory Database (CC-BY 4.0).
@backstage/plugin-scaffolder-backend Vulnerable to Potential Session Token Exfiltration via Log Redaction Bypass
CVE-2026-29184 / GHSA-8qp7-fhr9-fw53
More information
Details
Impact
A malicious scaffolder template can bypass the log redaction mechanism to exfiltrate secrets provided run through task event logs.
The attack requires:
Patches
Patched in
@backstage/plugin-scaffolder-backendversion 3.1.4Workarounds
Resources
Severity
CVSS:3.1/AV:N/AC:H/PR:H/UI:R/S:U/C:L/I:N/A:NReferences
This data is provided by OSV and the GitHub Advisory Database (CC-BY 4.0).
Release Notes
backstage/backstage (@backstage/plugin-scaffolder-backend)
v3.1.4Compare Source
Patch Changes
4e39e63: Removed unused dependenciesv3.1.3Compare Source
Patch Changes
7455dae: Use node prefix on native imports4fc7bf0: Removed unused dependency0ce78b0: Supportifconditions insideeachloops for scaffolder steps5e3ef57: AddedpeerModulesmetadata declaring recommended modules for cross-plugin integrations.8148621: Moved@backstage/backend-defaultsfromdependenciestodevDependencies.1e669cc: Migrate audit events reference docs to http://backstage.io/docs.69d880e: Bump to latest zod to ensure it has the latest featuresv3.1.2Compare Source
Patch Changes
7455dae: Use node prefix on native imports4fc7bf0: Removed unused dependency1e669cc: Migrate audit events reference docs to http://backstage.io/docs.69d880e: Bump to latest zod to ensure it has the latest featuresv3.1.1Compare Source
Patch Changes
5012852: Remove unused abort controller in debug:wait actionc641c14: Wrap some of the action logic withresolveSafeChildPathand improve symlink handling when fetching remote and local files27f9061: REwrite]872eb91: Upgradezod-to-json-schemato latest versionv3.1.0Compare Source
Minor Changes
a4cd405: AdddefaultEnvironmentconfig to scaffolder to enable more flexible and custom templates. Now it's possible enable access to default parameters and secrets in templates, improving security and reducing complexity.Patch Changes
be5972b: Fixed a bug where config was not passed to NunjucksWorkflowRunner, causing defaultEnvironment to be undefinedde96a60: chore(deps): bumpexpressfrom 4.21.2 to 4.22.02bae83a: Updatedisolated-vmto6.0.125b560e: Internal change to support new versions of thelogformlibrary8f4aded: Fixing OpenAPI definition1226647: Updated dependencyesbuildto^0.27.0.v3.0.2Compare Source
v3.0.1Compare Source
Patch Changes
05f60e1: Refactored constructor parameter properties to explicit property declarations for compatibility with TypeScript'serasableSyntaxOnlysetting. This internal refactoring maintains all existing functionality while ensuring TypeScript compilation compatibility.v3.0.0Compare Source
Major Changes
9b81a90: BREAKING - Removing the deprecated types and interfaces, there's no replacement for these types, and hopefully not currently used as they offer no value with the plugin being on the new backend system and no way to consume them.Affected types:
CreateWorkerOptions,CurrentClaimedTask,DatabaseTaskStore,DatabaseTaskStoreOptions,TaskManager,TaskStore,TaskStoreCreateTaskOptions,TaskStoreCreateTaskResult,TaskStoreEmitOptions,TaskStoreListEventsOptions,TaskStoreRecoverTaskOptions,TaskStoreShutDownTaskOptions,TaskWorkerandTemplateActionRegistry.Patch Changes
f222a2e: Fixed distributed actions not being visible in the scaffolder template actions.Depending on the plugin startup order, some of the distributed actions were not being registered correctly,
causing them to be invisible in the scaffolder template actions list.
Updated dependencies
v2.2.2Compare Source
v2.2.1Compare Source
Patch Changes
a57185f: Added support for executing actions from theActionsRegistryin thescaffolder-backendc3405db: Fixed a regression that prevented uploads greater than 100KB. Uploads up to 10MB are supported again.v2.2.0Compare Source
Minor Changes
c08cbc4: Move Scaffolder API to OpenAPI2032660: Fixed fs:readdir action example11dc90f: Implement max length for scaffolder auditor audit logging with default of 256812485c: Add step info to scaffolder action context to access the step id and name.Patch Changes
caee2eb: Fixed WinstonLogger throwing when redactions were null or undefined4ae87f5: addgetResourcesmethod topermissionIntegrationRouterfor frontend task permission checksb817c1d: Stop logging ofSPLATtwice in logsv2.1.1Compare Source
v2.1.0Compare Source
Minor Changes
c1ce316: BREAKING/alpha: Convertedscaffolder.task.readandscaffolder.task.cancelinto Resource Permissions.BREAKING
/alpha: Added a new scaffolder ruleisTaskOwnerforscaffolder.task.readandscaffolder.task.cancelto allow for conditional permission policies such as restricting access to tasks and task events based on task creators.BREAKING
/alpha: Retrying a task now requires bothscaffolder.task.readandscaffolder.task.createpermissions, replacing the previous requirement ofscaffolder.task.readandscaffolder.task.cancel.Patch Changes
424610a: Scaffolder audit Log now includes taskId and createdBydbde180: An internal refactor which adds additional types to experimental checkpointsfc70b43: Replaced deprecated uses of@backstage/backend-commonwith the equivalents in@backstage/backend-defaultsand@backstage/backend-plugin-api.v2.0.0Compare Source
Major Changes
33394db: BREAKING CHANGESRemoval of deprecated re-exports from module packages.
The following functions have been re-exported from the
scaffolder-backendplugin for quite some time, and now it's time to clean them up. They've been moved as follows:createPublishAzureActionshould be imported from@backstage/plugin-scaffolder-backend-module-azureinstead.createPublishBitbucketCloudActionshould be imported from@backstage/plugin-scaffolder-backend-module-bitbucket-cloudinstead.createPublishBitbucketServerActionandcreatePublishBitbucketServerPullRequestActioncan be imported from@backstage/plugin-scaffolder-backend-module-bitbucket-serverinstead.createPublishBitbucketActionshould be imported from@backstage/plugin-scaffolder-backend-module-bitbucketinstead.createPublishGerritActionandcreatePublishGerritReviewActioncan be imported from@backstage/plugin-scaffolder-backend-module-gerritinstead.createGithubActionsDispatchAction,createGithubDeployKeyAction,createGithubEnvironmentAction,createGithubIssuesLabelAction,CreateGithubPullRequestActionOptions,createGithubRepoCreateAction,createGithubRepoPushAction,createGithubWebhookAction, andcreatePublishGithubActioncan be imported from@backstage/plugin-scaffolder-backend-module-githubinstead.createPublishGitlabActionshould be imported from@backstage/plugin-scaffolder-backend-module-gitlabinstead.ActionContext.createTemplateAction,executeShellCommand,ExecuteShellCommandOptions,fetchContents,TaskSecrets, andTemplateActionshould be imported from@backstage/plugin-scaffolder-nodeinstead.ScaffolderEntitiesProcessorshould be imported from@backstage/plugin-catalog-backend-module-scaffolder-entity-modelinstead.a8fcf04: BREAKING ALPHA: The/alphaexport no longer exports the plugin. Please useimport('@​backstage/plugin-scaffolder-backend')instead as this has been removed.BREAKING CHANGES: The old
createRouterfunction which was used in the old backend system has been removed along with theRouterOptionstype.73b94d7: BREAKING CHANGESThe following functions have been re-exported from the
scaffolder-backendplugin for quite some time, and now it's time to clean them up. They've been moved as follows:SerializedTask,SerializedTaskEvent,TaskBroker,TaskBrokerDispatchOptions,TaskBrokerDispatchResult,TaskCompletionState,TaskContext,TaskEventType,TaskStatus,TemplateFilter, andTemplateGlobalshould be imported from@backstage/plugin-scaffolder-nodeinstead.The deprecated
copyWithoutRenderoption has been removed fromfetch:templateaction. You should rename the option tocopyWithoutTemplatinginstead.5863b04: BREAKING CHANGESThe
createBuiltinActionsmethod has been removed, as this should no longer be needed with the new backend system route, and was only useful when passing the default list of actions again in the old backend system. You should be able to rely on the default behaviour of the new backend system which is to merge the actions.The
createCatalogRegisterActionandcreateFetchCatalogEntityActionactions no longer require anAuthService, and now accepts aCatalogServiceinstead ofCatalogClient.Unless you're providing your own override action to the default, this should be a non-breaking change.
You can migrate using the following if you're getting typescript errors:
Minor Changes
73b94d7: DEPRECATIONSThe following types and implementations have been deprecated, either because they're no longer relevant, or because upcoming changes to the
scaffolder-backendafter2.0.0will influence the changes to these API surfaces.CreateWorkerOptionsDatabaseTaskStoreDatabaseTaskStoreOptionsTaskManagerTaskStoreCreateTaskOptionsTaskStoreCreateTaskResultTaskStoreEmitOptionsTaskStoreListEventsOptionsTaskStoreRecoverTaskOptionsTaskStoreShutDownTaskOptionsThere is no current path off deprecation, these types are going to be removed and rethought with a better way to define workers in the new backend system.
Patch Changes
89a941d: Migrating to latest action format023629e: Enable usage of secrets within 'each' step of software templates. For example, you can now structure youreachstep like this:e92e481: Add tests for ScaffolderUpdated dependencies
Configuration
📅 Schedule: Branch creation - "" (UTC), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR has been generated by Renovate Bot.