Раскрыты детали и опубликован эксплоит для уязвимости CIFSwitch (CVE пока не присвоен) в модуле ядра CIFS и инструментарии cifs-utils, позволяющей непривилегированному пользователю получить права root в системе. Исправление доступно только в виде патча, который опубликован 16 мая и 19 мая был принят в основную ветку ядра Linux (корректирующие выпуски ядра ещё недоступны). Уязвимость затрагивает код, обеспечивающий поддержку механизма cifs.spnego для выполнения аутентификации по протоколу SPNEGO (Simple and Protected GSSAPI Negotiation) при подключении к SMB-серверам. При использовании cifs.spnego для определения ключей из Kerberos/SPNEGO ядро вызывает обработчик cifs.upcall, предоставляемый пакетом cifs-utils и выполняемый в пользовательском пространстве с правами root. Непривилегированный пользователь может инициировать вызов обработчика через отправку запроса, требующего получения ключа "cifs.spnego", с поддельным описанием "CIFS SPNEGO". В обработчике cifs.upcall не выполняются дополнительные проверки корректности параметров, переданных через ядро, среди прочего он воспринимает заслуживающими доверия значения полей pid, uid, creduid и upcall_target. После активации обработчик cifs.upcall переключается в пространства имён пользовательского процесса, через который был отправлен запрос, и до сброса привилегий выполняет поиск в системной базе NSS (Name Service Switch). Атакующий может запустить свой процесс в отдельном пространстве имён точек монтирования, что приведёт к выполнению обращения к NSS в его контексте. Для эксплуатации уязвимости достаточно внутри созданного атакующим окружения разместить собственный файл конфигурации /etc/nsswitch.conf и набор подставных библиотек libnss_*.so.2. Выполнение NSS-запроса обработчиком cifs.upcall приведёт к загрузке подставленных атакующим библиотек с правами root. Для эксплуатации уязвимости в системе должно быть разрешено создание пространств имён идентификаторов пользователей (user namespace) или точек монтирования (mount namespace), а также требуется наличие в системе установленного пакета cifs-utils. Дистрибутивы, в которых возможна эксплуатация уязвимости в конфигурации по умолчанию:
Источник: https://www.opennet.ru/opennews/art.shtml?num=65572
- Linux Mint Cinnamon 21.3/22.3 CentOS Stream 9 GNOME Rocky Linux 9 Workstation Kali Linux AlmaLinux 9.7 Workstation SUSE 15 SP7/SAP 15 SP7/SAP 16
- Ubuntu 18.04/20.04/22.04 Desktop/Server Pop!_OS 22.04 Intel/24.04 Generic Ubuntu 24.04 Desktop minimal/full and Server Debian 11/12/13 netinst standard and GNOME/KDE/standard/XFCE CentOS Stream 9 Cinnamon/KDE/MATE/XFCE Rocky Linux 9 KDE/Workstation-Lite openSUSE Leap 15.6 GNOME/KDE openSUSE Tumbleweed GNOME/KDE Rocky Linux 8 GenericCloud Oracle Linux 8/9 KVM Amazon Linux 2023 KVM
- Ubuntu 26.04 Desktop/Server Fedora 40/41/42/43/44 Workstation/Server CentOS Stream 10 GNOME/KDE Rocky Linux 10 Workstation AlmaLinux 10.1 Workstation Oracle Linux 10 KVM openSUSE Tumbleweed GNOME/KDE openSUSE Leap 16.0 OEM GNOME/KDE/Minimal-VM SUSE Linux 16
Источник: https://www.opennet.ru/opennews/art.shtml?num=65572