Security advisory
Backstage is an open platform for building developer portals. In affected versions A malicious actor could read sensitive files from the environment where Scaffolder Tasks are run. The attack is executed by crafting a custom Scaffolder template with a `github:publish:pull-request` action and a particular source path. When the template is executed the sensitive files would be included in the published pull request. This vulnerability is mitigated by the fact that an attacker would need access to create and register templates in the Backstage catalog, and that the attack is very visible given that the exfiltration happens via a pull request. The vulnerability is patched in the `0.15.9` release of `@backstage/plugin-scaffolder-backend`.
- Products
- Not specified
- Affected versions
- Not specified
- Fixed versions
- Not specified
- CVEs
- CVE-2021-41151
- Confirmed fixed CVEs
- Not specified
- Updated in this feed
- 31 Oct 2026, 11:47 UTC · Revision 1
Source evidence
Backstage is an open platform for building developer portals. In affected versions A malicious actor could read sensitive files from the environment where Scaffolder Tasks are run. The attack is executed by crafting a custom Scaffolder template with a `github:publish:pull-request` action and a particular source path. When the template is executed the sensitive files would be included in the published pull request. This vulnerability is mitigated by the fact that an attacker would need access to create and register templates in the Backstage catalog, and that the attack is very visible given that the exfiltration happens via a pull request. The vulnerability is patched in the `0.15.9` release of `@backstage/plugin-scaffolder-backend`.
osv:CVE-2021-41151
Complete source record
{
"id": "6940f5d7a8598b12a7757c7b8ff66b4844e993e5f56d9890bf1daa82306e8cca",
"url": "https://osv.dev/vulnerability/CVE-2021-41151",
"method": "structured",
"payload": {
"kind": "advisory",
"title": "CVE-2021-41151",
"summary": "Backstage is an open platform for building developer portals. In affected versions A malicious actor could read sensitive files from the environment where Scaffolder Tasks are run. The attack is executed by crafting a custom Scaffolder template with a `github:publish:pull-request` action and a particular source path. When the template is executed the sensitive files would be included in the published pull request. This vulnerability is mitigated by the fact that an attacker would need access to create and register templates in the Backstage catalog, and that the attack is very visible given that the exfiltration happens via a pull request. The vulnerability is patched in the `0.15.9` release of `@backstage/plugin-scaffolder-backend`.",
"evidence": "osv:CVE-2021-41151",
"products": [],
"severity": "medium",
"structured": {
"id": "CVE-2021-41151",
"aliases": [
"CVE-2021-41151",
"GHSA-pvv8-8fx9-h673"
],
"metrics": [
{
"type": "CVSS_V3",
"score": "CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:U/C:H/I:N/A:N"
}
],
"affected": [
{
"ranges": [
{
"repo": "https://github.com/backstage/backstage",
"type": "GIT",
"events": [
{
"introduced": "0"
},
{
"fixed": "6968962c920508eae19a4c1c200fa2c8980a4006"
}
],
"database_specific": {
"extracted_events": [
{
"range": [
{
"fixed": "6968962c920508eae19a4c1c200fa2c8980a4006"
}
],
"source": "REFERENCES_COMMIT"
}
]
}
}
],
"versions": [
"v0.51.0",
"release-2021-10-14",
"v0.50.2",
"release-2021-10-13",
"v0.50.1",
"release-2021-10-11",
"v0.50.0",
"release-2021-10-07",
"release-2021-10-06",
"release-2021-10-04",
"v0.49.0",
"release-2021-09-30",
"v0.48.1",
"release-2021-09-28",
"v0.48.0",
"release-2021-09-23",
"v0.47.2",
"release-2021-09-21",
"v0.47.1",
"release-2021-09-17",
"v0.47.0",
"release-2021-09-16",
"v0.46.1",
"release-2021-09-14",
"v0.46.0",
"release-2021-09-09",
"v0.45.0",
"release-2021-09-02",
"v0.44.1",
"release-2021-08-31",
"v0.44.0",
"release-2021-08-26",
"v0.43.0",
"release-2021-08-20",
"v0.42.0",
"release-2021-08-19",
"v0.41.1",
"release-2021-08-17",
"v0.41.0",
"release-2021-08-12",
"v0.40.1",
"release-2021-08-11",
"v0.40.0",
"release-2021-08-05",
"v0.39.1",
"release-2021-08-03",
"v0.39.0",
"release-2021-07-29",
"v0.38.0",
"release-2021-07-22",
"v0.37.1",
"release-2021-07-16",
"v0.37.0",
"release-2021-07-15",
"v0.36.2",
"release-2021-07-14.1",
"v0.36.1",
"release-2021-07-14",
"v0.36.0",
"release-2021-07-08",
"v0.35.1",
"release-2021-07-07",
"v0.35.0",
"release-2021-07-01",
"v0.34.1",
"release-2021-06-28",
"v0.34.0",
"release-2021-06-24",
"v0.33.3",
"release-2021-06-21.1",
"v0.33.2",
"release-2021-06-21",
"v0.33.1",
"release-2021-06-18",
"v0.33.0",
"release-2021-06-17.1",
"v0.32.0",
"release-2021-06-17",
"v0.31.0",
"release-2021-06-10.1",
"v0.30.1",
"release-2021-06-10",
"v0.28.0",
"release-2021-05-20.1",
"v0.30.0",
"release-2021-06-03",
"v0.29.2",
"release-2021-06-01",
"v0.29.1",
"release-2021-05-31",
"v0.29.0",
"release-2021-05-27",
"v0.24.1",
"release-2021-05-04",
"v0.26.0",
"release-2021-05-12.1",
"v0.27.0",
"release-2021-05-20",
"v0.26.1",
"release-2021-05-17",
"v0.25.3",
"release-2021-05-12",
"v0.25.2",
"release-2021-05-11",
"v0.25.1",
"release-2021-05-10",
"v0.25.0",
"release-2021-05-06",
"v0.24.0",
"release-2021-04-29",
"v0.23.0",
"release-2021-04-22.1",
"v0.22.2",
"release-2021-04-22",
"v0.22.1",
"release-2021-04-21",
"v0.22.0",
"release-2021-04-15",
"v0.21.1",
"release-2021-04-13",
"v0.20.0",
"release-2021-03-31",
"v0.21.0",
"release-2021-04-08",
"v0.20.1",
"release-2021-03-31.1",
"v0.19.0",
"release-2021-03-25",
"v0.18.1",
"release-2021-03-19",
"v0.18.0",
"release-2021-03-18",
"v0.17.3",
"release-2021-03-17",
"v0.17.2",
"release-2021-03-16",
"v0.17.1",
"release-2021-03-11.1",
"v0.17.0",
"release-2021-03-11",
"v0.16.1",
"release-2021-03-09",
"v0.16.0",
"release-2021-03-04",
"v0.15.0",
"release-2021-02-23",
"v0.14.0",
"release-2021-02-18",
"v0.13.1",
"release-2021-02-16",
"v0.13.0",
"release-2021-02-11",
"v0.12.0",
"release-2021-02-05",
"v0.11.3",
"release-2021-02-03",
"v0.11.2",
"release-2021-02-01",
"v0.11.1",
"release-2021-01-29",
"v0.11.0",
"release-2021-01-28",
"v0.10.0",
"release-2021-01-21.1",
"v0.9.0",
"release-2021-01-21",
"v0.8.2",
"release-2021-01-20",
"v0.8.1",
"release-2021-01-18",
"v0.8.0",
"release-2021-01-14.1",
"v0.7.0",
"release-2021-01-14",
"v0.6.0",
"release-2021-01-09",
"v0.5.0",
"release-2021-01-08",
"release-2021-1-7",
"release-2021-01-07",
"v0.4.3",
"v0.4.2",
"v0.4.1",
"v0.4.0",
"v0.3.2",
"v0.3.1",
"v0.3.0",
"v0.2.0",
"v0.1.1",
"v0.1.1-alpha.26",
"v0.1.1-alpha.25",
"v0.1.1-alpha.24",
"v0.1.1-alpha.23",
"v0.1.1-alpha.22",
"v0.1.1-alpha.21",
"v0.1.1-alpha.20",
"v0.1.1-alpha.19",
"v0.1.1-alpha.18",
"v0.1.1-alpha.17",
"v0.1.1-alpha.16",
"v0.1.1-alpha.15",
"v0.1.1-alpha.13",
"v0.1.1-alpha.12",
"v0.1.1-alpha.11",
"v0.1.1-alpha.10",
"cli-old-cache-watch",
"v0.1.1-alpha.8",
"v0.1.1-alpha.7",
"v0.1.1-alpha.6",
"v0.1.1-alpha.5",
"v0.1.1-alpha.4",
"v0.1.1-alpha.3",
"v0.1.1-alpha.2",
"v0.1.1-alpha.1",
"v0.1.1-alpha.0",
"v0.1.0",
"hackweek-demo"
],
"database_specific": {
"source": "https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2021-41151.json"
}
}
],
"modified": "2026-10-20T10:54:43.491007898Z",
"provider": "osv",
"references": [
"https://github.com/backstage/backstage/security/advisories/GHSA-pvv8-8fx9-h673",
"https://github.com/backstage/backstage/commit/6968962c920508eae19a4c1c200fa2c8980a4006"
],
"provider_metadata": {
"unresolved_ranges": [
{
"cpes": [
"cpe:2.3:a:linuxfoundation:backstage:*:*:*:*:*:*:*:*"
],
"vendor_product": "linuxfoundation:backstage",
"extracted_events": [
{
"range": [
{
"introduced": "0.9.4"
},
{
"fixed": "0.15.9"
}
],
"source": "CPE_RANGE"
}
]
}
]
}
},
"related_cves": [
{
"value": "CVE-2021-41151",
"evidence": "/id"
}
],
"security_relevant": true,
"severity_evidence": "/severity/0/score"
},
"source_id": "core-osv",
"document_id": 386002,
"published_at": "2021-10-18T21:15:07.813+00:00"
}