Уязвимости в пакетах с Kea DHCP и cyrus-imapd, позволяющие повысить привилегии в системе

Новости мира unix. Хотите узнать секрет вечного счастья? Откройте страницу 246.
Ответить
acolyte
Аватара пользователя
Сообщения: 4223
Зарегистрирован: 20.08.2022

#

Уязвимости в пакетах с Kea DHCP и cyrus-imapd, позволяющие повысить привилегии в системе
Дата публикации:Thu, 29 May 2025 10:21:58 +0300




В применяемых различными дистрибутивами конфигурациях DHCP-сервера Kea, развиваемого консорциумом ISC в качестве замены классического ISC DHCP, выявлены уязвимости, в некоторых ситуациях позволяющие локальному пользователю выполнить код с правами root или перезаписать любой файл в системе:
  • CVE-2025-32801 - позволяет локальному пользователю получить root-привилегии в системах, в которых Kea запускается под пользователем root, или получить полный контроль над сервером Kea в системах, запускающих Kea под пользователем с урезанными привилегиями. Атака осуществляется через обращение к REST API, предоставляемому сервисом kea-ctrl-agent и по умолчанию принимающему запросы через localhost:8000. В большинстве конфигураций REST API доступен для всех локальных пользователей системы без прохождения аутентификации.



    Эксплуатация осуществляется через отправку команды set-config, позволяющей управлять настройками всех сервисов Kea. Среди прочего команда может использоваться для изменения параметра "hooks-libraries", влияющего на загрузку дополнительных библиотек-обработчиков. Атакующий может добиться выполнения своего кода в контексте сервисов Kea через подстановку своей библиотеки, функция с атрибутом "constructor" из которой будет вызвана при открытии библиотеки функцией dlopen().


    curl -X POST -H "Content-Type: application/json" \
    -d '{ "command": "config-set", "arguments":
    { "Control-agent": {"hooks-libraries": [{"library": "/home/someuser/libexploit.so"}] }}}' \
    localhost:8000


    CVE-2025-32802 - уязвимость даёт возможность использовать команду config-write в REST API для перезаписи любого файла в системе, насколько позволяют права пользователя, под которым выполняется Kea. Атакующий может контролировать записываемое содержимое, но данные записываются в формате JSON и должны включать корректные настройки Kea. Тем не менее, не исключается, что этого может быть достаточно для запуска команд с правами root через манипуляцию с файлами в каталоге /etc/profile.d.


    curl -X POST -H "Content-Type: application/json" \
    -d '{ "command": "config-write", "arguments": { "filename": "/etc/evil.conf" } }' \
    localhost:8000




    Отдельно упоминается несколько сценариев использования команды config-write для изменения настроек Kea. Например, можно перенаправить лог файлы в произвольное место файловой системы, организовать спуфинг управляющих UNIX-сокетов сервисов или блокировать работу Kea.

    CVE-2025-32803 - логи (/var/log/kea*.log), а также файлы /var/lib/kea/*.cvs, содержащие информацию о привязке IP-адресов (DHCP lease) и сопутствующие данные, доступны всем на чтение.



Запуск Kea с правами root практикуется в дистрибутивах Arch Linux,
Gentoo, openSUSE Tumbleweed (до 23 мая), FreeBSD, NetBSD и OpenBSD. В
Debian, Ubuntu и Fedora сервис запускался под отдельным непривилегированным пользователем. В Gentoo пакет с Kea доступен только в unstable-репозитории для архитектуры amd64. В Ubuntu, в отличие от других систем, сервис kea-ctrl-agent запускался только в случае указания в настройках доступа к REST API по паролю.

Проследить за публикацией обновлений пакетов в дистрибутивах можно на страницах: Debian, Ubuntu, RHEL, openSUSE, Fedora, Gentoo, ALT Linux, Arch, FreeBSD, OpenBSD и NetBSD.




Дополнительно можно отметить уязвимость (CVE-2025-23394), проявляющуюся в пакете с IMAP-сервером Cyrus, поставляемом проектом openSUSE в репозиториях Tumbleweed и Factory. Уязвимость даёт возможность локальному пользователю поднять привилегии с пользователя cyrus до root. Уязвимости присвоен критический уровень опасности (9.8 из 10), но он необоснованно завышен, так как для атаки требуется наличие прав cyrus, которые можно получить через эксплуатацию какой-то иной уязвимости в cyrus-imapd.




Проблема вызвана ошибкой при работе с символическими ссылками в скрипте daily-backup.sh, специфичном для дистрибутивов SUSE/openSUSE.
Суть уязвимости в том, что скрипт daily-backup.sh запускается с правами root, но производит запись в каталог /var/lib/imap, в котором может создавать файлы непривилегированный пользователь cyrus. Атака сводится к созданию символической ссылки, указывающей на системный файл (например, можно создать символическую ссылку /var/lib/imap/mailboxes.txt, указывающую на /etc/shadow). Уязвимость устранена в версии пакета cyrus-imapd 3.8.4-2.1.


Новость позаимствована с opennet.ru
Ссылка на оригинал: https://www.opennet.ru/opennews/art.shtml?num=63324

Жизнь за Нер'зула!

Ответить