Spet ... so našli še eno ranljivost v podsistemu eBPF

Pred kratkim je to razkrila novica ugotovila novo ranljivost (že naveden pod CVE-2021-4204) v podsistemu eBPF (za spremembo) ...

In to je, da podsistem eBPF ni prenehal predstavljati velik varnostni problem za jedro, saj sta se v vsem letu 2021 zlahka razkrili dve ranljivosti na mesec in o nekaterih od njih govorimo tukaj na blogu.

Glede podrobnosti trenutnega problema je omenjeno, da zaznana ranljivost omogoča, da se gonilnik izvaja znotraj jedra Linuxa v posebnem navideznem stroju JIT in da to lokalnemu neprivilegiranemu uporabniku omogoča, da dobi stopnjevanje privilegijev in izvede svojo kodo na ravni jedra.

V opisu problema to omenjajo ranljivost je posledica nepravilnega skeniranja programov eBPF, poslanih za izvedbo, saj podsistem eBPF zagotavlja pomožne funkcije, katerih pravilnost preverja poseben preveritelj.

Ta ranljivost omogoča lokalnim napadalcem, da povečajo privilegije
vplivalo na namestitve jedra Linuxa. Napadalec mora najprej pridobiti
zmožnost izvajanja kode z nizkimi privilegiji v ciljnem sistemu
izkoristiti to ranljivost.

Posebna napaka obstaja pri ravnanju s programi eBPF. Vprašanje posledica pomanjkanja ustreznega preverjanja veljavnosti programov eBPF, ki jih zagotovijo uporabniki preden jih zaženete. 

Poleg tega, nekatere funkcije zahtevajo, da se vrednost PTR_TO_MEM posreduje kot argument in preveritelj mora poznati velikost pomnilnika, povezanega z argumentom, da se izogne ​​morebitnim težavam s prelivanjem medpomnilnika.

Medtem ko za funkcije bpf_ringbuf_submit in bpf_ringbuf_discard, podatki o velikosti prenesenega pomnilnika se ne sporočajo preveritelju (tu se začne težava), ki jo napadalec izkoristi za prepisovanje pomnilniških območij zunaj meje medpomnilnika pri izvajanju posebej izdelane kode eBPF.

Napadalec lahko to ranljivost izkoristi za stopnjevanje privilegijev in izvajanje kode v kontekstu jedra. UPOŠTEVAJTE, da je neprivilegirani bpf v večini distribucij privzeto onemogočen.

Omenjeno je, da lahko uporabnik izvede napad, uporabnik mora imeti možnost naložiti svoj program BPF in številne novejše distribucije Linuxa ga blokirajo privzeto (vključno z neprivilegiranim dostopom do eBPF je zdaj privzeto prepovedan v samem jedru od različice 5.16).

Na primer, omenjeno je, da je ranljivost je mogoče izkoristiti v privzeti konfiguraciji v distribucija, ki je še vedno precej rabljena in predvsem zelo priljubljena, kot je Ubuntu 20.04 LTS, toda v okoljih, kot so Ubuntu 22.04-dev, Debian 11, openSUSE 15.3, RHEL 8.5, SUSE 15-SP4 in Fedora 33, se manifestira samo, če je skrbnik nastavil parameter kernel.unprivileged_bpf_disabled na 0.

Trenutno je kot rešitev za blokiranje ranljivosti omenjeno, da je neprivilegiranim uporabnikom mogoče preprečiti izvajanje programov BPF z zagonom ukaza v terminalu:

sysctl -w kernel.unprivileged_bpf_disabled=1

Na koncu je treba omeniti še to težava se je pojavila od jedra Linuxa 5.8 in ostaja nepopravljena (vključno z različico 5.16) in zato koda za izkoriščanje bo odložena 7 dni In bo objavljen ob 12:00 UTC, torej 18. januarja 2022.

S tem Namen je zagotoviti dovolj časa, da so na voljo korektivni popravki uporabnikov različnih distribucij Linuxa v uradnih kanalih vsake od teh in tako razvijalci kot uporabniki lahko odpravijo navedeno ranljivost.

Za tiste, ki jih zanima, da bi lahko izvedeli o stanju oblikovanja posodobitev z odpravo težave v nekaterih glavnih distribucijah, bi morali vedeti, da jih je mogoče izslediti s teh strani:  DebianRHELSUSEFedoraUbuntuArch.

Če ste zanima več o tem glede opombe si lahko ogledate izvirno izjavo V naslednji povezavi.


Pustite svoj komentar

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

*

*

  1. Odgovoren za podatke: AB Internet Networks 2008 SL
  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.