Skip to content
Heist/ feed
Back to feed
MediumFix available

Backstage has improper input validation in scaffolder task list ordering

Type: advisorySources: OSV

### Impact 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. ### Patches Patched in `@backstage/plugin-scaffolder-backend` version `4.1.0` ### Workarounds - At the gateway or reverse proxy, reject task-list requests that specify custom ordering, or allow ordering only by `created_at`, `status`, and `created_by`. - Restrict scaffolder task creation and task read permissions to trusted users, preferably using owner-based task-read conditions. - Disabling task recovery can reduce secret retention after a task is claimed, but it does not protect secrets in queued tasks and should not be treated as complete mitigation.

Products
@backstage/plugin-scaffolder-backend
Affected versions
Not specified
Fixed versions
4.1.0
CVEs
CVE-2026-106506
Confirmed fixed CVEs
Not specified
Updated in this feed
28 Oct 2026, 04:59 UTC · Revision 1

Source evidence

Backstage has improper input validation in scaffolder task list ordering

core-osv · Original source

Published 7 Oct 2026, 16:24 UTC

### Impact 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. ### Patches Patched in `@backstage/plugin-scaffolder-backend` version `4.1.0` ### Workarounds - At the gateway or reverse proxy, reject task-list requests that specify custom ordering, or allow ordering only by `created_at`, `status`, and `created_by`. - Restrict scaffolder task creation and task read permissions to trusted users, preferably using owner-based task-read conditions. - Disabling task recovery can reduce secret retention after a task is claimed, but it does not protect secrets in queued tasks and should not be treated as complete mitigation.

osv:GHSA-vwp5-f99x-x3rq

@backstage/plugin-scaffolder-backend

Fixed versions: 4.1.0

Complete source record
{
  "id": "5baaecea3948a70e2d613786191139348c875361a7c1b91884f38a6d346bcb76",
  "url": "https://osv.dev/vulnerability/GHSA-vwp5-f99x-x3rq",
  "method": "structured",
  "payload": {
    "kind": "advisory",
    "title": "Backstage has improper input validation in scaffolder task list ordering",
    "summary": "### Impact 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. ### Patches Patched in `@backstage/plugin-scaffolder-backend` version `4.1.0` ### Workarounds - At the gateway or reverse proxy, reject task-list requests that specify custom ordering, or allow ordering only by `created_at`, `status`, and `created_by`. - Restrict scaffolder task creation and task read permissions to trusted users, preferably using owner-based task-read conditions. - Disabling task recovery can reduce secret retention after a task is claimed, but it does not protect secrets in queued tasks and should not be treated as complete mitigation.",
    "evidence": "osv:GHSA-vwp5-f99x-x3rq",
    "products": [
      {
        "name": {
          "value": "@backstage/plugin-scaffolder-backend",
          "evidence": "/affected/0/package/name"
        },
        "prerequisites": [],
        "fixed_versions": [
          {
            "value": "4.1.0",
            "evidence": "/affected/0/ranges"
          }
        ],
        "affected_versions": []
      }
    ],
    "severity": "medium",
    "structured": {
      "id": "GHSA-vwp5-f99x-x3rq",
      "aliases": [
        "CVE-2026-106506",
        "GHSA-vwp5-f99x-x3rq"
      ],
      "metrics": [
        {
          "type": "CVSS_V3",
          "score": "CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:H/I:N/A:N"
        }
      ],
      "affected": [
        {
          "ranges": [
            {
              "type": "SEMVER",
              "events": [
                {
                  "introduced": "0"
                },
                {
                  "fixed": "4.1.0"
                }
              ]
            }
          ],
          "package": {
            "name": "@backstage/plugin-scaffolder-backend",
            "purl": "pkg:npm/%40backstage/plugin-scaffolder-backend",
            "ecosystem": "npm"
          },
          "database_specific": {
            "source": "https://github.com/github/advisory-database/blob/main/advisories/github-reviewed/2026/10/GHSA-vwp5-f99x-x3rq/GHSA-vwp5-f99x-x3rq.json"
          }
        }
      ],
      "modified": "2026-10-07T16:30:05.491300441Z",
      "provider": "osv",
      "references": [
        "https://github.com/backstage/backstage/security/advisories/GHSA-vwp5-f99x-x3rq",
        "https://nvd.nist.gov/vuln/detail/CVE-2026-106506",
        "https://github.com/backstage/backstage/commit/e673a869449874a9169e8f89852e75e862011b93",
        "https://github.com/backstage/backstage",
        "https://github.com/backstage/backstage/releases/tag/v1.54.6"
      ],
      "provider_metadata": {
        "cwe_ids": [
          "CWE-202",
          "CWE-203"
        ],
        "severity": "MODERATE",
        "github_reviewed": true,
        "nvd_published_at": "2026-10-06T22:17:05Z",
        "github_reviewed_at": "2026-10-07T16:24:12Z"
      }
    },
    "related_cves": [
      {
        "value": "CVE-2026-106506",
        "evidence": "/aliases"
      }
    ],
    "security_relevant": true,
    "severity_evidence": "/severity/0/score"
  },
  "source_id": "core-osv",
  "document_id": 95159,
  "published_at": "2026-10-07T16:24:12+00:00"
}