USB-vidinas on kerneli alamsĂŒsteem LinuxUSB Gadget API-s, mis pakub tarkvaraliidest kliendi-USB-seadmete loomiseks ja USB-seadmete simuleerimiseks, on tuvastatud haavatavus (CVE-2021-39685). See haavatavus vĂ”ib pĂ”hjustada kerneli teabe lekke, krahhi vĂ”i suvalise koodi kĂ€ivitamise kerneli tasandil. RĂŒnnaku viib lĂ€bi privilegeerimata kohalik kasutaja, manipuleerides USB Gadget API abil rakendatud erinevate seadmeklassidega, nĂ€iteks rndis, hid, uac1, uac1_legacy ja uac2.
Probleem on hiljuti avaldatud kerneli vĂ€rskendustes parandatud. Linux 5.15.8, 5.10.85, 5.4.165, 4.19.221, 4.14.258, 4.9.293 ja 4.4.295. Probleem on distributsioonides lahendamata (Debian, Ubuntu, RHEL, SUSE, Fedora, Arch). Haavatavuse demonstreerimiseks on ette valmistatud prototĂŒĂŒbi Ă€rakasutamise tööriist.
Probleemi pĂ”hjustab andmeedastustaotluste töötlejate puhvri ĂŒletĂ€itumine vidina draiverites rndis, hid, uac1, uac1_legacy ja uac2. Haavatavuse Ă€rakasutamise tulemusena saab privilegeerimata rĂŒndaja juurdepÀÀsu kerneli mĂ€lule, saates spetsiaalse kontrollipĂ€ringu wLength vĂ€lja vÀÀrtusega, mis ĂŒletab staatilise puhvri suurust ja mille jaoks eraldatakse alati 4096 baiti (USB_COMP_EP0_BUFSIZ). RĂŒnnaku ajal vĂ”ib kasutajaruumis olev privilegeerimata protsess lugeda vĂ”i kirjutada kerneli mĂ€llu kuni 65 KB andmeid.
Allikas: opennet.ru
