Cenueshmëri në nën-sistemin iSCSI të kernelit Linux që lejon rritjen e privilegjeve

Në kodin e nën-sistemit iSCSI të kernelit Linux është zbuluar një cenueshmëri (CVE-2021-27365) që i lejon një përdoruesi lokal pa privilegje të ekzekutojë kod në nivelin e kernelit dhe të marrë privilegje root në sistem. Për testim është i disponueshëm një prototip funksional i exploit-it. Cenueshmëria është korrigjuar në përditësimet e kernelit Linux 5.11.4, 5.10.21, 5.4.103, 4.19.179, 4.14.224, 4.9.260 dhe 4.4.260. Përditësimet e paketave të kernelit janë të disponueshme në shpërndarjet Debian, Ubuntu, SUSE/openSUSE, Arch Linux dhe Fedora. Për RHEL, korrigjimet ende nuk janë publikuar.

Problemi shkaktohet nga njĂ« gabim nĂ« funksionin iscsi_host_get_param() tĂ« modulit libiscsi, i futur qĂ« nĂ« vitin 2006 gjatĂ« zhvillimit tĂ« nĂ«n-sistemit iSCSI. PĂ«r shkak tĂ« mungesĂ«s sĂ« kontrolleve tĂ« duhura tĂ« madhĂ«sisĂ«, disa atribute tekstuale tĂ« iSCSI, si hostname ose username, mund tĂ« tejkalojnĂ« vlerĂ«n PAGE_SIZE (4 KB). CenueshmĂ«ria mund tĂ« shfrytĂ«zohet pĂ«rmes dĂ«rgimit nga njĂ« pĂ«rdorues pa privilegje tĂ« mesazheve Netlink qĂ« vendosin atributet iSCSI nĂ« vlera mĂ« tĂ« mĂ«dha se PAGE_SIZE. GjatĂ« leximit tĂ« kĂ«tyre atributeve pĂ«rmes sysfs ose seqfs, thirret kodi qĂ« i kalon atributet te funksioni sprintf pĂ«r t’i kopjuar nĂ« njĂ« buffer, madhĂ«sia e tĂ« cilit Ă«shtĂ« e barabartĂ« me PAGE_SIZE.

Shfrytëzimi i cenueshmërisë në shpërndarje varet nga mbështetja për ngarkimin automatik të modulit të kernelit scsi_transport_iscsi gjatë përpjekjes për të krijuar një socket NETLINK_ISCSI. Në shpërndarjet ku ky modul ngarkohet automatikisht, sulmi mund të kryhet pavarësisht nëse funksionaliteti i iSCSI përdoret apo jo. Megjithatë, për zbatimin e suksesshëm të exploit-it kërkohet gjithashtu regjistrimi i të paktën një transporti iSCSI. Nga ana tjetër, për regjistrimin e transportit mund të përdoret moduli i kernelit ib_iser, i cili ngarkohet automatikisht kur një përdorues pa privilegje përpiqet të krijojë një socket NETLINK_RDMA.

Ngarkimi automatik i moduleve të nevojshme për shfrytëzimin e exploit-it mbështetet në CentOS 8, RHEL 8 dhe Fedora kur në sistem është i instaluar paketa rdma-core, e cila është varësi për disa paketa të njohura dhe instalohet si parazgjedhje në konfigurimet për stacione pune, sisteme serverike me GUI dhe mjedise virtualizimi për host. Ndërkohë, rdma-core nuk instalohet kur përdoret ndërtimi serverik që punon vetëm në modalitet konsolë, si edhe gjatë instalimit nga imazhi minimal. Për shembull, paketa përfshihet në shpërndarjen bazë të Fedora 31 Workstation, por nuk përfshihet në Fedora 31 Server. Debian dhe Ubuntu janë më pak të prekshme nga ky problem, sepse paketa rdma-core ngarkon modulet e kernelit të nevojshme për sulmin vetëm nëse është i pranishëm pajisja RDMA.

Cenueshmëri në nën-sistemin iSCSI të kernelit Linux që lejon rritjen e privilegjeve

Si zgjidhje e përkohshme mbrojtëse, mund të ndalohet ngarkimi automatik i modulit libiscsi: echo «install libiscsi /bin/true» >> /etc/modprobe.d/disable-libiscsi.conf

Përveç kësaj, në nënsistemin iSCSI janë korrigjuar edhe dy dobësi të tjera më pak të rrezikshme, të cilat mund të çojnë në rrjedhje të të dhënave nga kerneli: CVE-2021-27363 (rrjedhje informacioni për deskriptorin e transportit iSCSI përmes sysfs) dhe CVE-2021-27364 (lexim nga një zonë jashtë kufijve të buffer-it). Këto dobësi mund të shfrytëzohen për ndërveprim me nënsistemin iSCSI përmes socket-it netlink pa pasur privilegjet e nevojshme. Për shembull, një përdorues pa privilegje mund të lidhet me iSCSI dhe të dërgojë komandën «end a session» për të ndërprerë sesionin.

Burimi: opennet.ru

Blini hosting tĂ« besueshĂ«m pĂ«r faqe interneti me mbrojtje nga DDoS, serverĂ« VPS VDS đŸ”„ Blini hosting tĂ« besueshĂ«m pĂ«r faqe interneti me mbrojtje nga DDoS, serverĂ« VPS VDS | ProHoster