Nuglaanta PolKit waxay ogolaatay gelitaanka xididka in laga helo inta badan qaybinta Linux

Dhawaan Tayada sii daayay warka in ayaa aqoonsaday baylahda (CVE-2021-4034) en qaybta nidaamka polkit (oo hore u ahayd PolicyKit), kaas oo loo isticmaalo qaybinta si loogu ogolaado isticmaalayaasha aan mudnaanta siinin inay qabtaan ficilada u baahan xuquuqaha gelitaanka sare.

Nuglaanta Waxay u ogolaataa isticmaale maxalli ah oo aan mudnayn inuu kor u qaado mudnaanta ay u leeyihiin isticmaalaha xididka oo ay si buuxda u maamulaan nidaamka. Arrinka waxaa loo magacaabay PwnKit waxayna caan ku tahay soo saarista ka faa'iidaysiga shaqo ee ku shaqeeya goobaha caadiga ah inta badan qaybinta Linux.

Waxaa lagu xusay dhibaatadu waxay ka jirtaa utility pkexec oo ay ku jirto PolKit, kaas oo la socda calanka xididka SUID waxaana loogu talagalay in lagu fuliyo amarrada mudnaanta leh ee isticmaalayaasha kale sida waafaqsan xeerarka PolKit.

Maaraynta khaldan ee doodaha awgeed laga bilaabo khadka taliska ee loo maro pkexec, a Isticmaale aan mudnaan lahayn ayaa dhaafi kara aqoonsiga oo uu koodkaagu u shaqayn karaa xidid ahaan, iyadoon loo eegin xeerarka gelitaanka ee la dejiyay. Weerarka, iyada oo aan loo eegin waxa dejinta iyo xaddidaadaha lagu dejiyay PolKit, way ku filan tahay in sifada SUID ee faylka la fulin karo lagu dejiyay utility pkexec.

Pkexec ma hubiso saxnimada ee tirinta xujooyinka khadka taliska (argc) ee la gudbay markii hawsha la bilaabayo. Horumarinta pkexec waxay u maleeyeen in gelitaanka ugu horreeya ee argv array had iyo jeer ka kooban yahay magaca habka (pkexec), gelitaanka labaadna waa NULL ama magaca amarka lagu fuliyay pkexec.

Maaddaama tirinta doodda aan la barbar dhigin nuxurka dhabta ah ee shaxanka oo loo maleynayay in ay mar walba ka weyn tahay 1, haddii argv array madhan loo gudbiyay habka, kaas oo Linux's execve function uu oggol yahay, pkexec wuxuu ula dhaqmay NULL sidii dooddii ugu horreysay (habka). Magaca), iyo kan xiga ee ka dambeeya xusuusta kaydinta, sida qoraalka soo socda.

Dhibaatadu waxay tahay in ka dib markii argv array ee xasuusta waa envp array oo ka kooban doorsoomayaasha deegaanka. Markaa, iyada oo la raacayo array argv madhan, pkexec waxay soo saartaa xogta ku saabsan amarka lagu fuliyay mudnaan sare oo ka timid qaybta ugu horreysa ee array oo leh doorsoomayaasha deegaanka (argv[1] waxay la mid noqotay envp [0]), kaas oo nuxurkiisa lagu xakameyn karo weerarka.

Markuu helay qiimaha argv [1], pkexec wuxuu isku dayaa inuu go'aamiyo jidka buuxa ee faylka la fulin karo isagoo isticmaalaya wadooyinka faylka ee PATH wuxuuna u qoraa tilmaame xariiqda jidka buuxa ee dib ugu noqoshada argv[1], taas oo horseedaysa in dib loo qoro qiimaha ee doorsoomaha deegaanka ugu horreeya sidoo kale, maadaama argv[1] ay la mid tahay envp[0]. Iyadoo la adeegsanaayo magaca doorsoomiyaha deegaanka koowaad, weeraryahanku wuxuu bedeli karaa doorsoomiyaha deegaanka ee pkexec, tusaale ahaan, wuxuu ku badalaa doorsoomiyaha deegaanka "LD_PRELOAD", kaas oo aan lagu ogolayn barnaamijyada suid, oo ha lahaado geedi socodku ku shubo maktabadda la wadaago ee habka. .

