@backstage/backend-app-api leaks GitLab access tokensGHSA-86rg-pf4c-5grg
HIGHFix: backstage/backstage#21582GHSA-86rg-pf4c-5grg is a high-severity (CVSS 7.3) CWE-209 vulnerability in @backstage/backend-app-api. A fix is available for @backstage/backend-app-api — see the affected versions and patch details below.
Exploitation Status
No confirmed exploitation observed yet
- CISA’s own triage has not observed active exploitation or public proof-of-concept code for this CVE as of its last assessment.
Exploitation and automatability from CISA’s SSVC triage for GHSA-86rg-pf4c-5grg.
EPSS Exploitation Probability
Probability of exploitation in the next 30 days, from FIRST.org EPSS.
How urgent is this, really
Where this sits among everything scored
Real-World Exposure
How broadly this vulnerability is actually deployed: weekly install volume shows current usage, and reverse-dependency count shows how many other packages break if it stays unpatched.
@backstage/backend-app-apinpmDescription
A flaw was found in the Red Hat Developer Hub (RHDH). The catalog-import function leaks GitLab access tokens on the frontend when the base64 encoded GitLab token includes a newline at the end of the string. The sanitized error can display on the frontend, including the raw access token. Upon gaining access to this token and depending on permissions, an attacker could push malicious code to repositories, delete resources in Git, revoke or generate new keys, and sign code illegitimately.
Affected Packages
| Ecosystem | Package | Vulnerable range | Fix |
|---|---|---|---|
| 📦npm | @backstage/backend-app-api | all versions | 0.5.9-next.1npm install @backstage/backend-app-api@0.5.9-next.1 |
Affected Products
backstagelinuxfoundationred hat developer hubredhatDetection & mitigation playbook
Open-source dependencyDetect
Scan your dependency tree (package-lock.json, pnpm-lock.yaml, requirements.txt, go.sum, etc.) for @backstage/backend-app-api, including transitive dependencies — a direct dependency you never call can still pull in a vulnerable version.
Fix
Update @backstage/backend-app-api to 0.5.9-next.1 or later, then make sure no transitive (indirect) dependency still pins the vulnerable range — O3 confirms GHSA-86rg-pf4c-5grg is resolved across your whole dependency graph.
Workarounds
If you can't upgrade right away: gate or disable the affected feature, validate untrusted input at the boundary, and avoid passing attacker-controlled data into the vulnerable path. O3's runtime protection blocks exploitation in production as an interim safeguard until the upgrade lands.
Fixing This On Your OS
If you run this on a Linux distribution, patch through your package manager against the distro's own security advisory below — it tracks the exact backported fix for your release, which can ship on a different timeline (and sometimes a different severity) than the upstream project.
The vulnerability is assessed with a Moderate impact rating since its exploitation necessitates the user inputting an invalid token. Red Hat Developer Hub contains the fix for this vulnerability with Backstage 1.22.
To mitigate this vulnerability until you can update to RHDH 1.1, ensure that the base64 encoded GitLab token does not contain a newline character at the end. Removing the newline from the token prevents the unintended disclosure of the access token through the frontend.Source: Red Hat security advisory for GHSA-86rg-pf4c-5grg (CC BY 4.0)
| Product | Fixed in | Advisory |
|---|---|---|
| RHDH-1.1-RHEL-9 | rhdh/rhdh-hub-rhel9:1.1-107.1724038966 | RHBA-2024:5869 |
Frequently Asked Questions
Is GHSA-86rg-pf4c-5grg in your dependencies?
Find it across npm, including transitive dependencies.