CIFSwitch — njĂ« vulnerabilitet nĂ« nĂ«nstrukturĂ«n CIFS tĂ« kernelit Linux, qĂ« lejon marrjen e tĂ« drejtave root.

Janë zbuluar detajet dhe është botuar një eksploit për vulnerabilitetin CIFSwitch (CVE ende nuk është ekuivalencuar) në modulin e bërthamës CIFS dhe grupin e mjeteve cifs-utils, që i lejon një përdoruesi të pa privilegjuar të marrë të drejtat root në sistem. Rregullimi është i disponueshëm vetëm në formën e një patch, i cili është publikuar më 16 maj dhe më 19 maj është pranuar në degën kryesore të bërthamës Linux (versionet e rregulluara të bërthamës akoma nuk janë të disponueshme).

Vulnerabiliteti ndikon në kodin që siguron mbështetje për mekanizmin cifs.spnego për të kryer autentifikimin përmes protokollit SPNEGO (Negocimi i Thjeshtë dhe i Mbrojtur GSSAPI) gjatë lidhjes me serverat SMB. Kur përdoret cifs.spnego për të përcaktuar çelësat nga Kerberos/SPNEGO, bërthama thërret procesorin cifs.upcall, i ofruar nga paketa cifs-utils dhe ekzekutuar në hapësirën e përdoruesit me të drejta root.

Një përdorues i pa privilegjuar mund të nismojë thirrjen e procesorit përmes dërgimit të një kërkese që kërkon të marrë çelësin "cifs.spnego", me një përshkrim të falsifikuar "CIFS SPNEGO". Procesori cifs.upcall nuk kryen kontrollime të mundshme për përshtatshmërinë e parametrave të dërguar përmes bërthamës, ndër të tjera, ai percepton vlerat e fushave pid, uid, creduid dhe upcall_target si të besueshme.
Pas aktivizimit, procesori cifs.upcall kalon në hapësirën e identifikimit të procesit të përdoruesit, përmes të cilit është dërguar kërkesa, dhe deri në heqjen e privilegjeve kryen kërkimin në bazën e sistemit NSS (Shkëmbimi i Shërbimeve të Emrave).

Një sulmues mund të nisë procesin e tij në një hapësirë identifikimi të montimeve të veçanta, gjë që do të rezultojë në kryerjen e thirrjes NSS në kontekstin e tij. Për të shfrytëzuar vulnerabilitetin mjafton që brenda ambientit të krijuar nga sulmuesi të ketë skedarin e tij të konfigurimit /etc/nsswitch.conf dhe një grup bibliotekash të stërvitura libnss_*.so.2. Ekzekutimi i kërkesës NSS nga procesori cifs.upcall do të rezultojë në ngarkimin e biblioteka të stërvitura nga sulmuesi me të drejta root.

Për të shfrytëzuar vulnerabilitetin, në sistem duhet të jetë e lejuar krijimi i hapësirave të identifikimit të përdoruesve (user namespace) ose të montimeve (mount namespace), dhe gjithashtu kërkohet që në sistem të jetë instaluar paketa cifs-utils. Distribucione ku është e mundur shfrytëzimi i vulnerabilitetit në konfigurimin e tij 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

Distribuoni në të cilat kërkohet instalimi i paketës cifs-utils për funksionimin e exploitit:

  • Ubuntu 18.04/20.04/22.04 Desktop/Server
  • Pop!_OS 22.04 Intel/24.04 Generic
  • Ubuntu 24.04 Desktop minimal/full 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

Distribuoni në të cilat në konfigurimin e tyre të paracaktuar zbatohen cilësimet që bllokojnë shfrytëzimin e dobësisë 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ë zgjidhje për mbrojtjen, mund të bllokoni ngarkimin automatik të modulit të bërthamës cifs:

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

Gjithashtu, mund të ndaloni përdorimin e user namespace («sysctl -w kernel.unprivileged_userns_clone=0») dhe të fshini ose tejkaloni rregullin cifs.spnego në cilësimet e cifs-utils:

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

NdĂ«rkohĂ«, mĂ« 28 maj janĂ« publikuar 137 raporte pĂ«r dobĂ«si nĂ« kernelin Linux, dhe mĂ« 27 maj — 277 raporte.

Burimi: opennet.ru

Blini hosting tĂ« besueshĂ«m pĂ«r faqe interneti me mbrojtje nga DDoS, serverĂ« VPS VDS đŸ”„ Blini hosting tĂ« besueshĂ«m pĂ«r faqe interneti me mbrojtje nga DDoS, serverĂ« VPS VDS | ProHoster