CIFSwitch — ranjivost u CIFS podsustavu jezgre Linuxa koja omogućuje dobivanje root prava

Otkrivene su pojedinosti i objavljen je eksploitat za ranjivost CIFSwitch (CVE još nije dodijeljen) u CIFS kernel modulu i cifs-utils alatu, koja omogućuje neprivilegiranom korisniku da dobije root privilegije u sustavu. Ispravak je dostupan samo kao zakrpa, koja je objavljena 16. svibnja, a 19. svibnja je prihvaćena u glavnu granu Linux kernela (ispravci kernela još nisu dostupni).

Ranjivost se odnosi na kod koji osigurava podršku mehanizmu cifs.spnego za autentifikaciju putem SPNEGO protokola (Simple and Protected GSSAPI Negotiation) prilikom povezivanja na SMB poslužitelje. Kada se koristi cifs.spnego za određivanje ključeva iz Kerberos/SPNEGO, kernel poziva cifs.upcall obrtnika, koji se pruža cifs-utils paketom i izvršava u korisničkom prostoru s root privilegijama.

Neprivilegirani korisnik može inicirati poziv obrtnika slanjem zahtjeva koji zahtijeva dobivanje ključa "cifs.spnego", s lažnim opisom "CIFS SPNEGO". U cifs.upcall obrtniku ne izvode se dodatne provjere ispravnosti parametara poslanih putem kernela, među ostalim, prihvaća vjerodostojne vrijednosti polja pid, uid, creduid i
upcall_target. Nakon aktivacije, cifs.upcall obrtnik prebacuje se u prostor imena korisničkog procesa koji je poslao zahtjev, i prije nego što se ponište privilegije, izvršava pretraživanje u sustavnoj bazi NSS (Name Service Switch).

Napadač može pokrenuti svoj proces u zasebnom prostoru imena točaka montiranja, što će rezultirati izvršavanjem NSS poziva u njegovom kontekstu. Za iskorištavanje ranjivosti, dovoljno je u okruženju koje je napadač stvorio postaviti vlastitu konfiguracijsku datoteku /etc/nsswitch.conf i skup lažnih biblioteka libnss_*.so.2. Izvršenje NSS zahtjeva od strane cifs.upcall obrtnika rezultirat će učitavanjem napadačevih biblioteka s root privilegijama.

Za iskorištavanje ranjivosti, sustav mora omogućiti stvaranje prostora imena korisničkih identifikatora (user namespace) ili točaka montiranja (mount namespace), a također je potrebno da sustav ima instaliran cifs-utils paket. Distrozivi u kojima je moguće iskorištavanje ranjivosti s konfiguracijom prema zadanim postavkama:

  • 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

Distribucije koje zahtijevaju instalaciju paketa cifs-utils za rad explojta:

  • Ubuntu 18.04/20.04/22.04 Desktop/Server
  • Pop!_OS 22.04 Intel/24.04 Generic
  • Ubuntu 24.04 Desktop minimal/full i Server
  • Debian 11/12/13 netinst standard i 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

Distribucije u kojima se po defaultnim postavkama primjenjuju podešavanja koja blokiraju iskorištavanje ranjivosti putem SELinux-a ili Apparmor-a, čak i uz prisutnost paketa 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

Kao zaobilazno rješenje, moguće je blokirati automatsko učitavanje modula kernel cifs:

sh -c «printf ‘install cifs /bin/false\n’ > /etc/modprobe.d/cifs.conf; rmmod cifs 2>/dev/null; true»

Također, moguće je zabraniti korištenje user namespace-a («sysctl -w kernel.unprivileged_userns_clone=0») i ukloniti ili prepraviti pravilo cifs.spnego u postavkama cifs-utils:

cat >/etc/request-key.d/cifs.spnego.conf <‘EOF’
create cifs.spnego * * /usr/sbin/keyctl negate %k 30 %S
EOF

U međuvremenu, 28. svibnja objavljeno je 137 izvještaja o ranjivostima u kernelu Linux, a 27. svibnja — 277 izvještaja.

Izvor: opennet.ru

Kupite pouzdan hosting za web stranice s DDoS zaštitom, VPS VDS servere 🔥 Kupite pouzdan hosting za web stranice s DDoS zaštitom, VPS VDS servere | ProHoster