Удалённая уязвимость в systemd-networkd
Добавлено: 29 окт 2018, 10:47
Во входящем в состав systemd фоновом процессе systemd-networkd, реализующем компоненты для настройки параметров сети, найдена опасная уязвимость (CVE-2018-15688), которая потенциально может привести к выполнению кода при получении клиентом специально оформленного ответа от подконтрольного злоумышленнику DHCP-сервера. По умолчанию в systemd-networkd клиент DHCPv6 активируется автоматически при получении анонса от маршрутизатора IPv6 (RA, Router Advertisement).
Проблема вызвана ошибкой в коде встроенного клиента DHCPv6, в котором неверно проверялся размер временного буфера, используемого для формирования пакета, отправляемого на сервер DHCPv6. При обработке DHCP-опции server-id размером больше 493 байт в функции dhcp6_option_append_ia() возникает целочисленное переполнение, которое можно использовать для контролируемой перезаписи данных за границей буфера.
Debian и RHEL/CentOS 7 в конфигурации по умолчанию проблеме не подвержены, так как эти дистрибутивы предлагают systemd-networkd в качестве опции (например, в RHEL 7 systemd-networkd поставляется в репозитории rhel-7-server-optional-rpms). При этом в RHEL/CentOS 7 для осуществления атаки DHCPv6 должен быть явно включен на сетевом интерфейсе. В Ubuntu, Arch и Fedora Linux проблема пока остаётся неисправленной. Подверженность уязвивости openSUSE/SUSE пока уточняется.
Кроме того, сообщается о выявлении двух локальных уязвимостей в systemd:
Проблема вызвана ошибкой в коде встроенного клиента DHCPv6, в котором неверно проверялся размер временного буфера, используемого для формирования пакета, отправляемого на сервер DHCPv6. При обработке DHCP-опции server-id размером больше 493 байт в функции dhcp6_option_append_ia() возникает целочисленное переполнение, которое можно использовать для контролируемой перезаписи данных за границей буфера.
Debian и RHEL/CentOS 7 в конфигурации по умолчанию проблеме не подвержены, так как эти дистрибутивы предлагают systemd-networkd в качестве опции (например, в RHEL 7 systemd-networkd поставляется в репозитории rhel-7-server-optional-rpms). При этом в RHEL/CentOS 7 для осуществления атаки DHCPv6 должен быть явно включен на сетевом интерфейсе. В Ubuntu, Arch и Fedora Linux проблема пока остаётся неисправленной. Подверженность уязвивости openSUSE/SUSE пока уточняется.
Кроме того, сообщается о выявлении двух локальных уязвимостей в systemd:
- CVE-2018-15687 - состояние гонки (race condition) при разыменовании символических ссылок в функции chown_one() можно использовать для смены прав доступа на любой файл в системе через манипуляцию символическими ссылками;
- CVE-2018-15686 - некорректное использование функции fgets() в функции unit_deserialize() при выполнении вызова daemon-reexec позволяет поднять свои привилегии через запуск специально оформленного сервиса;