Ranjivost u IPv6 stogu Linux kernela koja omogućava daljinsko izvršavanje koda

Objavljene su informacije o ranjivosti CVE-2023-6200) u mrežnom stogu Linux kernela, koja, pod određenim okolnostima, omogućava napadaču iz lokalne mreže da postigne izvršenje svog koda slanjem posebno dizajniranog ICMPv6 paketa sa RA (oglašavanje rutera) poruka namijenjena reklamiranju informacija o ruteru.

Ranjivost se može iskoristiti samo sa lokalne mreže i pojavljuje se na sistemima sa omogućenom podrškom za IPv6 i aktivnim sysctl parametrom “net.ipv6.conf.<ime_interface_mreža>.accept_ra” (može se provjeriti naredbom “sysctl net.ipv6.conf | grep accept_ra”) , koji je podrazumevano onemogućen u RHEL-u i Ubuntu-u za spoljne mrežne interfejse, ali je omogućen za interfejs povratne petlje, koji dozvoljava napad sa istog sistema.

Ranjivost je uzrokovana stanjem utrke kada sakupljač smeća obrađuje zastarjele fib6_info zapise, što može dovesti do pristupa već oslobođenom memorijskom području (use-after-free). Prilikom primanja ICMPv6 paketa s porukom oglašavanja rutera (RA, Router Advertisement), mrežni stog poziva funkciju ndisc_router_discovery(), koja, ako RA poruka sadrži informacije o životnom vijeku rute, poziva funkciju fib6_set_expires() i ispunjava gc_link struktura. Za čišćenje zastarjelih unosa koristite funkciju fib6_clean_expires() koja odvaja unos u gc_link i briše memoriju koju koristi struktura fib6_info. U ovom slučaju postoji određeni trenutak kada je memorija za strukturu fib6_info već oslobođena, ali veza do nje i dalje je u gc_link strukturi.

Ranjivost se pojavila počevši od grane 6.6 i ispravljena je u verzijama 6.6.9 i 6.7. Status popravljanja ranjivosti u distribucijama može se procijeniti na ovim stranicama: Debian, Ubuntu, SUSE, RHEL, Fedora, Arch Linux, Gentoo, Slackware. Među distribucijama koje isporučuju pakete sa jezgrom 6.6 možemo izdvojiti Arch Linux, Gentoo, Fedora, Slackware, OpenMandriva i Manjaro; u drugim distribucijama je moguće da se promjena s greškom backportuje u pakete sa starijim granama kernela (npr. na primjer, u Debianu se spominje da je paket s kernelom 6.5.13 ranjiv, dok se problematična promjena pojavila u grani 6.6). Kao sigurnosno rješenje, možete onemogućiti IPv6 ili postaviti parametre “net.ipv0.conf.*.accept_ra” na 6.

izvor: opennet.ru

Dodajte komentar