GDM buvo nustatytas pažeidžiamumas

Saugumo tyrinėtojas pateikė „GitHub“ paviešino neseniai nustatėte pažeidžiamumą (CVE-2020-16125) „GNOME Display Manager“ (GDM), kuris yra atsakingas už prisijungimo ekrano rodymą.

Kartu su kitu pažeidžiamumu sąskaitos stebėjimo tarnyboje (accounts-daemon), problema leidžia kodui paleisti kaip šakninį.  Pažeidžiamumas siejamas su neteisingu pradinės konfigūracijos įrankio paleidimu, jei per DBus neįmanoma pasiekti paskyros deemonų paslaugos.

Apie pažeidžiamumą

Neprivilegijuotas vartotojas gali užstrigti sąskaitų-deemonų procese arba padėk ragelį, kas sukurs sąlygas kad „gnome-initial-setup“ įrankis būtų paleistas iš GDM, per kurį naujas vartotojas gali užsiregistruoti kaip sudo grupės narys, tai yra, galimybė paleisti programas kaip root.

Paprastai „GDM“ iškviečia „gnome-initial-setup“, kad nustatytų pirmąjį vartotoją jei sistemoje nėra sąskaitų. Sąskaitų buvimas patikrinamas susisiekus su „accounts-daemon“. Jei nurodytas procesas nepavyksta, GDM daro prielaidą, kad trūksta paskyrų, ir pradeda pradinį konfigūracijos procesą.

Tyrėjas nustatė du būdus, kaip sutrikdyti „deemon“ sąskaitų procesą- Pirmoji (CVE-2020-16126) yra dėl neteisingo privilegijų atstatymo, o antroji (CVE-2020-16127) klaida apdorojant „.pam_environment“ failą.

Be to, kitas pažeidžiamumas buvo rastas „daemon“ paskyrose (CVE-2018-14036) sukėlė neteisingas failų kelio patikrinimas ir leidimas sistemoje perskaityti savavališkų failų turinį.

„Account-daemon“ pažeidžiamumą sukelia „Ubuntu“ kūrėjų atlikti pakeitimai ir jie nerodomi pagrindiniame „FreeDesktop“ projekto „account-daemon“ kode ir „Debian“ pakete.

CVE-2020-16127 problema yra „Ubuntu“ pridėtame pleistre, įgyvendinančiame funkciją „is_in_pam_environment“, kuri nuskaito .pam_environment failo turinį iš vartotojo namų katalogo. Jei vietoj šio failo įdėsite simbolinę nuorodą į / dev / zero, paskyros demono procesas pakimba ties begalinėmis skaitymo operacijomis ir nebeatsako į užklausas per DBus.

Neįprasta, kad šiuolaikinės operacinės sistemos pažeidžiamumą taip lengva išnaudoti. Kai kuriais atvejais aš parašiau tūkstančius kodų eilučių, kad išnaudoju pažeidžiamumą. 

Dauguma šiuolaikinių išnaudojimų apima sudėtingas gudrybes, pvz., Naudojant atminties sugadinimo pažeidžiamumą, kad suklastotų netikrus objektus krūvoje, arba pakeisdami failą simboline nuoroda į mikrosekundžių tikslumą, kad būtų galima išnaudoti TOCTOU pažeidžiamumą. 

Taigi šiais laikais gana retai galima rasti pažeidžiamumą, kurio panaudojimui nereikia kodavimo įgūdžių. Taip pat manau, kad pažeidžiamumą lengva suprasti, net jei neturite išankstinių žinių apie tai, kaip veikia „Ubuntu“, ar patirties atliekant saugumo tyrimus.

CVE-2020-16126 pažeidžiamumą sukelia kitas pataisymas kuris iš naujo nustato dabartinio vartotojo teises apdorojant kai kuriuos DBus iškvietimus (pavyzdžiui, org.freedesktop.Accounts.User.SetLanguage).

Paskyros demono procesas paprastai veikia kaip root, o tai neleidžia normaliam vartotojui siųsti signalų.

Bet dėka įdėto pleistro, proceso privilegijas galima iš naujo nustatyti ir vartotojas gali nutraukti šį procesą siųsdamas signalą. Norėdami atlikti ataką, tiesiog sukurkite sąlygas pašalinti privilegijas (RUID) ir išsiųskite SIGSEGV arba SIGSTOP signalą į paskyros deemono procesą.

Vartotojas baigia grafinę sesiją ir eina į teksto konsolę („Ctrl-Alt-F1“).
Pasibaigus grafinei sesijai, GDM bando parodyti prisijungimo ekraną, tačiau bandant gauti atsakymą iš abonementų-deemono, jis užstringa.

SIGSEGV ir SIGCONT signalai siunčiami iš konsolės į paskyros demonų procesą, todėl jis užstringa.

Taip pat galite siųsti signalus prieš išeidami iš grafinės sesijos, tačiau turite tai padaryti su vėlavimu, kad turėtumėte laiko baigti sesiją, o prieš siunčiant signalą, GDM turėjo laiko pradėti.

Užklausa GDM sąskaitų deemonui nepavyksta, o GDM iškviečia „gnome-initial-setup“ įrankį, kurio sąsajoje pakanka sukurti naują paskyrą.

Pažeidžiamumas pašalintas GNOME 3.36.2 ir 3.38.2. Pažeidžiamumas buvo patvirtintas „Ubuntu“ ir jo dariniuose.

Fuente: https://securitylab.github.com


Palikite komentarą

Jūsų elektroninio pašto adresas nebus skelbiamas. Privalomi laukai yra pažymėti *

*

*

  1. Už duomenis atsakingas: AB Internet Networks 2008 SL
  2. Duomenų paskirtis: kontroliuoti šlamštą, komentarų valdymą.
  3. Įteisinimas: jūsų sutikimas
  4. Duomenų perdavimas: Duomenys nebus perduoti trečiosioms šalims, išskyrus teisinius įsipareigojimus.
  5. Duomenų saugojimas: „Occentus Networks“ (ES) talpinama duomenų bazė
  6. Teisės: bet kuriuo metu galite apriboti, atkurti ir ištrinti savo informaciją.