Renovate — это инструмент автоматизации обновления зависимостей. В версиях до 44.14.7 (а также в дистрибутивах Mend Renovate CE/EE до 15.4.0 и диаграмме Helm mend-renovate-enterprise-edition до 10.4.0) модуль менеджера/gradle-wrapper не экранирует значение DistributionUrl, считанное из файла gradle/wrapper/gradle-wrapper.properties репозитория перед вызовом CLI Gradle Wrapper. В автономных развертываниях, настроенных с помощьюbinarySource=docker и разрешенныхUnsafeExecutions=['gradleWrapper', ...], репозиторий, который предоставляет созданный URL-адрес распространения (например, добавление метасимвола оболочки и команды), может вызывать выполнение произвольных команд от имени пользователя Renovate, когда Renovate обрабатывает обновление Gradle Wrapper.
Проблема исправлена в Renovate 44.14.7; В качестве обходного пути удалите «gradleWrapper» из разрешенныхUnsafeExecutions.
Показать оригинальное описание (EN)
Renovate is a dependency update automation tool. In versions before 44.14.7 (and in Mend Renovate CE/EE distributions before 15.4.0, and the mend-renovate-enterprise-edition Helm chart before 10.4.0), the manager/gradle-wrapper module does not escape the distributionUrl value read from a repository's gradle/wrapper/gradle-wrapper.properties file before invoking the Gradle Wrapper CLI. In self-hosted deployments configured with binarySource=docker and allowedUnsafeExecutions=['gradleWrapper', ...], a repository that supplies a crafted distributionUrl (for example, appending a shell metacharacter and command) can cause arbitrary commands to be executed as the Renovate user when Renovate processes a Gradle Wrapper update. The issue is fixed in Renovate 44.14.7; as a workaround, remove 'gradleWrapper' from allowedUnsafeExecutions.
Характеристики атаки
Последствия
Строка CVSS v4.0