Backstage has XSS Vulnerability in Software Catalog
Key facts
- Attack vector
- Network
- Privileges required
- Low
- User interaction
- Required
- Attack complexity
- Low
- Impact type
- Cross-site scripting
- Confidentiality · integrity · availability
- High · None · None
- Fix status
- Fixed
Attack profile from CVSS 3.1 · CNA. Fix status from CNA and GitHub. Impact type from CWE-79.
Summary
Backstage is an open platform for building developer portals. `@backstage/catalog-model` prior to version 1.2.0, `@backstage/core-components` prior to 0.12.4, and `@backstage/plugin-catalog-backend` prior to 1.7.2 are affected by a cross-site scripting vulnerability. This vulnerability allows a malicious actor with access to add or modify content in an instance of the Backstage software catalog to inject script URLs in the entities stored in the catalog. If users of the catalog then click on said URLs, that can lead to an XSS attack. This vulnerability has been patched in both the frontend and backend implementations. The default `Link` component from `@backstage/core-components` version 1.2.0 and greater will now reject `javascript:` URLs, and there is a global override of `window.open` to do the same. In addition, the catalog model v0.12.4 and greater as well as the catalog backend v1.7.2 and greater now has additional validation built in that prevents `javascript:` URLs in known annotations. As a workaround, the general practice of limiting access to modifying catalog content and requiring code reviews greatly help mitigate this vulnerability.
Why it matters now
SSVC decision points
CISA ADP · SSVC 2.0.3
- Exploitation
- None
- Automatable
- No
- Technical impact
- Partial
The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.
Affected products
| Vendor | Product | Affected versions | Fixed in | Status | Source |
|---|---|---|---|---|---|
| backstage | backstage | before 1.2.0; before 0.12.4; before 1.7.2 | 1.2.0, 0.12.4, 1.7.2 | Patch available | CNA |
| — | @backstage/core-components (npm) | before 0.12.4 | 0.12.4 | Patch available | GHSA-7hv8-3fr9-j2hv |
| — | @backstage/catalog-model (npm) | before 1.2.0 | 1.2.0 | Patch available | GHSA-7hv8-3fr9-j2hv |
| — | @backstage/plugin-catalog-backend (npm) | before 1.7.2 | 1.7.2 | Patch available | GHSA-7hv8-3fr9-j2hv |
- backstage Vendorbackstage Affected before 1.2.0; before 0.12.4; before 1.7.2 Fixed in 1.2.0, 0.12.4, 1.7.2 Patch available CNA
- @backstage/core-components (npm) Vendor— Affected before 0.12.4 Fixed in 0.12.4 Patch available GHSA-7hv8-3fr9-j2hv
- @backstage/catalog-model (npm) Vendor— Affected before 1.2.0 Fixed in 1.2.0 Patch available GHSA-7hv8-3fr9-j2hv
- @backstage/plugin-catalog-backend (npm) Vendor— Affected before 1.7.2 Fixed in 1.7.2 Patch available GHSA-7hv8-3fr9-j2hv
CPE configurations NVD · 3
| CPE | Versions | Role | Vendor |
|---|---|---|---|
| cpe:2.3:a:linuxfoundation:backstage_catalog-model:*:*:*:*:*:node.js:*:* | before 1.2.0 | Vulnerable | backstage |
| cpe:2.3:a:linuxfoundation:backstage_core-components:*:*:*:*:*:node.js:*:* | before 0.12.4 | Vulnerable | backstage |
| cpe:2.3:a:linuxfoundation:backstage_plugin-catalog-backend:*:*:*:*:*:node.js:*:* | before 1.7.2 | Vulnerable | backstage |
- cpe:2.3:a:linuxfoundation:backstage_catalog-model:*:*:*:*:*:node.js:*:* Versions before 1.2.0 Vulnerable ·backstage
- cpe:2.3:a:linuxfoundation:backstage_core-components:*:*:*:*:*:node.js:*:* Versions before 0.12.4 Vulnerable ·backstage
- cpe:2.3:a:linuxfoundation:backstage_plugin-catalog-backend:*:*:*:*:*:node.js:*:* Versions before 1.7.2 Vulnerable ·backstage
Remediation
- Fix · CNA backstage (backstage) Fixed in 1.2.0, 0.12.4, 1.7.2
- Fix · GHSA-7hv8-3fr9-j2hv @backstage/core-components (npm) Fixed in 0.12.4 Advisory →
- Fix · GHSA-7hv8-3fr9-j2hv @backstage/catalog-model (npm) Fixed in 1.2.0 Advisory →
- Fix · GHSA-7hv8-3fr9-j2hv @backstage/plugin-catalog-backend (npm) Fixed in 1.7.2 Advisory →
Timeline
- 2026-10-02 Threatist record created from CVE-2023-25571
- 2026-10-03 Alias added: GHSA-7hv8-3fr9-j2hv
References
Sources
- CVE-2023-25571 · CVE Program
- CVE-2023-25571 · NVD
- FIRST EPSS
- GHSA-7hv8-3fr9-j2hv · GitHub Advisory Database · CC BY 4.0
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences