Incus — системный контейнер и менеджер виртуальных машин. Экземпляры Incus имеют возможность предоставлять учетные данные systemd в гостевой системе. Для контейнеров это осуществляется через общий каталог.
До версии 6.23.0 злоумышленник мог установить ключ конфигурации с именем типа `systemd.credential.../../../../../../root/.bashrc`, чтобы заставить Incus писать за пределами каталога `credentials`, связанного с контейнером. При этом используется тот факт, что синтаксис Incus для таких учетных данных — `systemd.credential.XYZ`, где `XYZ` сам может содержать больше точек. Хотя таким образом невозможно прочитать какие-либо данные, можно записывать произвольные файлы от имени пользователя root, что позволяет как повышать привилегии, так и атаковать отказ в обслуживании.
Версия 6.23.0 устраняет проблему.
Показать оригинальное описание (EN)
Incus is a system container and virtual machine manager. Incus instances have an option to provide credentials to systemd in the guest. For containers, this is handled through a shared directory. Prior to version 6.23.0, an attacker can set a configuration key named something like `systemd.credential.../../../../../../root/.bashrc` to cause Incus to write outside of the `credentials` directory associated with the container. This makes use of the fact that the Incus syntax for such credentials is `systemd.credential.XYZ` where `XYZ` can itself contain more periods. While it's not possible to read any data this way, it's possible to write to arbitrary files as root, enabling both privilege escalation and denial of service attacks. Version 6.23.0 fixes the issue.
Характеристики атаки
Последствия
Строка CVSS v3.1