Der blev identificeret en sårbarhed i GDM

En sikkerhedsforsker af GitHub gjort det kendt for nylig du har identificeret en sårbarhed (CVE-2020-16125) i GNOME Display Manager (GDM), som er ansvarlig for at vise loginskærmen.

Kombineret med en anden sårbarhed i kontosporingstjenesten (kontodæmon), problemet tillader koden at køre som root.  Sårbarheden er forbundet med den forkerte start af det oprindelige konfigurationsværktøj, hvis det er umuligt at få adgang til kontodæmontjenesten via DBus.

Om sårbarhed

En uprivilegeret bruger kan gå ned i kontoudemon-processen eller læg på, hvad der vil skabe betingelserne for at gnome-initial-setup-værktøjet køres fra GDM, hvorigennem en ny bruger kan registrere sig som medlem af sudo-gruppen, dvs. have evnen til at køre programmer som root.

normalt, GDM kalder gnome-initial-setup for at indstille den første bruger hvis der ikke er nogen konti i systemet. Bekræftelse af eksistensen af ​​konti sker ved at kontakte accounts-daemon. Hvis den angivne proces mislykkes, antager GDM, at kontiene mangler, og starter den indledende konfigurationsproces.

Forskeren identificerede to måder at forstyrre daemon-kontoprocessen på- Den første (CVE-2020-16126) skyldes forkert nulstilling af rettigheder og den anden (CVE-2020-16127) fejl under behandling af en ".pam_environment" -fil.

Derudover en anden sårbarhed blev fundet i dæmonkonti (CVE-2018-14036) forårsaget af forkerte filsti-kontrol og tillader indholdet af vilkårlige filer at blive læst på systemet.

Sårbarhederne i kontodæmonen skyldes ændringer foretaget af Ubuntu-udviklere og vises ikke i hovedkontodæmonkoden i FreeDesktop-projektet og Debian-pakken.

CVE-2020-16127-problemet er til stede i en patch tilføjet i Ubuntu, der implementerer is_in_pam_environment-funktionen, som læser indholdet af .pam_environment-filen fra brugerens hjemmekatalog. Hvis du sætter et symbolsk link til / dev / zero i stedet for denne fil, hænger konto-dæmonprocessen på uendelige læseoperationer og holder op med at svare på anmodninger via DBus.

Det er usædvanligt, at en sårbarhed i et moderne operativsystem er så let at udnytte. Ved nogle lejligheder har jeg skrevet tusindvis af linjer med kode for at udnytte en sårbarhed. 

De fleste moderne udnyttelser involverer komplicerede tricks, såsom at bruge en hukommelseskorruptionssårbarhed til at falske falske objekter i bunken eller erstatte en fil med et symlink til mikrosekunders præcision for at udnytte en TOCTOU-sårbarhed. 

Så i disse dage er det relativt sjældent at finde en sårbarhed, der ikke kræver kodningsfærdigheder at udnytte. Jeg synes også, at sårbarheden er let at forstå, selvom du ikke har nogen forudgående viden om, hvordan Ubuntu fungerer eller har erfaring med sikkerhedsforskning.

CVE-2020-16126 sårbarhed er forårsaget af en anden patch der nulstiller den aktuelle brugers rettigheder under behandling af nogle DBus-opkald (f.eks. org.freedesktop.Accounts.User.SetLanguage).

Kontodemon-processen kører normalt som root, hvilket forhindrer en normal bruger i at sende signaler.

Men takket være den tilføjede patch, procesrettigheder kan nulstilles og brugeren kan afslutte denne proces ved at sende et signal. For at udføre et angreb skal du blot oprette betingelserne for at fjerne privilegier (RUID) og sende et SIGSEGV- eller SIGSTOP-signal til konto-dæmonprocessen.

Brugeren afslutter den grafiske session og går til tekstkonsollen (Ctrl-Alt-F1).
Når den grafiske session er afsluttet, forsøger GDM at vise loginskærmen, men hænger, når du prøver at få et svar fra kontodæmonen.

SIGSEGV- og SIGCONT-signalerne sendes fra konsollen til konto-dæmonprocessen og får den til at hænge.

Du kan også sende signaler, før du afslutter den grafiske session, men du skal gøre det med en forsinkelse for at have tid til at afslutte sessionen, og før signalet sendes, havde GDM tid til at starte.

Anmodningen til kontoudemonen i GDM mislykkes, og GDM kalder hjælpeprogrammet gnome-initial-setup, i hvis interface det er tilstrækkeligt at oprette en ny konto.

Sårbarheden er rettet i GNOME 3.36.2 og 3.38.2. Udnyttelse af sårbarheden er bekræftet i Ubuntu og dets derivater.

kilde: https://securitylab.github.com


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.