Sårbarhet i iSCSI-undersystemet i Linux-kärnan som gör att du kan eskalera dina privilegier

En sårbarhet (CVE-2021-27365) har identifierats i iSCSI-delsystemkoden för Linuxkärnan, vilket gör att en oprivilegierad lokal användare kan exekvera kod på kärnnivån och få root-behörigheter i systemet. En fungerande prototyp av exploateringen är tillgänglig för testning. Sårbarheten åtgärdades i Linux-kärnuppdateringarna 5.11.4, 5.10.21, 5.4.103, 4.19.179, 4.14.224, 4.9.260 och 4.4.260. Kärnpaketuppdateringar är tillgängliga på Debian, Ubuntu, SUSE/openSUSE, Arch Linux och Fedora-distributioner. Inga korrigeringar har släppts för RHEL ännu.

Problemet orsakas av ett fel i iscsi_host_get_param()-funktionen från libiscsi-modulen, som introducerades redan 2006 under utvecklingen av iSCSI-delsystemet. På grund av bristen på korrekt storlekskontroll kan vissa iSCSI-strängattribut, som värdnamn eller användarnamn, överskrida PAGE_SIZE-värdet (4 KB). Sårbarheten kan utnyttjas av en oprivilegierad användare som skickar Netlink-meddelanden som ställer in iSCSI-attribut till värden högre än PAGE_SIZE. När dessa attribut läses genom sysfs eller seqfs anropas kod som skickar attributen till sprintf-funktionen för att kopieras till en buffert vars storlek är PAGE_SIZE.

Utnyttjande av sårbarheten i distributioner beror på stöd för automatisk laddning av scsi_transport_iscsi-kärnmodulen vid försök att skapa en NETLINK_ISCSI-socket. I distributioner där denna modul laddas automatiskt kan attacken utföras oavsett användning av iSCSI-funktionalitet. Samtidigt, för att framgångsrikt använda utnyttjandet, krävs dessutom registrering av minst en iSCSI-transport. I sin tur, för att registrera en transport, kan du använda ib_iser-kärnmodulen, som laddas automatiskt när en oprivilegierad användare försöker skapa en NETLINK_RDMA-socket.

Automatisk laddning av moduler som krävs för exploateringsapplikationer stöds i CentOS 8, RHEL 8 och Fedora vid installation av rdma-core-paketet på systemet, vilket är ett beroende för vissa populära paket och som är installerat som standard i konfigurationer för arbetsstationer, serversystem med GUI och värdmiljövirtualisering. Däremot installeras inte rdma-core när du använder en serversammansättning som bara fungerar i konsolläge och när du installerar en minimal installationsavbildning. Till exempel är paketet inkluderat i basdistributionen av Fedora 31 Workstation, men ingår inte i Fedora 31 Server. Debian och Ubuntu är mindre mottagliga för problemet eftersom rdma-core-paketet laddar kärnmodulerna som behövs för attacken endast om RDMA-hårdvara finns.

Sårbarhet i iSCSI-undersystemet i Linux-kärnan som gör att du kan eskalera dina privilegier

Som en säkerhetslösning kan du inaktivera automatisk laddning av libiscsi-modulen: echo “install libiscsi /bin/true” >> /etc/modprobe.d/disable-libiscsi.conf

Dessutom har två mindre farliga sårbarheter som kan leda till dataläckage från kärnan fixats i iSCSI-delsystemet: CVE-2021-27363 (iSCSI-transportdeskriptorinformationsläckage via sysfs) och CVE-2021-27364 (out-of-bounds buffert) läsa). Dessa sårbarheter kan användas för att kommunicera via en netlink-socket med iSCSI-delsystemet utan de nödvändiga privilegierna. Till exempel kan en oprivilegierad användare ansluta till iSCSI och utfärda kommandot "avsluta en session" för att avsluta sessionen.

Källa: opennet.ru

Lägg en kommentar