Zraniteľnosť v subsystéme netfilter, ktorá umožňuje spustenie kódu na úrovni jadra Linuxu

Netfilter, subsystém linuxového jadra, ktorý sa používa na filtrovanie a úpravu sieťových paketov, má zraniteľnosť (CVE-2022-25636), ktorá umožňuje spúšťanie kódu na úrovni jadra. Oznamujeme, že bol pripravený príklad exploitu, ktorý umožňuje miestnemu používateľovi zvýšiť svoje privilégiá v Ubuntu 21.10 s vypnutým ochranným mechanizmom KASLR. Problém sa objavuje od jadra 5.4. Oprava je stále k dispozícii ako oprava (opravné vydania jadra neboli vygenerované). Publikácie aktualizácií balíkov v distribúciách môžete sledovať na týchto stránkach: Debian, SUSE, Ubuntu, RHEL, Fedora, Gentoo, Arch Linux.

Zraniteľnosť je spôsobená chybou pri výpočte veľkosti poľa flow->rule->action.entries vo funkcii nft_fwd_dup_netdev_offload (definovanej v súbore net/netfilter/nf_dup_netdev.c), čo môže viesť k tomu, že údaje kontrolované útočníkom budú zapísané do pamäťovej oblasti za hranicou pridelenej vyrovnávacej pamäte. Chyba sa objaví pri konfigurácii pravidiel „dup“ a „fwd“ v reťazcoch, pre ktoré sa používa hardvérová akcelerácia spracovania paketov (offload). Keďže k pretečeniu dochádza pred vytvorením pravidla filtrovania paketov a skontrolovaním podpory znižovania záťaže, zraniteľnosť sa týka aj sieťových zariadení, ktoré nepodporujú hardvérovú akceleráciu, ako napríklad rozhranie spätnej slučky.

Je potrebné poznamenať, že problém je pomerne jednoduché zneužiť, pretože hodnoty, ktoré presahujú vyrovnávaciu pamäť, môžu prepísať ukazovateľ na štruktúru net_device a údaje o prepísanej hodnote sa vrátia do používateľského priestoru, čo vám umožní zistiť adresy. v pamäti potrebnej na vykonanie útoku. Využitie zraniteľnosti vyžaduje vytvorenie určitých pravidiel v nftables, čo je možné len s privilégiami CAP_NET_ADMIN, ktoré môže získať neprivilegovaný používateľ v samostatnom mennom priestore siete. Zraniteľnosť môže byť tiež použitá na útok na kontajnerové izolačné systémy.

Zdroj: opennet.ru

Pridať komentár