Skip to main content

Backstage CVE-2026-106463

| EUVDEUVD-2026-94000 MEDIUM
Incorrect Authorization (CWE-863)
2026-10-06 GitHub_M GHSA-gp6m-x9vw-5c5x
5.4
CVSS 3.1 · Vendor: GitHub_M
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Obtain out-of-scope GitLab account
  2. Delivery
    Trigger org user ingestion event
  3. Exploit
    Unintended catalog identity created
  4. Execution
    Sign in as standard user
  5. Impact
    Access resources beyond intended scope

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V8 - Authorization Authorization logic validation
MITRE ATT&CK

1 technique across 1 tactic: Privilege Escalation

The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up.

Exploitation Conditions

Exploitation requires a deployment that (1) enables GitLab organization event ingestion in the @backstage/plugin-catalog-backend-module-gitlab module and (2) relies on the scoped set of ingested catalog users as an access/sign-in boundary; the patch adds getGroupMemberById to validate that an ingested user is actually a member of the configured GitLab group, confirming the flaw is that org user-creation events were applied without verifying configured-group scope. Limiting factors: the vulnerable org-ingestion/events path is an optional, non-default configuration; the attacker must possess a GitLab account that gets ingested; impact is capped at the privileges of a standard authenticated user per the sign-in and permission configuration (PR:L in the CVSS vector indicates an authenticated precondition); deployments not using scoped catalog users as an access boundary are not meaningfully exposed.

Impact

This is a moderate-severity improper-authorization flaw (CWE-863, CVSS 5.4) rather than a high-urgency issue. The provided CVSS vector (AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:L/A:N) indicates network reach, low attack complexity, no user interaction, but requires low privileges (PR:L) - consistent with the description's premise that an unintended but authenticated catalog identity is admitted and acts as a standard authenticated user. Impact is partial on confidentiality and integrity (C:L/I:L) with no availability impact, reflecting access limited to what a normal authenticated Backstage user can do, not full compromise. Exploitation status is 'no public exploit identified at time of analysis': there is no CISA KEV listing, no POC referenced, and no EPSS score was supplied in the input, so real-world exploitation probability cannot be quantified from the data given. The signals are internally consistent - there is no CVSS-versus-description conflict - but the dependency on a specific optional feature (GitLab organization event ingestion) and on using scoped catalog users as an access boundary means realistic exploitability is conditional, not universal. Net assessment: a genuine authorization-boundary bug worth patching on normal maintenance cadence for affected deployments, not a drop-everything emergency absent evidence of active exploitation.

Exploit ScenarioDerived

An organization runs Backstage with GitLab organization event ingestion enabled and relies on the set of ingested (scoped) catalog users to decide who may sign in. A GitLab user who falls outside the intended group scope is nonetheless ingested as a catalog identity due to missing group-membership validation, then signs in and operates with the permissions of a standard authenticated Backstage user. No public exploit code is referenced for this issue.

This Month Plan within 30 days. Why: MEDIUM severity (CVSS 4.0-6.9).
Patch available 0.2% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Oct 06, 2026

Improper authorization in Backstage's GitLab organization discovery plugin (@backstage/plugin-catalog-backend-module-gitlab) before 0.8.7 causes catalog user-creation events to be applied for GitLab accounts that are not members of the configured group, admitting an unintended catalog identity into the software catalog. Deployments that enable GitLab organization event ingestion and treat the scoped set of ingested catalog users as an access or sign-in boundary may consequently grant an attacker the permissions of a standard authenticated user, consistent with the assessed CVSS 3.1 vector 5.4 (AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:L/A:N), which confirms an authenticated precondition rather than unauthenticated exploitation. The vulnerable org-ingestion/events path is an optional, non-default configuration and no public exploit identified at time of analysis, so this is a moderate-severity authorization hygiene issue rather than an urgent, remotely exploitable bug.

RemediationAI

