Aptiko Linux branduolio TIPC diegimo pažeidžiamumą

Neseniai žinia tai atskleidė saugumo tyrinėtojas nustatė kritinį pažeidžiamumą (jau įtraukta į CVE-2021-43267) diegiant TIPC tinklo protokolą pateikiamas Linux branduolyje, kuris leidžia nuotoliniu būdu vykdyti kodą su branduolio privilegijomis, siunčiant specialiai sukurtą tinklo paketą.

Problemos pavojų sumažina tai, kad atakai reikia aiškiai įjungti TIPC palaikymą sistemoje (įkeliant ir sukonfigūruojant tipc.ko branduolio modulį), o tai nėra daroma pagal nutylėjimą ne Linux platinimuose. specializuota.

CodeQL yra analizės variklis, leidžiantis vykdyti kodo užklausas. Saugumo požiūriu tai gali leisti rasti pažeidžiamumą tiesiog aprašant jų išvaizdą. Tada CodeQL pradės veikti ir suras visus to pažeidžiamumo atvejus.

TIPC palaikomas nuo Linux 3.19 branduolio, tačiau pažeidžiamumą vedantis kodas buvo įtrauktas į 5.10 branduolį.. TIPC protokolą iš pradžių sukūrė Ericsson, jis skirtas organizuoti tarpprocesinį ryšį klasteryje ir daugiausia aktyvuojamas klasterio mazguose.

TIPC gali veikti tiek per Ethernet, tiek per UDP (tinklo prievadas 6118). Jei dirbate per Ethernet, ataka gali būti vykdoma iš vietinio tinklo, o kai naudojamas UDP, iš pasaulinio tinklo, jei prievado neuždengia ugniasienė. Ataką taip pat gali įvykdyti vietinis vartotojas, neturintis pagrindinio kompiuterio privilegijų. Norėdami įjungti TIPC, turite įkelti tipc.ko branduolio modulį ir sukonfigūruoti nuorodą į tinklo sąsają naudodami netlink arba tipc įrankį.

Protokolas įdiegtas branduolio modulyje, susietame su visais pagrindiniais Linux platinimais. Kai įkelia vartotojas, jis gali būti naudojamas kaip jungtis ir gali būti sukonfigūruotas sąsajoje naudojant netlink (arba naudojant vartotojo erdvės įrankį tipc, kuris atliks šiuos tinklo nuorodų skambučius) kaip neprivilegijuotas vartotojas.

TIPC galima sukonfigūruoti taip, kad jis veiktų per nešiklio protokolą, pvz., Ethernet arba UDP (pastaruoju atveju branduolys klausosi 6118 prievado įeinančių pranešimų iš bet kurio įrenginio). Kadangi žemų privilegijų vartotojas negali sukurti neapdorotų eterneto kadrų, nustačius nešiklį į UDP, lengva parašyti vietinį išnaudojimą.

Pažeidžiamumas pasireiškia tipc_crypto_key_rc funkcijoje ir atsiranda dėl netinkamo patvirtinimo atitikimo tarp to, kas nurodyta antraštėje, ir tikrojo duomenų dydžio analizuojant paketus su MSG_CRYPTO tipu, naudojamu gauti šifravimo raktus iš kitų klasterio mazgų, kad vėliau būtų iššifruoti iš šių mazgų siunčiami pranešimai.

Į atmintį nukopijuotų duomenų dydis apskaičiuojamas kaip skirtumas tarp laukų reikšmių su pranešimo dydžiu ir antraštės dydžiu, tačiau neatsižvelgiant į tikrąjį perduodamo šifravimo algoritmo pavadinimo dydį. pranešime ir rakto turinyje.

Laikoma, kad algoritmo pavadinimo dydis yra fiksuotas, be to, raktui perduodamas atskiras atributas su dydžiu, o užpuolikas gali nurodyti šio atributo reikšmę, kuri skiriasi nuo tikrosios reikšmės, todėl bus rašoma į pranešimo eilė iš paskirto buferio.

Pažeidžiamumas ištaisytas 5.15.0, 5.10.77 ir 5.14.16 branduoliuose, nors problema atsiranda ir dar nebuvo ištaisyta Debian 11, Ubuntu 21.04 / 21.10, SUSE (SLE15-SP4 šakoje dar neišleista), RHEL (dar nedetalizuota, jei pažeidžiamas sprendimas buvo atnaujintas) ir Fedora.

Nors branduolio naujinimas jau buvo išleistas Arch Linux ir platinimams, kurių branduoliai yra senesni nei 5.10, pvz., Debian 10 ir Ubuntu 20.04, neturi įtakos.

Pagaliau jei norite sužinoti daugiau apie tai, galite patikrinti išsamią informaciją Šioje nuorodoje.


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