En sårbarhed, der var til stede i 12 år i polkit, gjorde det muligt at opnå root-privilegier 

For et par dage siden brød nyheden om det Qualys forskerhold opdagede hukommelseskorruptionssårbarhed i polkit pkexec, et root SUID-program, der er installeret som standard på alle større Linux-distributioner.

Denne sårbarhed let udnyttelig tilladt enhver ikke-privilegeret bruger at opnå fulde root-privilegier på en sårbar vært ved at udnytte denne sårbarhed i dens standardkonfiguration.

polkit (tidligere kendt som PolicyKit) er en komponent til systemdækkende privilegiekontrol på Unix-lignende operativsystemer. Det giver en organiseret måde for ikke-privilegerede processer at kommunikere med privilegerede processer, plus det er også muligt at bruge polkit til at køre kommandoer med forhøjede privilegier ved at bruge kommandoen pkexec efterfulgt af den kommando, den er beregnet til at køre (med root-tilladelse).

Om sårbarhed

Sårbarhed ligger i pkexec, derefter din kode indeholder en pointerhåndteringsfejl, nogle af dem ende med at henvise til områder af hukommelsen, der ikke burde. Ved at udnytte denne fejl er det muligt at opnå administratorrettigheder næsten øjeblikkeligt.

Katalogiseret som CVE-2021-4034 fik sårbarheden en CVSS-score på 7,8, og Qualys-teamet forklarede i et blogindlæg, at:

Pkexec-fejlen åbner døren til root-privilegier for en angriber. Qualys-forskere, sagde han, har vist udnyttelse af standardinstallationer af Ubuntu, Debian, Fedora og CentOS, og andre Linux-distributioner menes også at være sårbare.

"Vellykket udnyttelse af denne sårbarhed giver enhver ikke-privilegeret bruger mulighed for at få root-privilegier på den sårbare vært. Qualys sikkerhedsforskere var i stand til uafhængigt at verificere sårbarheden, udvikle en udnyttelse og opnå fulde root-privilegier på standardinstallationer af Ubuntu, Debian, Fedora og CentOS. Andre Linux-distributioner er sandsynligvis sårbare og kan udnyttes. Denne sårbarhed har været skjult i mere end 12 år og påvirker alle versioner af pkexec siden dens første udgivelse i maj 2009 (bekræft c8c3d83, "Tilføj en pkexec(1)-kommando").

"Så snart vores forskerhold bekræftede sårbarheden, forpligtede Qualys sig til ansvarlig afsløring af sårbarhed og koordinerede med leverandører og open source-distributioner for at annoncere sårbarheden."

Problemet opstår, når main()-funktionen af pkexec behandle kommandolinjeargumenter og at argc er nul. Funktionen forsøger stadig at få adgang til argumentlisten og ender med at forsøge at bruge en rgvvoid (ARGument Vector af kommandolinjeargumentstrenge). Som et resultat heraf læses og skrives hukommelsen uden for grænserne, som en angriber kan udnytte til at injicere en miljøvariabel, der kan få vilkårlig kode til at blive indlæst.

Det faktum, at disse variabler kan genindføres, gør koden sårbar. I det mindste den udnyttelsesteknik, der tilbydes af Qualys (injektion af variabelen GCONV_PATH i pkexec-miljøet for at køre et delt bibliotek som root) efterlader spor i logfilerne.

I en sikkerhedsrådgivning udsendte Red Hat følgende erklæring:

"Red Hat er opmærksom på en sårbarhed fundet i pkexec, der gør det muligt for en godkendt bruger at udføre et angreb med udvidelse af rettigheder."

"Den største risiko for kunder er muligheden for, at en uprivilegeret bruger får administrative rettigheder på berørte systemer. Angriberen skal have login-adgang til målsystemet for at udføre angrebet."

Det er værd at nævne det sårbarheden var allerede blevet identificeret i 2013 og var blevet beskrevet detaljeret i et blogindlæg, selvom der ikke var leveret PoC:

"Lol, jeg skrev om denne polkit-sårbarhed i 2013. Jeg kunne ikke finde en egentlig udnyttelsessti, men jeg identificerede årsagen."

Endelig, hvis du er interesseret i at kunne vide det om det, kan du konsultere detaljerne i følgende link.


Efterlad din kommentar

Din e-mailadresse vil ikke blive offentliggjort. Obligatoriske felter er markeret med *

*

*

  1. Ansvarlig for data: AB Internet Networks 2008 SL
  2. Formålet med dataene: Control SPAM, management af kommentarer.
  3. Legitimering: Dit samtykke
  4. Kommunikation af dataene: Dataene vil ikke blive kommunikeret til tredjemand, undtagen ved juridisk forpligtelse.
  5. Datalagring: Database hostet af Occentus Networks (EU)
  6. Rettigheder: Du kan til enhver tid begrænse, gendanne og slette dine oplysninger.