[Kritiek] 12 jaar oude exploit geeft root rechten!

Geschreven door Kasper de Waard on date 28 januari 2022 Leestijd : 2 minuten

Sinds een paar dagen is er in de infosec community een (proof-of-concept) PoC beschikbaar die op de meeste linux distributies een normale gebruiker root rechten kan geven. Op UNIX gebaseerde operating systems is “root” het hoogste beheeraccount en daarmee is dit een zorgelijke ontwikkeling. Onderzoekers geven aan dat het een kwestie van tijd is voordat de exploit “PwnKit” actief uitgebuit gaat worden.

Afgeslopen dinsdag kwam er aan het licht dat er een 12 jaar oude kwetsbaarheid zat in een systeem Polkit, niet lang daarna volgende er de één na de andere screenshot van onderzoekers die de kwetsbaarheid uitprobeerde op diverse linux distributies.

Polkit wordt gebruikt om rechten te beheren op UNIX gebaseerde operating systems. De functie onder andere is om processen met geen of lagere rechten te laten communiceren met “privileged” processen. Dat wil zeggen, rechten met hogere of root rechten. Door het component pkexec aan te roepen kunnen gebruikers dus commando’s uitvoeren met beheerders rechten.

Zeer betrouwbaar

Zoals met de meeste operating systems heeft linux een hiërarchische structuur waarbij verschillende rechten toegang geeft tot verschillende lagen en bepalen deze wat gebruikers kunnen doen en welke processen ze kunnen aanroepen. Dit is zo opgezet om de impact van gebruikers of processen op het systeem te beperken.

De memory-corruption in het proces pkexec zit er al sinds 2009 in en geeft dus alle lokale gebruikers met lage rechten de mogelijkheid om ”privilege escalation” toe te passen en hiermee root rechten te verkrijgen zelfs als het Polkit proces niet actief is.

Eén voordeel is wel dat om misbruik te maken van de kwetsbaarheid de aanvaller lokaal op de machine een account moet hebben, de kwetsbaarheid is niet vanaf extern (zonder account) uit te buiten.

cve-2021-4034.jpg

Patchen of mitigeren

De kwetsbaarheid is gevonden door “Qualys” in november van vorig jaar en is afgelopen dinsdag (25 Januari 2022) naar buiten gebracht met CVE-nummer “CVE-2021-4034”.

Voor alle grote linux distributies zijn er patches voor de kwetsbaarheid uitgebracht en aangezien er diverse bronnen zijn die op dit moment de PoC aanbieden adviseren wij dan ook om deze zo snel mogelijk te installeren.

Mocht het niet mogelijk zijn om direct te patchen is er de mogelijkheid om de SUID-bit uit pkexec te verwijderen door het command “chmod 0755 /usr/bin/pkexec” uit te voeren (zonder “”). Dit voorkomt dat het als root kan worden uitgevoerd. Advies van Debian, Ubuntu en Red Hat zijn hier, hier en hier te vinden.

Mogelijk misbruik opsporen

Wilt u weten of uw systeem mogelijk al slachtoffer is geworden van de exploit dan kunt u in de logfiles zoeken naar (“The value for the SHELL variable was not found the /etc/shells file” of “The value for environment variable […] contains suspicious content”).

Helaas zijn er volgens diverse bronnen ook mogelijkheden om de exploit uit te voeren zonder sporen achter te laten.