U nuglaanshaha kooxaha v1 ee u ogolaanaya in laga baxsado weel go'doonsan

Faahfaahinta nuglaanshaha (CVE-2022-0492) ee hirgelinta habka xaddidaadda ilaha v1 ee kernel Linux, kaas oo loo isticmaali karo in lagaga baxsado weelasha go'doonsan, ayaa la shaaciyay. Dhibaatadu waxay jirtay ilaa Linux kernel 2.6.24 waxaana lagu hagaajiyay kernel 5.16.12, 5.15.26, 5.10.97, 5.4.177, 4.19.229, 4.14.266, iyo 4.9.301. Waxaad la socon kartaa daabacadaha cusboonaysiinta xirmada ee qaybinta boggagan: Debian, SUSE, Ubuntu, RHEL, Fedora, Gentoo, Arch Linux.

Nuglaanta waxaa sabab u ah khalad macquul ah oo ku jira maamulaha faylka release_agent kaas oo ku guul daraystay inuu sameeyo hubinta saxda ah marka uu maamulaha ku wado mudnaan buuxda. Faylka release_agent waxaa loo isticmaalaa in lagu qeexo barnaamijka lagu fulinayo kernel-ka marka nidaamka kooxda la joojiyo. Barnaamijkani wuxuu u shaqeeyaa sida xidid iyo dhammaan "awoodaha" ee ku jira magaca magaca xididka. Waxaa loo qaatay in maamulaha oo kaliya uu heli karo goobta release_agent, laakiin dhab ahaantii jeegaggu waxay ku koobnaayeen siinta gelitaanka xididka isticmaalaha, taas oo aan meesha ka saarayn in goobta laga beddelo weelka ama isticmaale xidid aan lahayn xuquuq maamul (CAP_SYS_ADMIN) ).

Markii hore, qaabkan oo kale looma fahmin inuu yahay nuglaanta, laakiin xaaladdu way is beddeshay markii ay soo baxeen magacyada isticmaalaha (usernamespaces), taas oo kuu ogolaanaysa inaad abuurto isticmaalayaasha xididka ah ee weelasha aan ku dhejin xididka isticmaalaha deegaanka ugu weyn. Marka la eego, weerarka, waa ku filan inaad ku xirto maareeyahaaga release_agent ee weel leh xidid u gaar ah oo ku yaal meel bannaan oo aqoonsi isticmaale ah, ka dib marka la dhammeeyo habka, waxaa lagu fulin doonaa mudnaanta buuxda ee deegaanka ugu weyn.

Sida caadiga ah, kooxuhu waxay ku rakiban yihiin weel qaab akhrin kaliya ah, laakiin dhib ma leh dib u dejinta been-abuurkan qaabka qoraalka ah haddii aad leedahay xuquuqaha CAP_SYS_ADMIN ama adoo abuuraya weel buul leh oo leh magac isticmaale oo gooni ah iyadoo la adeegsanayo nidaamka aan wadaagin wicitaanka, kaas oo Xuquuqda CAP_SYS_ADMIN ayaa diyaar u ah weelka la abuuray.

U nuglaanshaha kooxaha v1 ee u ogolaanaya in laga baxsado weel go'doonsan

Weerarka waxaa lafulin karaa haddii aad ku leedahay mudnaanta xidid weel go'doonsan ama markaad wado weel aan lahayn calanka no_new_privs, kaas oo mamnuucaya helitaanka mudnaanta dheeraadka ah. Nidaamku waa inuu lahaadaa taageero loogu talagalay meelaha magac-isticmaalka ah ee karti u leh (oo ay ku shaqeeyaan Ubuntu iyo Fedora, laakiin aan ka shaqeynin Debian iyo RHEL) oo ay helaan xididka cgroup v1 (tusaale, Docker wuxuu ku shaqeeyaa weelasha xididka RDMA cgroup). Weerarku sidoo kale waa suurtogal haddii aad leedahay mudnaanta CAP_SYS_ADMIN, taas oo taageero u ah meelaha magac-isticmaalka iyo gelitaanka kala sarreynta xididka cgroup v1 aan loo baahnayn.

Marka lagu daro ka baxsashada weelka go'doonsan, baylahdu sidoo kale waxay ogolaataa hababka bilaabay isticmaalaha xididka oo aan lahayn "awood" ama isticmaale kasta oo leh xuquuqaha CAP_DAC_OVERRIDE (weerarku wuxuu u baahan yahay gelitaanka faylka / sys / fs / cgroup / * / release_agent, taas oo ah ay leedahay xidid) si loo helo dhammaan "awoodaha" habaysan.

Waxaa la xusay in nuglaanta aan laga faa'iidaysan karin marka la isticmaalayo hababka ilaalinta Seccomp, AppArmor ama SELinux ee go'doominta dheeraadka ah ee weelasha, maadaama Seccomp xannibay gelitaanka nidaamka unshare () wicitaanka, iyo AppArmor iyo SELinux ma oggola kor u qaadista cgroupfs qaab qoraal ah.

Source: opennet.ru

Add a comment