Nedavno je vijest objavila to kritična ranjivost je identificirana u ksmbd modulu, koji je uključen u implementaciju poslužitelja datoteka temeljenog na SMB protokolu ugrađen u Linux kernel.
Greška otkrivena omogućuje daljinsko postizanje izvršenja koda s pravima jezgre. Napad se može izvesti i bez autentifikacije, dovoljno je da je u sustavu aktiviran ksmbd modul.
Trenutno točne detalje o metodi korištenoj za iskorištavanje ranjivosti još nisu otkriveni Poznato je da je ranjivost uzrokovana samo pristupom već oslobođenom (Use-After-Free) memorijskom području zbog neuspjeha provjere postojanja objekta prije izvođenja operacija na njemu.
DETALJI O RANJIVOSTI
Ova ranjivost omogućuje udaljenim napadačima da izvrše proizvoljan kod na zahvaćenim instalacijama jezgre Linuxa. Za iskorištavanje ove ranjivosti nije potrebna provjera autentičnosti, ali samo su sustavi s omogućenim ksmbd ranjivi.Specifična greška postoji unutar obrade naredbi SMB2_TREE_DISCONNECT. Problem je uzrokovan nedostatkom provjere postojanja objekta prije izvođenja operacija na objektu. Napadač može iskoristiti ovu ranjivost za izvršavanje koda u kontekstu kernela.
Spominje se da problem je povezan s činjenica da u funkciji smb2_tree_disconnect(), dodijeljena memorija je oslobođena za strukturu ksmbd_tree_connect, ali nakon toga pokazivač se i dalje koristio pri obradi određenih vanjskih zahtjeva koji su sadržavali naredbe SMB2_TREE_DISCONNECT.
Uz ranjivost spomenutu u ksmbd, Također su riješena 4 manje opasna problema:
- ZDI-22-1688 – Udaljeno izvršavanje koda s pravima jezgre zbog neuspjeha provjere stvarne veličine vanjskih podataka prije kopiranja u dodijeljeni međuspremnik u kodu za obradu atributa datoteke. Opasnost od ranjivosti ublažena je činjenicom da napad može izvesti samo autentificirani korisnik.
- ZDI-22-1691 – Udaljeno curenje informacija o memoriji kernela zbog netočne provjere ulaznih parametara u SMB2_WRITE rukovatelju naredbama (napad može izvršiti samo autentificirani korisnik).
- ZDI-22-1687: Udaljeni poziv za uskraćivanje usluge zbog iscrpljenosti dostupne sistemske memorije zbog netočnog oslobađanja resursa u rukovatelju naredbom SMB2_NEGOTIATE (napad se može izvesti bez autentifikacije).
- ZDI-22-1689 – Udaljeni kvar kernela zbog nedostatka pravilne provjere parametara naredbe SMB2_TREE_CONNECT, što rezultira očitavanjem izvan područja međuspremnika (napad može izvršiti samo autorizirani korisnik).
Podrška za pokretanje SMB poslužitelja pomoću ksmbd modula nalazi se u Samba paketu od verzije 4.16.0.
Za razliku od SMB poslužitelja korisničkog prostora, ksmbd je učinkovitiji u pogledu performansi, potrošnje memorije i integracije s naprednim značajkama kernela. Ksmbd se promovira kao plug-and-play Samba proširenje visokih performansi, koje se po potrebi integrira sa Samba alatima i bibliotekama.
Kôd ksmbd napisali su Namjae Jeon iz Samsunga i Hyunchul Lee iz LG-a, a održava ga Steve French iz Microsofta, održavatelj CIFS/SMB2/SMB3 podsustava u jezgri Linuxa i dugogodišnji član tima. Samba programer, koji je napravio značajan doprinos implementaciji podrške za SMB/CIFS protokol u Sambi i Linuxu.
Vrijedno je to spomenuti problem je prisutan od kernela 5.15, objavljen u studenom 2021. i tiho popravljen u ažuriranjima 5.15.61, 5.18.18 i 5.19.2, generiranim u kolovozu 2022. Budući da problemu još nije dodijeljen CVE identifikator, još nema točnih informacija o tome kako popraviti problem u distribucijama.
konačno ako jesi zainteresiran za saznanje više o tome, možete provjeriti detalje U sljedećem linku.