En la kerna modulo LinuxVundebleco (CVE-2022-0435) estis identigita en la retprotokolo TIPC (Travidebla Interprocesa Komunikado), kiu eble permesas kodplenumon je kerna nivelo per sendado de speciale kreita retpakaĵo. La problemo nur influas sistemojn kun ŝarĝita la kerna modulo tipc.ko kaj konfigurita TIPC-stako, kiu estas tipe uzata en aretoj kaj ne estas ebligita defaŭlte en nespecialigitaj distribuaĵoj. Linux.
Oni rimarkas, ke dum konstruado de la kerno en la "CONFIG_FORTIFY_SRC=y" reĝimo (uzata en RHEL), kiu aldonas kromajn limkontrolojn al la memcpy() funkcio, operacio estas limigita al krizhalto (la kerno panikiĝas). Se efektivigite sen aldonaj kontroloj kaj se informoj pri la kanariaj etikedoj uzataj por protekti la stakon estas likitaj, la problemo povas esti ekspluatata por fora koda ekzekuto kun kernaj rajtoj. La esploristoj, kiuj identigis la problemon, asertas, ke la ekspluata tekniko estas bagatela kaj estos malkaŝita post la disvastigita elimino de la vundebleco en distribuoj.
La vundebleco estas kaŭzita de staktrofluo, kiu okazas dum prilaborado de pakaĵoj, la valoro de la kampo kun la nombro de partoprenantaj nodoj domajno, kiuj superas 64. La modulo tipc.ko uzas fiksan tabelon "u32 members[64]" por konservi nodparametrojn, sed ne kontrolas la valoron de "member_cnt" dum prilaborado de la nodnumero specifita en la pakaĵo, kio permesas uzi valorojn pli grandajn ol 64 por kontrolita anstataŭskribo de datumoj en la memorareo post la strukturo "dom_bef" sur la stako.
La vundebleco estis enkondukita la 15-an de junio 2016 kaj estis inkludita en la kerno. Linux 4.8. La vundebleco estis riparita en kernaj eldonoj. Linux 5.16.9, 5.15.23, 5.10.100, 5.4.179, 4.19.229, 4.14.266 kaj 4.9.301. La problemo restas nesolvita en la kernoj de plej multaj distribuaĵoj: RHEL, Debian, Ubuntu, SUSE, Fedora, Gentoo, Arch Linux.
La TIPC-protokolo estis origine evoluigita fare de Ericsson, dizajnita por organizi inter-procezan komunikadon en areto kaj estas aktivigita plejparte sur aretnodoj. TIPC povas funkcii per Eterreto aŭ UDP (reta haveno 6118). Kiam vi laboras super Ethernet, la atako povas esti farita de la loka reto, kaj kiam vi uzas UDP, de la tutmonda reto se la haveno ne estas kovrita de fajroŝirmilo. La atako ankaŭ povas esti farita de senprivilegia loka uzanto de la gastiganto. Por aktivigi TIPC, vi devas elŝuti la tipc.ko-kernan modulon kaj agordi la ligon al la reto-interfaco per netlink aŭ la tipc-ilaĵo.
fonto: opennet.ru