Ka faa'iidaysiga shaqadu wuxuu adeegsadaa GCONV_PATH beddelka doorsoome, Kaas oo loo isticmaalo in lagu go'aamiyo dariiqa loo maro calaamada wax ka beddelka maktabadda ee si firfircoon ugu raran marka g_printerr() shaqada la yiraahdo, kaas oo adeegsada iconv_open() koodka.

Dib-u-qeexidda jidka GCONV_PATH, weeraryahanku wuxuu maamuli karaa inuu ku shubo maktabadda caadiga ah ee iconv, laakiin maktabaddiisa, darawaliinta kuwaas oo la fulin doono inta lagu jiro fariinta qaladka ee marxaladda pkexec weli u socoto sidii xidid iyo ka hor inta aan la xaqiijin bilowga. ogolaanshaha.

Waxaa la ogaaday in, in kasta oo dhibaatadu ay sabab u tahay musuqmaasuqa xusuusta, haddana si la isku halleyn karo oo marar badan looga faa'iidaysan karo, iyada oo aan loo eegin qaab-dhismeedka qalabka loo isticmaalo.

Ka faa'iidaysiga ayaa la diyaariyay si guul leh loogu tijaabiyay Ubuntu, Debian, Fedora iyo CentOS, laakiin sidoo kale waxaa loo isticmaali karaa qaybinta kale. Ka faa'iidaysiga asalka ah weli si guud looma heli karo, taas oo muujinaysa in ay tahay mid aan waxtar lahayn oo ay si fudud u abuuri karaan cilmi-baarayaasha kale, sidaas darteed waa muhiim in la rakibo cusbooneysiinta hotfix sida ugu dhakhsaha badan ee hababka isticmaalayaasha badan.

Polkit sidoo kale waxay diyaar u tahay nidaamyada BSD iyo Solaris, laakiin looma sahamin ka faa'iidaysi. Waxa la og yahay ayaa ah in weerarka aan lagu fulin karin OpenBSD, maadaama OpenBSD kernel-ku aanu ogolayn gudbinta qiimaha argc null ah marka la wacayo execve().

Dhibaatadu waxay jirtay ilaa Maajo 2009 markaas oo taliska pkexec lagu daray. Hagaajinta u nuglaanshaha PolKit wali waa loo heli karaa balastar ahaan (nooca hagaajinta lama samayn), laakiin tan iyo markii horumariyeyasha qaybinta hore loo ogeysiiyay dhibaatada, inta badan qaybinta ayaa soo saartay cusbooneysiin isku mar ah. ee macluumaadka nuglaanta.

Finalmente hadaad xiisaynayso inaad waxbadan ka ogaato, waxaad ka eegi kartaa faahfaahinta gudaha xiriirka soo socda.


Ka tag faalladaada

cinwaanka email aan la daabacin doonaa. Beeraha loo baahan yahay waxaa lagu calaamadeeyay la *

*

*

  1. Masuul ka ah xogta: Miguel Ángel Gatón
  2. Ujeedada xogta: Xakamaynta SPAM, maaraynta faallooyinka.
  3. Sharci: Oggolaanshahaaga
  4. Isgaarsiinta xogta: Xogta looma gudbin doono dhinacyada saddexaad marka laga reebo waajibaadka sharciga ah.
  5. Kaydinta xogta: Macluumaadka ay martigelisay Shabakadaha Occentus (EU)
  6. Xuquuqda: Waqti kasta oo aad xadidi karto, soo ceshan karto oo tirtiri karto macluumaadkaaga.