Артықшылықты арттыруға мүмкіндік беретін Linux ядросының iSCSI ішкі жүйесіндегі осалдық

Linux ядросының iSCSI ішкі жүйе кодында осалдық (CVE-2021-27365) анықталды, ол артықшылығы жоқ жергілікті пайдаланушыға ядро ​​деңгейінде кодты орындауға және жүйеде түбірлік артықшылықтарды алуға мүмкіндік береді. Эксплойттың жұмыс прототипі тестілеу үшін қолжетімді. Осалдық Linux ядросының 5.11.4, 5.10.21, 5.4.103, 4.19.179, 4.14.224, 4.9.260 және 4.4.260 жаңартуларында түзетілді. Ядро пакетінің жаңартулары Debian, Ubuntu, SUSE/openSUSE, Arch Linux және Fedora дистрибутивтерінде қол жетімді. RHEL түзетулері әлі шығарылған жоқ.

Мәселе 2006 жылы iSCSI ішкі жүйесін әзірлеу кезінде енгізілген libiscsi модулінен iscsi_host_get_param() функциясындағы қатеден туындады. Тиісті өлшемді тексерулердің болмауына байланысты хост аты немесе пайдаланушы аты сияқты кейбір iSCSI жол төлсипаттары PAGE_SIZE (4 КБ) мәнінен асып кетуі мүмкін. iSCSI төлсипаттарын PAGE_SIZE мәнінен үлкен мәндерге орнататын Netlink хабарламаларын жіберетін артықшылығы жоқ пайдаланушы осалдықты пайдалануы мүмкін. Бұл атрибуттар sysfs немесе seqfs арқылы оқылғанда, өлшемі PAGE_SIZE болатын буферге көшірілетін sprintf функциясына төлсипаттарды беретін код шақырылады.

Таратулардағы осалдықты пайдалану NETLINK_ISCSI ұяшығын жасау әрекеті кезінде scsi_transport_iscsi ядро ​​модулін автоматты түрде жүктеуді қолдауға байланысты. Бұл модуль автоматты түрде жүктелетін дистрибутивтерде iSCSI функциясының пайдаланылуына қарамастан шабуыл жасалуы мүмкін. Бұл ретте эксплуатацияны сәтті қолдану үшін кемінде бір iSCSI транспортын тіркеу қосымша қажет. Өз кезегінде, тасымалдауды тіркеу үшін артықшылығы жоқ пайдаланушы NETLINK_RDMA ұясын жасауға әрекеттенген кезде автоматты түрде жүктелетін ib_iser ядро ​​модулін пайдалануға болады.

Эксплуатацияны қолдану үшін қажетті модульдерді автоматты түрде жүктеуге CentOS 8, RHEL 8 және Fedora жүйелерінде rdma-core бумасы жүйеде орнатылған кезде қолдау көрсетіледі, бұл кейбір танымал бумаларға тәуелділік болып табылады және әдепкі бойынша жұмыс станциялары конфигурацияларында орнатылады, GUI және хост орталарының виртуализациясы бар серверлік жүйелер. Бұл ретте rdma-core тек консоль режимінде жұмыс істейтін сервер құрылымын пайдаланғанда және ең аз орнату кескінін орнатқанда орнатылмайды. Мысалы, бума Fedora 31 жұмыс станциясының негізгі таратуына кіреді, бірақ Fedora 31 серверіне қосылмаған. Debian және Ubuntu азырақ әсер етеді, өйткені RDMA жабдығы бар болса, rdma-core пакеті шабуылға қажетті ядро ​​модульдерін ғана жүктейді.

Артықшылықты арттыруға мүмкіндік беретін Linux ядросының iSCSI ішкі жүйесіндегі осалдық

Қауіпсіздікті шешу үшін libiscsi модулінің автоматты жүктелуін өшіруге болады: echo "libiscsi /bin/true орнату" >> /etc/modprobe.d/disable-libiscsi.conf

Сонымен қатар, iSCSI ішкі жүйесінде ядродан деректердің ағып кетуіне әкелуі мүмкін тағы екі қауіптілігі төмен осалдықтар түзетілді: CVE-2021-27363 (sysfs арқылы iSCSI көлік дескрипторы туралы ақпараттың ағуы) және CVE-2021-27364 (оқу шектен тыс буферлік аймақ). Бұл осалдықтарды қажетті артықшылықтарсыз iSCSI ішкі жүйесімен netlink ұясы арқылы байланысу үшін пайдалануға болады. Мысалы, артықшылығы жоқ пайдаланушы iSCSI жүйесіне қосылып, сеансты тоқтату үшін «сеансты аяқтау» пәрменін жібере алады.

Ақпарат көзі: opennet.ru

пікір қалдыру