Description
@backstage/plugin-scaffolder-backend is the backend for the default Backstage software templates. In affected versions a malicious actor with write access to a registered scaffolder template is able to manipulate the template in a way that writes files to arbitrary paths on the scaffolder-backend host instance. This vulnerability can in some situation also be exploited through user input when executing a template, meaning you do not need write access to the templates. This method will not allow the attacker to control the contents of the injected file however, unless the template is also crafted in a specific way that gives control of the file contents. This vulnerability is fixed in version `0.15.14` of the `@backstage/plugin-scaffolder-backend`. This attack is mitigated by restricting access and requiring reviews when registering or modifying scaffolder templates.
Remediation
References
https://github.com/backstage/backstage/commit/f9352ab606367cd9efc6ff048915c70ed3013b7f
https://github.com/backstage/backstage/security/advisories/GHSA-mg3m-f475-28hv
Related Vulnerabilities
CVE-2011-3376 Vulnerability in maven package org.apache.tomcat.embed:tomcat-embed-core
CVE-2015-20110 Vulnerability in npm package generator-jhipster
CVE-2021-39148 Vulnerability in maven package com.thoughtworks.xstream:xstream
CVE-2020-13943 Vulnerability in maven package org.apache.tomcat.embed:tomcat-embed-core
CVE-2023-49620 Vulnerability in maven package org.apache.dolphinscheduler:dolphinscheduler-common