Detajet janë zbuluar dhe një exploit është publikuar për vulnerabilitetin CIFSwitch (CVE ende nuk i është caktuar) në modul të kernel-it CIFS dhe mjetin cifs-utils, që lejon një përdorues pa privilegje të fitojë të drejta root në sistem. Një rregullim është i disponueshëm vetëm në formën e një patch-i, i cili është publikuar më 16 maj dhe më 19 maj u pranua në degën kryesore të kernel-it Linux (shpërndarjet korreksionuese të kernel-it ende nuk janë në dispozicion).
Vulnerabiliteti prek kodin që siguron mbështetje për mekanizmin cifs.spnego për kryerjen e autentifikimit përmes protokollit SPNEGO (Negocimi i Thjeshtë dhe të Mbrojtur GSSAPI) kur lidhet me serverët SMB. Kur përdoret cifs.spnego për të përcaktuar çelësat nga Kerberos/SPNEGO, kernel-i thërret trajtuesin cifs.upcall, i siguruar nga paketa cifs-utils dhe i ekzekutuar në hapësirën e përdoruesit me të drejta root.
Непривилегированный пользователь может инициировать вызов обработчика через отправку запроса, требующего получения ключа «cifs.spnego», с поддельным описанием «CIFS SPNEGO». В обработчике cifs.upcall не выполняются дополнительные проверки корректности параметров, переданных через ядро, среди прочего он воспринимает заслуживающими доверия значения полей pid, uid, creduid и
upcall_target. Pas aktivizimit, trajtuesi cifs.upcall kalon në hapësirat e emrave të procesit të përdoruesit përmes të cilit u dërgua kërkesa dhe deri në heqjen e privilegjeve, kryen një kërkim në bazën e të dhënave NSS (Name Service Switch).
Sulmuesi mund të startojë procesin e tij në një hapësirë emri montimi të veçantë, çka do të çojë në kryerjen e një kërkese NSS në kontekstin e tij. Për të shfrytëzuar vulnerabilitetin, mjafton që brenda ambientit të krijuar nga sulmuesi të vendoset një skedar konfigurationsh të vetin /etc/nsswitch.conf dhe një grup bibliotekash të falsifikuara libnss_*.so.2. Ekzekutimi i një kërkese NSS nga trajtuesi cifs.upcall do të çojë në ngarkimin e biblioteka të falsifikuara me të drejta root.
Për të shfrytëzuar vulnerabilitetin, në sistem duhet të lejohet krijimi i hapësirave të emrave të identifikuesve të përdoruesve (user namespace) ose të pikave të montimit (mount namespace), si dhe kërkohet se në sistem të jetë instaluar paketa cifs-utils. Distribucione që mund të kenë vulnerabilitetin në konfigurimin e tyre të paracaktuar:
- 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
Distribucione, të cilat për funksionimin e eksploitit kërkojnë instalimin e paketës cifs-utils:
- Ubuntu 18.04/20.04/22.04 Desktop/Server
- Pop!_OS 22.04 Intel/24.04 Generic
- Ubuntu 24.04 Desktop minimal/plotë dhe Server
- Debian 11/12/13 netinst standard dhe 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
Distribucione, në të cilat në konfigurimin e paracaktuar janë aplikuar cilësime që bllokojnë shfrytëzimin e dobësive përmes SELinux ose Apparmor, edhe në prani të paketës cifs-utils:
- 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
Si një anashkalim mbrojtjeje, mund të bllokoni ngarkimin automatik të modulit të kernelit cifs:
sh -c «printf ‘install cifs /bin/false\n’ > /etc/modprobe.d/cifs.conf; rmmod cifs 2>/dev/null; true»
Также можно запретить использование user namespace («sysctl -w kernel.unprivileged_userns_clone=0») и удалить или переопределить правило cifs.spnego в настройках cifs-utils:
cat >/etc/request-key.d/cifs.spnego.conf <‘EOF’
Ndërkohë, më 28 maj janë publikuar 137 raporte mbi dobësitë në kernelin Linux, ndërsa më 27 maj — 277 raporte.
EOF
Тем временем, за 28 мая опубликовано 137 отчётов об уязвимостях в ядре Linux, а за 27 мая — 277 отчётов.
Burimi: opennet.ru
