Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessAuthenticate as low-privilege Backstage user
-
DeliveryCraft task-list request ordering on secret field
-
ExploitAbuse unvalidated order-by as inference side channel
-
ExecutionRepeat requests to deduce secret bytes
-
ImpactReconstruct confidential scaffolder task data
Vulnerability Assessment
| Weakness |
CWE
ASVS 5.0
V14 - Data Protection Sensitive data in outbound message
|
| Exploitation Conditions | Requires an authenticated Backstage user who already holds permission to create and read the relevant scaffolder tasks (PR:L), so this is not remotely reachable by anonymous attackers. Four additional stacked conditions must all hold, per the advisory: (1) the target task's secrets must still be retained rather than purged, (2) the attacker must have visibility of the target task, (3) the attacker must know the structure of the secret being inferred, and (4) the attack needs many repeated list requests manipulating the order-by parameter on secret-bearing fields. These conditions, which map directly to AC:H, sharply limit practical exploitation and mean impact is inference/partial leakage rather than guaranteed full secret disclosure; only deployments on versions prior to the fix with secret retention enabled are exposed. |
| Impact | This is a genuinely moderate-priority, low-urgency issue rather than a high-impact emergency, and the 5.3 MEDIUM CVSS reflects that accurately. The vector CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:H/I:N/A:N shows network reach but three substantial brakes: high attack complexity (AC:H), required authentication (PR:L), and no integrity or availability impact (I:N/A:N) - only confidentiality (C:H). The description reinforces the AC:H rating by listing multiple stacked preconditions (retained task secrets, visibility of a target task, knowledge of the secret structure, and many repeated requests), confirming this is a slow inference/side-channel leak via the task-list order-by parameter, not a direct dump of secrets. No EPSS score, no CISA KEV listing, and no public exploit code were provided in the intelligence, so exploitation status is 'no public exploit identified at time of analysis.' There is no conflict between signals here - every source (CVSS, CWE-202 exposure-through-data-queries, and the commit that merely restricts order-by to created_at/status/created_by) points consistently to a constrained, authenticated information-inference weakness. The confidentiality rating of C:H should be read with care: the description says an attacker 'may be able to infer' data 'under specific conditions,' so real-world impact is likely partial inference rather than reliable full secret recovery - treat C:H as an upper bound. |
| Exploit ScenarioDerived | An authenticated Backstage user who holds permission to create and read scaffolder tasks submits task-list requests manipulating the ordering parameter (e.g. order=asc:secrets) against the scaffolder-backend API. By repeatedly reordering results on an unsupported secret-bearing field and observing how a target task sorts relative to others, the attacker incrementally infers confidential task secret data. No public exploit code was identified, and success requires the secret to still be retained, the target task to be visible, and many iterated requests. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Oct 06, 2026
Improper input validation in the Backstage Scaffolder backend (@backstage/plugin-scaffolder-backend) before version 4.1.0 allows an authenticated user with permission to create and read scaffolder tasks to influence how the task list endpoint orders results, enabling inference of confidential task data such as secrets. Exploitation is not straightforward: the assessed vector is CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:H/I:N/A:N (5.3 Medium), and the advisory requires four stacked preconditions - the target task's secrets must still be retained (not purged), the attacker must be able to see the target task, the attacker must already know the structure of the secret being inferred, and the attack depends on many repeated list requests - so the practical outcome is partial inference rather than guaranteed full secret disclosure. There is no public exploit identified at time of analysis, and no KEV listing; the issue is fixed in @backstage/plugin-scaffolder-backend 4.1.0 (Backstage release v1.54.6).
RemediationAI
Upgrade to @backstage/plugin-scaffolder-backend 4.1.0 or later, which corresponds to Backstage release v1.54.6 (see the advisory at https://github.com/backstage/backstage/security/advisories/GHSA-vwp5-f99x-x3rq and the release tag at https://github.com/backstage/backstage/releases/tag/v1.54.6); the fix commit is e673a869449874a9169e8f89852e75e862011b93, which restricts task list ordering to the supported fields created_at, status, and created_by and returns HTTP 400 for anything else. Vendor-released patch: 4.1.0. If an immediate upgrade is not possible, compensating controls should target the stated preconditions: purge or shorten retention of scaffolder task secrets so the inference side channel has no retained material to leak (side effect: removal of useful task history and troubleshooting data), and tighten scaffolder RBAC so that only trusted identities hold the combination of task creation and task read permissions, since PR:L means an authenticated user with those rights is required (side effect: reduced self-service for template users). Deployments that cannot apply both controls should treat the residual exposure as limited to partial secret inference for users who already have task visibility.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 3 packages in npm, euvd
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
The flaw is an instance of CWE-202 (Exposure of Sensitive Information Through Data Queries), rooted in the Backstage scaffolder backend's task list endpoint accepting an attacker-controlled ordering parameter. The vulnerable code parsed an order expression such as 'asc:secrets' and passed the chosen field straight into the underlying task query, letting a caller order results by arbitrary fields (including secret-bearing ones) rather than only the intended safe columns. By repeatedly requesting the list with different ordering on a field that embeds secret material, and comparing the resulting order, an attacker with visibility of a target task and prior knowledge of the secret's structure can infer confidential values through the ordering side channel. The upstream fix (commit e673a869449874a9169e8f89852e75e862011b93) introduces an explicit allowlist, taskOrderFields, containing only 'created_at', 'status', and 'created_by'; any order field outside that set now throws an InputError and the request is rejected with HTTP 400 (openapi.yaml and router.ts gained a 400/ErrorResponse path). A regression test asserts that GET /v2/tasks?order=asc:secrets returns 400 and that the task broker's list method is never invoked, confirming the query is short-circuited before reaching the datastore. The affected component is the scaffolder-backend plugin, which powers Backstage's software template task execution and task listing API.
Know when Backstage gets its next vulnerability
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
Severity by source
AV:N/AC:H/PR:L/UI:N/S:U/C:H/I:N/A:N
Network-facing API (AV:N) but requires an authenticated task-reading user (PR:L) and multiple stacked preconditions plus iterated requests (AC:H); only confidential task data is inferred, so I:N/A:N.
Primary rating from Vendor (github).
CVSS VectorVendor: github
Lifecycle Timeline
1DescriptionCVE.org
Backstage is an open framework for building developer portals. Prior to 4.1.0, the @backstage/plugin-scaffolder-backend package is affected by improper input validation in scaffolder task list ordering. An authenticated Backstage user with permission to create and read relevant scaffolder tasks may be able to infer confidential task data under specific conditions. Successful exploitation requires retained task secrets, visibility of a target task, knowledge of the secret structure, and repeated requests. This issue is fixed in version 4.1.0.
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Information disclosure occurs when an application unintentionally exposes sensitive data that aids attackers in reconnaissance or directly compromises security.
Backstage is an open platform for building developer portals. Rated critical severity (CVSS 9.9), this vulnerability is
Authenticated Backstage users can retrieve the internal execution data of other users' Scaffolder tasks - notably the Se
Authenticated users who can register or modify a TechDocs documentation source can achieve code execution inside the Bac
Authenticated remote code execution in the @backstage/plugin-techdocs-node package shipped with the Backstage developer
Arbitrary code execution in Backstage TechDocs documentation builds allows an authenticated user with write access to a
Arbitrary Python code execution in Backstage's @backstage/plugin-techdocs-node (versions < 1.13.11 and = 1.14.0) lets a
Improper task-state validation in the @backstage/plugin-scaffolder-backend plugin (Backstage versions prior to 3.3.1, 3.
Path traversal in the Backstage Scaffolder Bitbucket pull-request publish actions allows an authenticated user who can e
Arbitrary code execution on the TechDocs backend host is achievable through a sanitizer bypass in the @backstage/plugin-
Improper input validation in the @backstage/plugin-scaffolder-backend-module-sentry scaffolder actions (Backstage 0.3.0
@backstage/plugin-scaffolder-backend is the backend for the default Backstage software templates. Rated high severity (C
Authenticated users of Backstage Scaffolder can bypass administrator-configured action restrictions in @backstage/plugin
EUVD-2026-94071
GHSA-vwp5-f99x-x3rq
NVD
CVE.org
EPSS
Vulnrichment
VulDB
Exploit-DB