Arcane обеспечивает современное управление докерами. До версии 1.13.0 в Arcane была возможность внедрения команд в службу обновления. Служба обновления Arcane поддерживала метки жизненного цикла com.getarcaneapp.arcane.lifecycle.pre-update и com.getarcaneapp.arcane.lifecycle.post-update, что позволяло определить команду, которая будет выполняться до или после обновления контейнера. Значение метки передается непосредственно в /bin/sh -c без очистки или проверки. Поскольку любой прошедший проверку подлинности пользователь (не только администратор) может создавать проекты через API, злоумышленник может создать проект, в котором указана одна из этих меток жизненного цикла, с помощью вредоносной команды. Когда администратор позднее запускает обновление контейнера (вручную или посредством запланированных проверок обновлений), Arcane считывает метку жизненного цикла и выполняет ее значение как команду оболочки внутри контейнера. Эта уязвимость исправлена в версии 1.13.0.
Показать оригинальное описание (английский)
Arcane provides modern docker management. Prior to 1.13.0, Arcane has a command injection in the updater service. Arcane’s updater service supported lifecycle labels com.getarcaneapp.arcane.lifecycle.pre-update and com.getarcaneapp.arcane.lifecycle.post-update that allowed defining a command to run before or after a container update. The label value is passed directly to /bin/sh -c without sanitization or validation. Because any authenticated user (not limited to administrators) can create projects through the API, an attacker can create a project that specifies one of these lifecycle labels with a malicious command. When an administrator later triggers a container update (either manually or via scheduled update checks), Arcane reads the lifecycle label and executes its value as a shell command inside the container. This vulnerability is fixed in 1.13.0.
Матрица атаки
СТРОКА CVSS ВЕКТОРА
CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:H/I:H/A:H