Linuxi kerneli iSCSI alamsüsteemi haavatavus, mis võimaldab teil oma õigusi suurendada

Linuxi kerneli iSCSI alamsüsteemi koodis on tuvastatud haavatavus (CVE-2021-27365), mis võimaldab privilegeerimata kohalikul kasutajal käivitada koodi kerneli tasemel ja saada süsteemis juurõigusi. Testimiseks on saadaval kasutusel töötav prototüüp. Haavatavus kõrvaldati Linuxi kerneli värskendustes 5.11.4, 5.10.21, 5.4.103, 4.19.179, 4.14.224, 4.9.260 ja 4.4.260. Kernelipaketi värskendused on saadaval Debiani, Ubuntu, SUSE/openSUSE, Arch Linuxi ja Fedora distributsioonides. RHELi jaoks pole veel parandusi välja antud.

Probleemi põhjustab libiscsi mooduli funktsiooni iscsi_host_get_param() tõrge, mis võeti kasutusele 2006. aastal iSCSI alamsüsteemi arendamise käigus. Õige suuruse kontrollimise puudumise tõttu võivad mõned iSCSI stringiatribuudid, nagu hostinimi või kasutajanimi, ületada PAGE_SIZE väärtust (4 KB). Seda haavatavust saab ära kasutada privilegeeritud kasutaja, kes saadab Netlinki sõnumeid, mis seavad iSCSI atribuutidele PAGE_SIZE-st suuremad väärtused. Kui neid atribuute loetakse läbi sysfs või seqfs, kutsutakse välja kood, mis edastab atribuudid funktsioonile sprintf, et need kopeerida puhvrisse, mille suurus on PAGE_SIZE.

Haavatavuse ärakasutamine distributsioonides sõltub scsi_transport_iscsi kerneli mooduli automaatse laadimise toest NETLINK_ISCSI sokli loomise katsel. Distributsioonides, kus see moodul laaditakse automaatselt, saab rünnaku läbi viia sõltumata iSCSI funktsiooni kasutamisest. Samas on eksploiti edukaks kasutamiseks vaja lisaks registreerida vähemalt üks iSCSI transport. Transpordi registreerimiseks saab omakorda kasutada kerneli moodulit ib_iser, mis laaditakse automaatselt, kui privilegeerimata kasutaja proovib luua NETLINK_RDMA sokli.

Kasutamiseks vajalike moodulite automaatset laadimist toetavad CentOS 8, RHEL 8 ja Fedora süsteemi rdma-core paketi installimisel, mis on mõne populaarse paketi sõltuvus ja installitakse vaikimisi tööjaamade, serverisüsteemide konfiguratsioonides. GUI ja hostikeskkondade virtualiseerimine. Kuid rdma-core ei installita serverikoostu kasutamisel, mis töötab ainult konsoolirežiimis ja minimaalse installipildi installimisel. Näiteks sisaldub pakett Fedora 31 Workstationi baasjaotuses, kuid ei sisaldu Fedora 31 Serveris. Debian ja Ubuntu on probleemile vähem vastuvõtlikud, kuna rdma-core pakett laadib rünnakuks vajalikud kerneli moodulid ainult siis, kui RDMA riistvara on olemas.

Linuxi kerneli iSCSI alamsüsteemi haavatavus, mis võimaldab teil oma õigusi suurendada

Turvalahendusena saate keelata libiscsi mooduli automaatse laadimise: echo "install libiscsi /bin/true" >> /etc/modprobe.d/disable-libiscsi.conf

Lisaks on iSCSI alamsüsteemis parandatud kaks vähem ohtlikku turvaauku, mis võivad põhjustada andmete lekkimist tuumast: CVE-2021-27363 (iSCSI transpordi deskriptori teabe leke sysfs-i kaudu) ja CVE-2021-27364 (piirideväline puhver) loe) . Neid haavatavusi saab kasutada iSCSI alamsüsteemiga suhtlemiseks netlinki pesa kaudu ilma vajalike õigusteta. Näiteks võib privilegeerimata kasutaja luua ühenduse iSCSI-ga ja anda seansi lõpetamiseks käsu "lõpeta seanss".

Allikas: opennet.ru

Lisa kommentaar