Linux-ytimen AF_PACKET-sockettoteutuksen haavoittuvuus

Kolme vuotta haavoittuvuuksien aallon jälkeen (1, 2, 3, 4, 5) Linux-ytimen AF_PACKET-alijärjestelmässä tunnistettu vielä yksi ongelma (CVE-2020-14386), jolloin paikallinen etuoikeutettu käyttäjä voi suorittaa koodia pääkäyttäjänä tai poistua eristetyistä säilöistä, jos heillä on pääkäyttäjän oikeudet.

AF_PACKET-socketin luominen ja haavoittuvuuden hyödyntäminen vaatii CAP_NET_RAW-oikeudet. Etuoikeutettu käyttäjä voi kuitenkin saada määritetyn luvan säilöissä, jotka on luotu järjestelmissä, joissa käyttäjän nimiavaruudet ovat käytössä. Esimerkiksi käyttäjän nimiavaruudet ovat oletuksena käytössä Ubuntussa ja Fedorassa, mutta eivät käytössä Debianissa ja RHEL:ssä. Androidissa mediapalvelinprosessilla on oikeus luoda AF_PACKET-pistokkeita, joiden kautta haavoittuvuutta voidaan hyödyntää.

Haavoittuvuus on tpacket_rcv-funktiossa, ja se johtuu virheestä netoff-muuttujan laskennassa. Hyökkääjä voi luoda olosuhteita, joissa netoff-muuttuja kirjoitetaan pienempään arvoon kuin maclen-muuttuja, mikä aiheuttaa ylivuodon laskettaessa "macoff = netoff - maclen" ja sen jälkeen asettamalla osoittimen virheellisesti saapuvan tiedon puskuriin. Tämän seurauksena hyökkääjä voi aloittaa 1–10 tavun kirjoittamisen varatun puskurin rajan ulkopuolella olevalle alueelle. On huomattava, että kehitteillä on hyväksikäyttö, jonka avulla voit hankkia pääkäyttäjän oikeudet järjestelmään.

Ongelma on ollut ytimessä heinäkuusta 2008 lähtien, ts. ilmenee kaikissa todellisissa ytimissä. Korjaus on tällä hetkellä saatavilla nimellä laastari. Voit seurata pakettien päivitysten saatavuutta jakeluissa seuraavilta sivuilta: Ubuntu, Fedora, SUSE, Debian, RHEL, Kaari.

Lähde: opennet.ru

Lisää kommentti