Vzdialená zraniteľnosť v jadre Linuxu, ktorá sa prejavuje pri používaní protokolu TIPC.

V jadre Linux, ktoré zabezpečuje fungovanie sieťového protokolu TIPC (Transparent Inter-process Communication), bola zistená zraniteľnosť (CVE-2022-0435), ktorá potenciálne umožňuje vykonanie vlastného kódu na úrovni jadra prostredníctvom odoslania špeciálne tvarovaného sieťového paketu. Problém sa týka len systémov s načítaným jadrovým modulom tipc.ko a nastaveným zásobníkom TIPC, ktorý sa obvykle používa v klastri a predvolene nie je aktivovaný v nespecializovaných distribúciách Linuxu.

Upozorňuje sa, že pri zostavovaní jadra v režime „CONFIG_FORTIFY_SRC=y“ (používané v RHEL), ktoré pridáva ďalšie kontroly hraníc do funkcie memcpy(), je zneužitie obmedzené na havarijné zastavenie činnosti (jadro prechádza do stavu paniky). Pri vykonávaní bez dodatočných kontrol a pri úniku informácií o kanárkových značkách používaných na ochranu zásobníka, môže byť problém použitý na vzdialené vykonanie kódu s právami jadra. Výskumníci, ktorí problém objavili, tvrdia, že technika zneužitia je triviálna a bude zverejnená po celkovom odstránení zraniteľnosti v distribúciách.

Zraniteľnosť je spôsobená pretečením zásobníka, k ktorému dochádza pri spracovaní paketov, pričom hodnota poľa s počtom uzlov účastníkov domény, v ktorých presahuje 64. Na uloženie parametrov uzlov v module tipc.ko sa používa pevne dané pole „u32 members[64]“, ale počas spracovania uvedeného čísla uzla v pakete sa nevykonáva kontrola hodnoty „member_cnt“, čo umožňuje použiť hodnoty väčšie ako 64 na riadené prepísanie údajov v pamäti, nasledujúcej v zásobníku po štruktúre „dom_bef“.

Zraniteľnosť spôsobujúca chybu bola zavedená 15. júna 2016 a stala sa súčasťou jadra Linux 4.8. Zraniteľnosť bola odstránená vo vydaniach jadra Linux 5.16.9, 5.15.23, 5.10.100, 5.4.179, 4.19.229, 4.14.266 a 4.9.301. V jadrách väčšiny distribúcií problém zatiaľ zostáva neopravovaný: RHEL, Debian, Ubuntu, SUSE, Fedora, Gentoo, Arch Linux.

Protokol TIPC bol pôvodne vyvinutý spoločnosťou Ericsson a je určený na organizáciu medziprocesovej komunikácie v klastri, pričom sa aktivuje hlavne na uzloch klastrov. TIPC môže fungovať ako nad Ethernet, tak aj nad UDP (sieťový port 6118). V prípade fungovania nad Ethernet môže byť útok vykonaný z lokálnej siete, a pri použití UDP — z globálnej siete, ak port nie je chránený firewallom. Útok môže byť tiež vykonaný nepoužívateľom bez privilégií lokálneho hostiteľa. Na aktiváciu TIPC je potrebné nahratie modulu jadra tipc.ko a nastavenie viazania na sieťové rozhranie pomocou netlink alebo nástroja tipc.

Zdroj: opennet.ru

Kúpte si spoľahlivý hosting pre webové stránky s ochranou proti DDoS, VPS VDS servery 🔥 Kúpte si spoľahlivý hosting pre webové stránky s ochranou proti DDoS, VPS VDS servery | ProHoster