CVE-2026-24046
HighCVSS 7.1Exploitation Probability (EPSS)
Low risk38th percentile - higher than 38% of all known CVEs
Summary
Backstage is vulnerable to symlink-based path traversal attacks in Scaffolder actions and archive extraction utilities. An attacker with access to create and execute Scaffolder templates can read, delete, or write files outside the workspace.
Risk Assessment
The risk includes unauthorized reading of sensitive files (e.g., /etc/passwd, configurations, secrets), deletion of arbitrary files, and writing files outside the workspace, potentially compromising confidentiality, integrity, and availability.
Recommendation
Immediately upgrade @backstage/backend-defaults, @backstage/plugin-scaffolder-backend, and @backstage/plugin-scaffolder-node to patched versions. Additionally, restrict access to creating and executing Scaffolder templates and run Backstage in a containerized environment with limited filesystem access.
Other vulnerabilities in Backstage
See all- CVE-2026-106501Critical
Backstage is an open framework for building developer portals. Prior to versions 3.3.1, 3.4.1, 4.0.3 and 4.1.0, the @backstage/plugin-scaffolder-backend package is affected by sensitive information exposure in scaffolder. An authenticated Backstage user who can read another user's Scaffolder task may receive internal execution data.
- CVE-2026-115923Medium
Backstage is an open framework for building developer portals. Prior to 3.9.2 and from 4.0.0 until 4.0.2, DefaultCatalogRulesEnforcer in @backstage/plugin-catalog-backend compares the raw location.target URL against catalog.rules, while URL readers canonicalize the same URL before fetching it. An authenticated user with catalog.location.create permission can use percent-encoded path segments to make an untrusted URL match a trusted location pattern even though the canonical URL resolves outside that scope.
- CVE-2026-106495Medium
The @backstage/backend-defaults package prior to 0.17.8 is affected by improper access control in backend action invocation. An authenticated user could invoke actions that an operator had excluded through action configuration. Existing action permissions and downstream authorization remain enforced.
- CVE-2026-106561Medium
The @backstage/plugin-kubernetes-backend package prior to 0.21.9 allows an authenticated user with standard Kubernetes resource read permission to retrieve sensitive values that the plugin is designed to mask. This can expose credentials and other confidential material held in connected clusters, limited to resources the Backstage service account is permitted to read.
- CVE-2026-106559Medium
The @backstage/plugin-scaffolder-backend-module-confluence-to-markdown package prior to 0.3.25 is affected by improper input validation in the Confluence to Markdown scaffolder module. This could allow an attacker to influence file write operations during template execution if a Backstage user runs a template that processes attacker-influenced Confluence content.
- CVE-2026-106510High
Backstage, an open framework for building developer portals, prior to version 1.14.6 contains a remote code execution vulnerability in the @backstage/plugin-techdocs-node package. An authenticated user who can register catalog entities can provide a crafted mkdocs.yml with markdown_extensions, causing arbitrary OS command execution on the TechDocs build host. This issue is fixed in versions 1.14.6 and 1.15.4.
- CVE-2026-106499Medium
Backstage before version 4.1.0 in the @backstage/plugin-scaffolder-backend package could expose secret-derived values in Scaffolder task logs. Deployments that configure sensitive scaffolder.defaultEnvironment.secrets and allow an attacker to create or modify Scaffolder templates are affected. A template author could cause secret-derived values used during template iteration to be persisted and exposed to users who can access the resulting task logs.
- CVE-2026-106497Medium
Backstage before version 3.9.1 in the @backstage/plugin-catalog-backend package has inconsistent catalog property permission evaluation. In deployments that use affected value-based catalog permission conditions as a confidentiality boundary, an authenticated user could receive catalog entity data that policy authors intended to restrict.
- CVE-2026-106496Low
The @backstage/plugin-catalog-backend package in Backstage before 3.9.1 inconsistently enforces allowed location types during catalog processing. Under certain configurations, the backend could process location types that were not intended to be allowed, potentially leading to unintended file access on the backend host.
- CVE-2026-106494Medium
Backstage before version 0.17.8 in the @backstage/backend-defaults package has improper input validation in cloud storage url readers. An attacker with write access to a cloud storage bucket used by Backstage could craft object names that could collide with protected files in the output directory. In certain deployment configurations, this could lead to content injection.
Original NVD description (English source)
Backstage is an open framework for building developer portals. 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 read arbitrary files via the `debug:log` action by creating a symlink pointing to sensitive files (e.g., `/etc/passwd`, configuration files, secrets); delete arbitrary files via the `fs:delete` action by creating symlinks pointing outside the workspace, and write files outside the workspace via archive extraction (tar/zip) containing malicious symlinks. This affects any Backstage deployment where users can create or execute Scaffolder templates. This vulnerability is fixed in `@backstage/backend-defaults` versions 0.12.2, 0.13.2, 0.14.1, and 0.15.0; `@backstage/plugin-scaffolder-backend` versions 2.2.2, 3.0.2, and 3.1.1; and `@backstage/plugin-scaffolder-node` versions 0.11.2 and 0.12.3. Users should upgrade to these versions or later. Some workarounds are available. Follow the recommendation in the Backstage Threat Model to limit access to creating and updating templates, restrict who can create and execute Scaffolder templates using the permissions framework, audit existing templates for symlink usage, and/or run Backstage in a containerized environment with limited filesystem access.
Vulnerability data from NVD (NIST) · CISA KEV · EPSS

