Pribilegioak handitzea ahalbidetzen duen Linux nukleoaren iSCSI azpisisteman ahultasuna

Linux nukleoaren iSCSI azpisistemaren kodean ahultasun bat (CVE-2021-27365) identifikatu da, pribilegiorik gabeko tokiko erabiltzaile bati kernel mailan kodea exekutatu eta sisteman root pribilegioak lor ditzan. Explotazioaren prototipo funtzionala probatzeko eskuragarri dago. Ahultasuna 5.11.4, 5.10.21, 5.4.103, 4.19.179, 4.14.224, 4.9.260 eta 4.4.260 kernelaren eguneraketetan konpondu zen. Kernel paketeen eguneraketak Debian, Ubuntu, SUSE/openSUSE, Arch Linux eta Fedora banaketetan daude eskuragarri. RHEL konponketak oraindik ez dira kaleratu.

Arazoa libiscsi moduluko iscsi_host_get_param() funtzioaren errore batek sortu du, 2006an iSCSI azpisistemaren garapenean sartutakoa. Tamaina egokien egiaztapenik ez dagoenez, iSCSI kate-atributu batzuek, ostalari-izena edo erabiltzaile-izena adibidez, PAGE_SIZE (4 KB) balioa gaindi dezakete. ISCSI atributuak PAGE_SIZE baino balio handiagoak ezartzen dituzten Netlink mezuak bidaltzen dituen pribilegiorik gabeko erabiltzaile batek ustiatu dezake ahultasuna. Atributu hauek sysfs edo seqfs bidez irakurtzen direnean, atributuak sprintf funtzioari pasatzen dizkion kodea deitzen zaio, PAGE_SIZE duen buffer batera kopiatzeko.

Banaketan ahultasunaren ustiapena scsi_transport_iscsi kernel modulua automatikoki kargatzeko laguntzaren araberakoa da NETLINK_ISCSI socket bat sortzen saiatzean. Modulu hau automatikoki kargatzen den banaketetan, eraso bat egin daiteke iSCSI funtzionalitatea edozein dela ere. Aldi berean, ustiapena arrakastaz aplikatzeko, gutxienez iSCSI garraio bat erregistratu behar da. Era berean, ib_iser kernel modulua erabil dezakezu, pribilegiorik gabeko erabiltzaile bat NETLINK_RDMA socket bat sortzen saiatzen denean automatikoki kargatzen dena garraioa erregistratzeko.

Explotazioa aplikatzeko beharrezkoak diren moduluen karga automatikoa CentOS 8, RHEL 8 eta Fedora-n onartzen da rdma-core paketea sisteman instalatzen denean, hau da, pakete ezagun batzuen menpekotasuna eta lan-estazioen konfigurazioetan lehenespenez instalatuta dagoenean. GUI eta ostalari inguruneen birtualizazioa duten zerbitzari-sistemak. Aldi berean, rdma-core ez da instalatzen kontsola moduan soilik funtzionatzen duen zerbitzariaren eraikuntza bat erabiltzen denean eta gutxieneko instalazio-irudi bat instalatzen denean. Adibidez, paketea Fedora 31 Workstation-en oinarrizko banaketan sartzen da, baina ez dago Fedora 31 Server-en. Debian eta Ubuntu gutxiago kaltetuta daude, rdma-core paketeak eraso baterako beharrezkoak diren nukleoaren moduluak bakarrik kargatzen baititu RDMA hardwarea badago.

Pribilegioak handitzea ahalbidetzen duen Linux nukleoaren iSCSI azpisisteman ahultasuna

Segurtasun konponbide gisa, libiscsi moduluaren karga automatikoa desgaitu dezakezu: echo "install libiscsi /bin/true" >> /etc/modprobe.d/disable-libiscsi.conf

Gainera, iSCSI azpisisteman arrisku gutxiagoko beste bi ahultasun konpondu dira, nukleotik datu-ihesak eragin ditzaketenak: CVE-2021-27363 (iSCSI garraio-deskribatzaileari buruzko informazioa sysfs bidez isurtzea) eta CVE-2021-27364 (tik irakurtzen duena). mugaz kanpoko buffer eremu bat). Ahultasun hauek netlink socket baten bidez komunikatzeko erabil daitezke iSCSI azpisistemarekin beharrezko pribilegiorik gabe. Adibidez, pribilegiorik gabeko erabiltzaile batek iSCSIra konektatu eta "saio bat amaitzeko" komandoa bidali dezake saioa amaitzeko.

Iturria: opennet.ru

Gehitu iruzkin berria