Sårbarhed i iSCSI-undersystemet i Linux-kernen, der tillader privilegieeskalering

En sårbarhed (CVE-2021-27365) er blevet identificeret i iSCSI-undersystemkoden for Linux-kernen, som tillader en uprivilegeret lokal bruger at eksekvere kode på kerneniveau og opnå root-rettigheder i systemet. En fungerende prototype af udnyttelsen er tilgængelig til test. Sårbarheden blev rettet i Linux-kerneopdateringer 5.11.4, 5.10.21, 5.4.103, 4.19.179, 4.14.224, 4.9.260 og 4.4.260. Kernelpakkeopdateringer er tilgængelige på Debian, Ubuntu, SUSE/openSUSE, Arch Linux og Fedora distributioner. Der er endnu ikke udgivet nogen rettelser til RHEL.

Problemet er forårsaget af en fejl i iscsi_host_get_param()-funktionen fra libiscsi-modulet, som blev introduceret tilbage i 2006 under udviklingen af ​​iSCSI-undersystemet. På grund af manglende kontrol af korrekt størrelse kan nogle iSCSI-strengattributter, såsom værtsnavn eller brugernavn, overskride PAGE_SIZE-værdien (4 KB). Sårbarheden kan udnyttes af en uprivilegeret bruger, der sender Netlink-meddelelser, der sætter iSCSI-attributter til værdier, der er større end PAGE_SIZE. Når disse attributter læses gennem sysfs eller seqfs, kaldes der kode, der sender attributterne til sprintf-funktionen for at blive kopieret ind i en buffer, hvis størrelse er PAGE_SIZE.

Udnyttelse af sårbarheden i distributioner afhænger af understøttelse af automatisk indlæsning af scsi_transport_iscsi-kernemodulet, når du forsøger at oprette en NETLINK_ISCSI-socket. I distributioner, hvor dette modul indlæses automatisk, kan angrebet udføres uanset brugen af ​​iSCSI-funktionalitet. Samtidig kræves der yderligere registrering af mindst én iSCSI-transport for at kunne bruge udnyttelsen. Til gengæld kan du for at registrere en transport bruge ib_iser-kernemodulet, som indlæses automatisk, når en uprivilegeret bruger forsøger at oprette en NETLINK_RDMA-socket.

Automatisk indlæsning af moduler, der er nødvendige for udnyttelsesapplikationen, understøttes i CentOS 8, RHEL 8 og Fedora ved installation af rdma-core-pakken på systemet, hvilket er en afhængighed for nogle populære pakker og som standard installeres i konfigurationer til arbejdsstationer, serversystemer med Virtualisering af GUI og værtsmiljøer. rdma-core er dog ikke installeret, når der bruges en serversamling, der kun fungerer i konsoltilstand, og når der installeres et minimalt installationsbillede. For eksempel er pakken inkluderet i basisdistributionen af ​​Fedora 31 Workstation, men er ikke inkluderet i Fedora 31 Server. Debian og Ubuntu er mindre modtagelige for problemet, fordi rdma-core-pakken kun indlæser de kernemoduler, der er nødvendige for angrebet, hvis RDMA-hardware er til stede.

Sårbarhed i iSCSI-undersystemet i Linux-kernen, der tillader privilegieeskalering

Som en sikkerhedsløsning kan du deaktivere automatisk indlæsning af libiscsi-modulet: echo “install libiscsi /bin/true” >> /etc/modprobe.d/disable-libiscsi.conf

Derudover er to mindre farlige sårbarheder, der kan føre til datalækage fra kernen, blevet rettet i iSCSI-undersystemet: CVE-2021-27363 (iSCSI-transportbeskrivelsesinformationslækage via sysfs) og CVE-2021-27364 (out-of-bounds buffer) læse). Disse sårbarheder kan bruges til at kommunikere via en netlink-socket med iSCSI-undersystemet uden de nødvendige privilegier. For eksempel kan en uprivilegeret bruger oprette forbindelse til iSCSI og udstede kommandoen "afslut en session" for at afslutte sessionen.

Kilde: opennet.ru

Tilføj en kommentar