Netfilter-alijärjestelmän haavoittuvuus, joka mahdollistaa koodin suorittamisen Linux-ytimen tasolla

Netfilter, Linux-ytimen alijärjestelmä, jota käytetään verkkopakettien suodattamiseen ja muokkaamiseen, sisältää haavoittuvuuden (CVE-2022-25636), joka sallii koodin suorittamisen ydintasolla. On ilmoitettu, että on valmisteltu esimerkki hyväksikäytöstä, jonka avulla paikallinen käyttäjä voi nostaa oikeuksiaan Ubuntu 21.10:ssä KASLR-suojausmekanismin ollessa pois käytöstä. Ongelma ilmenee ytimestä 5.4 alkaen. Korjaus on edelleen saatavilla korjaustiedostona (korjaavia ytimen julkaisuja ei ole luotu). Voit seurata pakettipäivitysten julkaisuja jakeluissa näillä sivuilla: Debian, SUSE, Ubuntu, RHEL, Fedora, Gentoo, Arch Linux.

Haavoittuvuus johtuu virheestä laskettaessa flow->rule->action.entries-taulukon kokoa nft_fwd_dup_netdev_offload-funktiossa (määritetty tiedostossa net/netfilter/nf_dup_netdev.c), mikä voi johtaa hyökkääjien ohjaamiin tietoihin. kirjoitettu muistialueelle varatun puskurin rajan ulkopuolella. Virhe ilmenee määritettäessä "dup"- ja "fwd"-sääntöjä ketjuissa, joissa käytetään pakettien käsittelyn laitteistokiihdytystä (offload). Koska ylivuoto tapahtuu ennen pakettisuodatussäännön luomista ja purkutuen tarkistamista, haavoittuvuus koskee myös verkkolaitteita, jotka eivät tue laitteistokiihdytystä, kuten takaisinkytkentärajapinta.

On huomattava, että ongelmaa on melko helppo hyödyntää, koska puskurin yli menevät arvot voivat ylikirjoittaa osoittimen net_device-rakenteeseen, ja ylikirjoitetun arvon tiedot palautetaan käyttäjätilaan, jonka avulla voit selvittää osoitteet hyökkäyksen suorittamiseen tarvittava muisti. Haavoittuvuuden hyödyntäminen edellyttää tiettyjen sääntöjen luomista nftablesiin, mikä on mahdollista vain CAP_NET_ADMIN-oikeuksilla, jotka oikeudeton käyttäjä voi hankkia erillisessä verkon nimiavaruudessa. Haavoittuvuutta voidaan käyttää myös konttien eristysjärjestelmiin hyökkäämiseen.

Lähde: opennet.ru

Lisää kommentti