Уязвимость в драйвере LXC (lxc/lxc_driver.c) в libvirt, позволяющая локальным пользователям удалять устройства, создавать произвольные ноды и вызывать отказ в обслуживании (DoS)
Описание
Обнаружена уязвимость в драйвере LXC (файл lxc/lxc_driver.c) в libvirt. Локальные пользователи могут:
- Удалять произвольные устройства хоста через API
virDomainDeviceDettachи атаку с использованием символьных ссылок (symlinks) на/devвнутри контейнера. - Создавать произвольные ноды (mknod) через API
virDomainDeviceAttachи атаку с использованием символьных ссылок на/devвнутри контейнера. - Вызывать отказ в обслуживании (выключение или перезагрузку операционной системы хоста) через API
virDomainShutdownилиvirDomainRebootи атаку с использованием символьных ссылок на/dev/initctlвнутри контейнера.
Проблема связана с обработкой путей под /proc/$PID/root и функцией virInitctlSetRunLevel.
Затронутые версии ПО
- libvirt 1.0.1–1.2.1
Тип уязвимости
- Атака через символьные ссылки (symlink attack)
- Удаление произвольных устройств
- Создание произвольных нодов (mknod)
- Отказ в обслуживании (DoS)
Затронутые пакеты
| Платформа | Пакет | Состояние | Рекомендация | Релиз |
|---|---|---|---|---|
| Red Hat Enterprise Linux 5 | libvirt | Not affected | ||
| Red Hat Enterprise Linux 6 | libvirt | Not affected | ||
| Red Hat Enterprise Linux 7 | libvirt | Will not fix | ||
| Red Hat Storage 2.0 | libvirt | Not affected | ||
| Red Hat Storage 2.1 | libvirt | Not affected |
Показывать по
Дополнительная информация
Статус:
6.2 Medium
CVSS2
Связанные уязвимости
The LXC driver (lxc/lxc_driver.c) in libvirt 1.0.1 through 1.2.1 allows local users to (1) delete arbitrary host devices via the virDomainDeviceDettach API and a symlink attack on /dev in the container; (2) create arbitrary nodes (mknod) via the virDomainDeviceAttach API and a symlink attack on /dev in the container; and cause a denial of service (shutdown or reboot host OS) via the (3) virDomainShutdown or (4) virDomainReboot API and a symlink attack on /dev/initctl in the container, related to "paths under /proc/$PID/root" and the virInitctlSetRunLevel function.
The LXC driver (lxc/lxc_driver.c) in libvirt 1.0.1 through 1.2.1 allows local users to (1) delete arbitrary host devices via the virDomainDeviceDettach API and a symlink attack on /dev in the container; (2) create arbitrary nodes (mknod) via the virDomainDeviceAttach API and a symlink attack on /dev in the container; and cause a denial of service (shutdown or reboot host OS) via the (3) virDomainShutdown or (4) virDomainReboot API and a symlink attack on /dev/initctl in the container, related to "paths under /proc/$PID/root" and the virInitctlSetRunLevel function.
The LXC driver (lxc/lxc_driver.c) in libvirt 1.0.1 through 1.2.1 allow ...
The LXC driver (lxc/lxc_driver.c) in libvirt 1.0.1 through 1.2.1 allows local users to (1) delete arbitrary host devices via the virDomainDeviceDettach API and a symlink attack on /dev in the container; (2) create arbitrary nodes (mknod) via the virDomainDeviceAttach API and a symlink attack on /dev in the container; and cause a denial of service (shutdown or reboot host OS) via the (3) virDomainShutdown or (4) virDomainReboot API and a symlink attack on /dev/initctl in the container, related to "paths under /proc/$PID/root" and the virInitctlSetRunLevel function.
6.2 Medium
CVSS2