Bug u Snapdu omogućio je dobivanje root privilegija

puckanje

U Snapdu je identificirana ranjivost što je već opisano u (CVE-2019-7304), koji neprivilegiranom korisniku omogućuje stjecanje administratorskih privilegija (root) na sustavu.

Za one koji nisu upoznati sa Snapdom, možemo vam reći da je ovo set alata za upravljanje samostalnim paketima u snap formatu. Za testiranje ranjivosti sustava objavljena su dva prototipa exploita.

  • Prva koja napadaču omogućuje stvaranje novog korisnika u sustavu.
  • Drugi omogućuje napadaču mogućnost instaliranja bilo koje vrste instant paketa na sustav i pokretanja koda kao root (instaliranjem paketa u načinu "devmode" s privitkom upravljačkog programa pozvanim s root privilegijama pri instaliranju paketa).

Koji su to podvizi?

Ekploit stvoren za iskorištavanje prve naznačene mogućnosti iznad preskočite provjere kontrole pristupa za upotrebu ograničene API funkcije lokalne usluge snapd.

To sustavu postavlja upit za korisničko ime i javni SSH ključ s navedene adrese e-pošte, a zatim kreira lokalnog korisnika na temelju te vrijednosti.

Uspješno iskorištavanje ove verzije zahtijeva odlaznu internetsku vezu i SSH uslugu dostupnu putem localhosta.

Drugi izrabljeni podvig iskoristiti drugu istaknutu točku, za razliku od prethodnog opisanog iskorištavanja, ne zahtijeva izvođenje SSH usluge.

također radit će na novijim verzijama Ubuntua bez internetske veze, što ga čini otpornim na promjene i učinkovitim u ograničenim okruženjima.

Ovo iskorištavanje Također bi trebao biti učinkovit na sustavima koji nisu Ubuntu koji imaju instaliran snapd, ali nisu API sukladni zbog sintakse ljuske Linuxa.

Neki stariji Ubuntu sustavi (poput verzije 16.04) možda neće imati instalirane komponente snapd potrebne za preuzimanje.

Ako je to slučaj, ova verzija exploita može ga pokrenuti za instaliranje tih ovisnosti. Tijekom te instalacije, snapd se može nadograditi na neranjivu verziju.

Da biste saznali malo više o njima, možete dobiti više detalja U sljedećem linku.

U čemu se sastoji ova pronađena greška?

Ranjivost je zbog nedostatak ispravnih provjera u snapd-u prilikom obrade adrese vanjske utičnice u procesu procjene prava pristupa za Unix utičnice.

Kada obrađujete zahtjeve za API putem Unix utičnice, provjerava se UID korisnika povezanog s vezom i na temelju toga se donosi odluka o pristupu.

Korisnik može priložiti niz «; uid = 0; » na naziv datoteke s utičnicom (na primjer, stvorite utičnicu "/ tmp / sock; uid = 0;") i ovaj će se niz obrađivati ​​kao dio adrese klijentske utičnice.

Pri raščlanjivanju parametara u snapd, identifikator korisnika dodjeljuje se cikličkim pretraživanjem pomoću maske "; Uid =" na retku koji također uključuje naziv datoteke s utičnicom (na primjer, pri kreiranju klijentske utičnice "/ tmp / sock; uid = 0;" ovaj redak ima oblik "pid = 5275; uid = 1000; socket = / run / snapd.socket; / tmp / sock; uid = 0; «).

Stoga, ako postoji lanac "; Uid = 0;" u nazivu utičnice identifikator će se dodijeliti njemu, a ne regularnom parametru sa stvarnim UID-om.

Lokalni napadač može koristiti ovu grešku za pristup utičnici /run/snapd.socket snapd privilegiranom API-ju i stjecanju administratorskih privilegija (prethodne ranjivosti koriste API-je v2 / create-user i / v2 / snaps).

Na koje inačice utječe i postoji li rješenje već?

Problem se očituje u snapd verzijama od 2.28 do 2.37 i utječe na sve podržane Ubuntu grane (od 14.04. do 18.10.) kao i u distribucijama izvedenim iz bilo koje od spomenutih verzija.

problem također utječe na distribuciju Fedore i Debiana, u kojem se snapd nudi iz redovnih spremišta.

Ranjivost je ispravljena u izdanju snapd 2.37.1, kao i ažuriranja paketa za Ubuntu i Debian distribucije.


Budite prvi koji će komentirati

Ostavite svoj komentar

Vaša email adresa neće biti objavljen. Obavezna polja su označena s *

*

*

  1. Za podatke odgovoran: Miguel Ángel Gatón
  2. Svrha podataka: Kontrola neželjene pošte, upravljanje komentarima.
  3. Legitimacija: Vaš pristanak
  4. Komunikacija podataka: Podaci se neće dostavljati trećim stranama, osim po zakonskoj obvezi.
  5. Pohrana podataka: Baza podataka koju hostira Occentus Networks (EU)
  6. Prava: U bilo kojem trenutku možete ograničiti, oporaviti i izbrisati svoje podatke.