CAN BCM tinklo protokolo pažeidžiamumas leido išplėsti privilegijas „Linux“ branduolyje 

Vakar buvo paskelbta informacija apie „Linux“ branduolio pažeidžiamumą ir kuris jau yra kataloge kaip CVE-2021-3609. Šis pažeidžiamumas leidžia vietiniam vartotojui pakelti savo privilegijas sistemoje dėl rasės sąlygos įgyvendinant CAN BCM protokolą ir pasireiškė „Linux“ branduolio 2.6.25–5.13-rc6 versijose.

Nutarimas pasinaudoja nes CAN BCM protokolas leidžia užregistruoti savo pranešimų tvarkytuvę valdiklio vietinio tinklo (CAN) ir prijunkite jį prie konkretaus tinklo lizdo. Kai gaunamas pranešimas, iškviečiama funkcija bcm_rx_handler () užpuolikas gali pasinaudoti lenktynių pranašumais ir priversti uždaryti tinklo lizdą vykdant bcm_rx_handler ().

Problema kyla uždarius lizdą ir funkcija vadinama bcm_release (), kuriame atlaisvinama struktūroms skirta atmintis bcm_op ir bcm_sock, kurie ir toliau naudojami prižiūrėtojui bcm_rx_handler () kuri vis dar veikia, taigi susidaro situacija, dėl kurios galima pasiekti jau atlaisvintą atminties bloką (naudoti po nemokamo).

Tai neseniai paskelbtos klaidos (CVE-2021-3609) pranešimas „CAN BCM“ tinklo protokole „Linux“ branduolyje, pradedant nuo 2.6.25 versijos iki pagrindinės linijos 5.13-rc6.
Pažeidžiamumas yra „net / can / bcm.c“ lenktynių sąlyga, leidžianti išplėsti privilegijų eskalavimą. Iš pradžių apie problemą pranešė syzbotas, o Norbertas Slusarekas pasirodė esąs išnaudojamas.

Ataka atveria du CAN BCM lizdus ir susieja juos su vcan sąsaja. Pirmojoje jungtyje jūs skambinate sendmsg () su indikatoriumi RX_SETUP Norėdami sukonfigūruoti valdiklį gaunamiems CAN pranešimams ir ant antrosios jungties, skambinate sendmsg () išsiųsti pranešimą į pirmąją jungtį.

Gavęs pranešimą, suaktyvinamas „bcm_rx_handler ()“ iškvietimas, o užpuolikas užima reikiamą akimirką ir uždaro pirmąjį lizdą, kuris veda į paleidimą bcm_release () ir konstrukcijų paleidimas bcm_op ir bcm_sock, nors ir bcm_rx_handler () ji dar nebaigta.

Manipuliuodamas „bcm_sock“ turiniu, užpuolikas gali nepaisyti žymeklio į funkciją „sk-> sk_data_ready (sk)“, peradresuoti vykdymą ir, naudodamas grįžtamojo programavimo (ROP) metodus, nepaisys parametro „modprobe_path“ ir privers jo kodą paleisti kaip šaknį .

Naudodamas ROP techniką, užpuolikas nebando įdėti savo kodo atminimui, bet jis veikia gabalėliai mašinos instrukcijos jau yra įkeltose bibliotekose, baigiant kontroliniu grįžimo sakiniu (paprastai tai yra bibliotekos funkcijų pabaiga).

Atakai vykdyti reikalingus leidimus neprivilegijuotas vartotojas gali įsigyti konteineriuose, sukurtuose sistemose su įgalintomis vartotojo vardų sritimis. Pvz., Vartotojo vardų sritis pagal numatytuosius nustatymus įtraukiamos į „Ubuntu“ ir „Fedora“, bet neįjungiamos „Debian“ ir RHEL.

Mano bandymas išnaudoti daugiausia dėmesio skiriamas branduoliams, kurių versija> = 5.4-rc1 iš įsipareigojimo bf74aa86e111. Aš netyriau branduolių, senesnių nei 5.4-rc1, naudojimo naudojant užduotis, tačiau atrodo, kad įmanoma naudoti ir senesnius branduolius. 

Minima, kad tyrinėtojas, nustatęs pažeidžiamumą, galėjo paruošti išnaudojimą įgyti šaknines teises sistemose su branduoliais iš 5.4 ir naujesnės versijos, įskaitant galimybę sėkmingai atakuoti „Ubuntu 20.04.02 LTS“.

Išnaudojimo darbas sutelkiamas į skambučių grandinės sukūrimą į panašius blokus („programėles“), kad būtų galima gauti reikiamą funkcionalumą. Atakai reikalinga prieiga norint sukurti CAN lizdus ir sukonfigūruotą vcan tinklo sąsają.

Pagaliau minima, kad problema vis dar išlieka daugumoje platinimų, tačiau dienų klausimas, kada bus išleisti atitinkami pleistrai.

Jei norite sužinoti apie tai daugiau, galite pasikonsultuoti šią nuorodą.


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ą.