V Snap-u sta bili odkriti dve ranljivosti in dovoljeno je zagnati kodo kot root

Qualys razkril novice, ki jih prepoznam dve ranljivosti (CVE-2021-44731 in CVE-2021-44730) v pripomočku snap-confine, poslano s korensko zastavico SUID in ki ga pokliče proces snapd, da ustvari izvedljivo okolje za aplikacije, distribuirane v paketih snap.

V blog objavi je omenjeno ranljivosti omogočajo neprivilegiranemu lokalnemu uporabniku, da doseže izvajanje kode kot root v sistemu.

Prva ranljivost omogoča napad fizične manipulacije povezave, vendar zahteva onemogočitev zaščite sistemskih trdih povezav (z nastavitev sysctl fs.protected_hardlinks na 0).

Problem je posledica napačnega preverjanja lokacije izvedljivih datotek pripomočkov snap-update-ns in snap-discard-ns ki tečejo kot root. Pot do teh datotek je bila izračunana v funkciji sc_open_snapd_tool() na podlagi lastne poti iz /proc/self/exe, kar vam omogoča, da ustvarite trdo povezavo, da se omejite na vaš imenik, in svoje možnosti postavite na snap-update-ns in snap -discard-ns v tem imeniku. Ko se zažene s trde povezave, bo snap-confine kot root izvedel datoteke snap-update-ns in snap-discard-ns, ki jih je zamenjal napadalec, iz trenutnega imenika.

Uspešno izkoriščanje te ranljivosti omogoča vsakemu neprivilegiranemu uporabniku, da pridobi root privilegije na ranljivem gostitelju. Varnostni raziskovalci Qualysa so lahko neodvisno preverili ranljivost, razvili izkoriščanje in pridobili polne pravice root za privzete namestitve Ubuntuja.

Takoj, ko je raziskovalna skupina Qualys potrdila ranljivost, smo se lotili odgovornega razkritja ranljivosti in se uskladili s prodajalci in odprtokodnimi distribucijami, da bi objavili to novo odkrito ranljivost.

Drugo ranljivost povzroča stanje dirke in ga je mogoče izkoristiti v privzeti konfiguraciji namizja Ubuntu. Da bi izkoriščanje uspešno deloval na strežniku Ubuntu, morate med namestitvijo izbrati enega od paketov v razdelku »Predstavljeni posnetki strežnika«.

dirkalno stanje manifestira v funkciji setup_private_mount(). pokliče med pripravo imenskega prostora točke priklopa za trenutni paket. Ta funkcija ustvari začasni imenik "/tmp/snap.$SNAP_NAME/tmp" ali uporabi obstoječega za povezavo in priklop imenikov za paket snap nanj.

Ker je ime začasnega imenika predvidljivo, lahko napadalec spremeni njegovo vsebino v simbolno povezavo, potem ko preveri lastnika, vendar preden pokliče sistem za pritrditev. Na primer, lahko ustvarite simbolno povezavo "/tmp/snap.lxd/tmp" v imeniku /tmp/snap.lxd, ki kaže na poljuben imenik, klic mount() pa bo sledil simbolni povezavi in ​​namestil imenik v prostor imen.

Podobno lahko vstavite njegovo vsebino v /var/lib in preglasite /var/lib/snapd/mount/snap.snap-store.user-fstab, uredite namestitev svojega imenika /etc v snap imenskega prostora paketa, da naložite svojo knjižnico iz korenskega dostopa z zamenjavo /etc/ld.so.preload.

Opaziti je, da Izkazalo se je, da ustvarjanje izkoriščanja ni trivialna naloga, ker je pripomoček snap-confine napisan z uporabo tehnik varnega programiranja (snapd je napisan v Go, C pa se uporablja za snap-confine), ima zaščito, ki temelji na profilih AppArmor, filtrira sistemske klice na podlagi mehanizma seccomp in uporablja imenski prostor mount za izolacijo.

Vendar so raziskovalci uspeli pripraviti funkcionalni izkoriščanje za pridobitev korenskega dostopa v sistemu. Koda za izkoriščanje bo izdana nekaj tednov po tem, ko bodo uporabniki namestili priložene posodobitve.

Za konec velja omeniti še toTežave so bile odpravljene v posodobitvi paketa snapd za različice Ubuntu 21.10, 20.04 in 18.04.

Poleg ostalih distribucij, ki uporabljajo Snap, je izšel Snapd 2.54.3, ki poleg zgoraj navedenih težav odpravlja še eno ranljivost (CVE-2021-4120), ki omogoča pri nameščanju posebej oblikovanih paketov vtičnikov, preglasite poljubna pravila AppArmor in obidete omejitve dostopa, določene za paket.

Če ste zanima več o tem, lahko preverite podrobnosti V naslednji povezavi.


Pustite svoj komentar

Vaš e-naslov ne bo objavljen. Obvezna polja so označena z *

*

*

  1. Za podatke odgovoren: Miguel Ángel Gatón
  2. Namen podatkov: Nadzor neželene pošte, upravljanje komentarjev.
  3. Legitimacija: Vaše soglasje
  4. Sporočanje podatkov: Podatki se ne bodo posredovali tretjim osebam, razen po zakonski obveznosti.
  5. Shranjevanje podatkov: Zbirka podatkov, ki jo gosti Occentus Networks (EU)
  6. Pravice: Kadar koli lahko omejite, obnovite in izbrišete svoje podatke.