Vendor-released patch: upgrade @backstage/plugin-catalog-backend-module-gitlab to 0.8.7 (shipped in Backstage v1.54.6, https://github.com/backstage/backstage/releases/tag/v1.54.6); the advisory is GHSA-gp6m-x9vw-5c5x and the fixing commit is c211b4b67d28efd2f4fac63e35e2ac515e305cb3 (https://github.com/backstage/backstage/commit/c211b4b67d28efd2f4fac63e35e2ac515e305cb3), which adds group-membership validation (getGroupMemberById) before applying organization user-creation events. If immediate upgrade is not possible, the most direct compensating control is to disable GitLab organization event ingestion for the catalog provider so user-creation events are no longer processed out of scope, accepting the trade-off that new GitLab users will only appear after the next scheduled discovery refresh rather than in near real time; alternatively, keep the module's group-scoped/restricted-user configuration enabled so ingestion is limited to members of the intended group, and treat the catalog as a discovery convenience rather than an authorization boundary. Additional hardening with low operational cost: audit and remove any catalog users already ingested from outside the configured group, and ensure sign-in resolvers and permission policies do not confer access solely on the basis of catalog presence, since that assumption is precisely what this flaw undermines. Deployments that never enabled org event ingestion or that do not use scoped catalog users as an access boundary are not exposed and can schedule the upgrade through normal release cadence.

Affected VersionsENISA

plugin-catalog-backend-module-gitlab < 0.8.7
backstage < 1.54.6

Affected Packages

npm @backstage/plugin-catalog-backend-module-gitlab fix: 0.8.7
euvd backstage fix: 1.54.6
euvd plugin_catalog_backend_module_gitlab fix: 0.8.7

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 a CWE-863 improper authorization defect in Backstage's catalog GitLab organization discovery provider. That provider subscribes to GitLab organization events (notably user-creation events) and translates them into catalog entities, but prior to the fix it applied those mutations without confirming that the referenced GitLab user actually belonged to the group(s) configured for ingestion. The upstream patch adds a GitLabClient.getGroupMemberById(groupPath, userId) helper that issues GET /groups/:groupPath/members/all/:userId against the GitLab API, returns undefined on HTTP 404 (user is not a member) and throws on other non-OK responses, and the GitlabOrgDiscoveryEntityProvider now uses it to validate scope before processing a user event, alongside a changeset note describing a 'scope validation issue in GitLab organization discovery'. CPE data identifies the affected components as Backstage itself (cpe:2.3:a:backstage:backstage) and the specific plugin package (cpe:2.3:a:@backstage:plugin-catalog-backend-module-gitlab), reflecting that the defect lives in the plugin while remediation ships through Backstage releases. The practical consequence is an identity-provisioning trust gap: the catalog, and by extension any authorization decision layered on catalog identities (sign-in resolvers, permission policies), could contain and honor a user who should have been out of scope.

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

Vendor (GitHub_M) PRIMARY 5.4 MEDIUM
AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:L/A:N
vuln.today AI 5.4 MEDIUM

Network-reachable sign-in path with low complexity; requires an attacker-controlled GitLab account that gets ingested, so PR:L, yielding limited authenticated-user-level confidentiality and integrity impact.

3.1 AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:L/A:N
4.0 AV:N/AC:L/AT:N/PR:L/UI:N/VC:L/VI:L/VA:N/SC:N/SI:N/SA:N
Red Hat 5.4 MEDIUM

Primary rating from Vendor (GitHub_M).

CVSS VectorVendor: GitHub_M

Attack Vector
Network
Attack Complexity
Low
Privileges Required
Low
User Interaction
None
Scope
Unchanged
Confidentiality
Low
Integrity
Low
Availability
None

Lifecycle Timeline

1
Patch available
Oct 06, 2026 - 22:20 EUVD

DescriptionCVE.org

Backstage is an open framework for building developer portals. Prior to 0.8.7, the @backstage/plugin-catalog-backend-module-gitlab package is affected by improper authorization in gitlab organizational user ingestion. Deployments that enable GitLab organization event ingestion and rely on scoped catalog users as an access boundary may admit an unintended catalog identity. Depending on sign-in and permission configuration, this may allow unauthorized access with the permissions of a standard authenticated user. This issue is fixed in version 0.8.7.

Threat Intelligence Overview

EPSS Score
0.2%
Top 94% exploitable
Prevalence
Medium
Backstage widely adopted for developer portals, but affected GitLab-org-ingestion feature is optional
Threat Intel
1
1 source
Data Quality
8 sources
Confidence: High
EUVD NVD CVE.org EPSS Vulnrichment GHSA Vendor GitHub VulDB

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.

SignalValue
Severity MEDIUM
CISA KEV No
Public POC No
EPSS 0.2%
Patch available Yes
Active threat No
Deciding rule
MEDIUM severity (CVSS 4.0-6.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision· derived
Scheduled
Exploitation
None
System Exposure· derived
Open
Automatable
No
Human Impact· derived
Medium
Technical Impact
Partial

Priority Score

27
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +27
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Authentication bypass attacks exploit flaws in the verification mechanisms that control access to systems and applications.

CVE-2026-106486 CRITICAL
9.9 Oct 06

The Bitbucket pull-request Scaffolder actions in Backstage can be abused by an authenticated user with template-executio

CVE-2023-35926 CRITICAL
9.9 Jun 22

Backstage is an open platform for building developer portals. Rated critical severity (CVSS 9.9), this vulnerability is

CVE-2026-106501 CRITICAL
9.6 Oct 06

Authenticated Backstage users can retrieve the internal execution data of other users' Scaffolder tasks - notably the Se

CVE-2026-88064 HIGH
8.8 Sep 16

Authenticated users who can register or modify a TechDocs documentation source can achieve code execution inside the Bac

CVE-2026-106558 HIGH
8.8 Oct 07

Authenticated remote code execution in the @backstage/plugin-techdocs-node package shipped with the Backstage developer

CVE-2026-106509 HIGH
8.8 Oct 06

Arbitrary code execution in Backstage TechDocs documentation builds allows an authenticated user with write access to a

CVE-2026-25153 HIGH
8.8 Jan 30

Arbitrary Python code execution in Backstage's @backstage/plugin-techdocs-node (versions < 1.13.11 and = 1.14.0) lets a

CVE-2026-106500 HIGH
8.5 Oct 06

Improper task-state validation in the @backstage/plugin-scaffolder-backend plugin (Backstage versions prior to 3.3.1, 3.

CVE-2026-106505 HIGH
8.5 Oct 06

Arbitrary code execution on the TechDocs backend host is achievable through a sanitizer bypass in the @backstage/plugin-

CVE-2026-106459 HIGH
8.5 Oct 06

Improper input validation in the @backstage/plugin-scaffolder-backend-module-sentry scaffolder actions (Backstage 0.3.0

CVE-2021-43783 HIGH
8.5 Nov 29

@backstage/plugin-scaffolder-backend is the backend for the default Backstage software templates. Rated high severity (C

CVE-2026-106503 HIGH
8.1 Oct 06

Authenticated users of Backstage Scaffolder can bypass administrator-configured action restrictions in @backstage/plugin

Vendor StatusVendor

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy