Në utilitarin smb4k, që përdoret në KDE për identifikimin dhe montimin e partitioneve SMB, janë zbuluar dobësi që lejojnë aksesin në sistem me të drejtat e root. Problemet janë adresuar në lirimin Smb4K 4.0.5. Mund të kontrolloni statusin e versionit të ri të paketës ose përgatitjes së një rregullimi në shpërndarjet e mëposhtme: Debian, Ubuntu, Fedora, SUSE/openSUSE, Gentoo, Arch dhe FreeBSD.
Për të kryer veprime me privilegje në smb4k, përdoren përpunuesit KAuth, të cilët aktivehen me të drejtat e root. Dobësitë janë të pranishme në përpunuesin Smb4KMountHelper dhe shkaktohen nga fakti se funksionet për montimin (CVE-2025-66003) dhe çmontimin (CVE-2025-66002) e sistemit të skedave rrjetor nuk filtrojnë si duhet opsionet që i kalohen komandave mount.cifs dhe unmount.cifs, duke lejuar një përdorues të pa privilegjuar të kalojë çfarëdo opsionesh përmes parametrin mh_options.
Për shembull, duke përdorur opsionet "filemode=04777,uid=0", të gjitha skedaret në partitionin e montuar do të kenë flamurin suid root. Përdoruesi mund të aktivizojë një server SMB dhe të montojë nga ai partitionin e tij me skedat e nevojshme ekzekutuese, të cilat me vendosjen e opsioneve "filemode=04777,uid=0" do të ekzekutohen me të drejtat e root.
Në përpunuesin Smb4KMountHelper gjithashtu nuk janë verifikuar si duhet katalogët target, gjë që, për shembull, lejon montimin e partitionit tuaj SMB në vend të katalogut /bin dhe zëvendësimin e tij me një version të modifikuar të /bin/bash. Për më tepër, përmes parametrin mh_krb5ticket është e mundur të ndryshoni rrugën për skedarin me akreditivët Kerberos dhe të arrini të nxirrni përmbajtjen e ndonjë skedari, për shembull, /etc/shadow, në stderr ose log publik.
Dobësia në funksionin Smb4KMountHelper::unmount() mund të përdoret për të shkaktuar një qëndrim në shërbim duke çmontuar partitionet sistemike, duke manipuluar përmbajtjen e parametrin mh_mountpoint. Interesante, ishte një kontroll në kod mbi llojin e partitionit, i cili kalonte vetëm partitionet cifs, smbfs dhe smb3, por në bllokun if për të nxjerrë një gabim ishte harruar operatori "return" dhe ekzekutimi nuk ishte ndërprerë.
Burimi: opennet.ru
