suid бағдарламаларының жады мазмұнын анықтауға мүмкіндік беретін systemd-coredump осалдығы

Systemd-coredump құрамдас бөлігінде осалдық (CVE-2022-4415) анықталды, ол процесс бұзылғаннан кейін жасалған негізгі файлдарды өңдейді, бұл артықшылығы жоқ жергілікті пайдаланушыға suid түбірлік жалаушасымен жұмыс істейтін артықшылықты процестердің жады мазмұнын анықтауға мүмкіндік береді. Әдепкі конфигурация мәселесі openSUSE, Arch, Debian, Fedora және SLES дистрибутивтерінде расталды.

Осалдық systemd-coredump ішіндегі fs.suid_dumpable sysctl параметрінің дұрыс өңделмеуінен туындайды, ол әдепкі 2 мәніне орнатылған кезде suid жалаушасы бар процестер үшін негізгі демптерді жасауға мүмкіндік береді. Ядро арқылы жазылған suid процестерінің негізгі файлдарында тек түбірлік пайдаланушы оқуға рұқсат ету үшін орнатылған кіру құқықтары болуы керек екені түсініледі. Негізгі файлдарды сақтау үшін ядро ​​арқылы шақырылатын systemd-coredump утилитасы негізгі файлды түбірлік идентификатордың астында сақтайды, бірақ қосымша процесті бастапқыда іске қосқан иесінің идентификаторы негізінде негізгі файлдарға ACL негізіндегі оқу рұқсатын береді. .

Бұл мүмкіндік бағдарламаның пайдаланушы идентификаторын өзгерте алатындығына және жоғары артықшылықтармен жұмыс істей алатындығына қарамастан негізгі файлдарды жүктеп алуға мүмкіндік береді. Шабуыл пайдаланушының suid қолданбасын іске қосып, оған SIGSEGV сигналын жібере алатындығына, содан кейін қалыптан тыс тоқтату кезінде процестің жад бөлігін қамтитын негізгі файлдың мазмұнын жүктей алатынына дейін жетеді.

Мысалы, пайдаланушы «/usr/bin/su» іске қосып, басқа терминалда оның орындалуын «kill -s SIGSEGV `pidof su`» пәрменімен аяқтай алады, содан кейін systemd-coredump негізгі файлды /var ішінде сақтайды. /lib/systemd/ coredump каталогы, ол үшін ағымдағы пайдаланушы оқуына мүмкіндік беретін ACL орнату. Suid қызметтік бағдарламасы 'su' /etc/shadow мазмұнын жадқа оқитындықтан, шабуылдаушы жүйедегі барлық пайдаланушылардың құпия сөз хэштері туралы ақпаратқа қол жеткізе алады. Sudo утилитасы шабуылға бейім емес, себебі ол негізгі файлдарды ulimit арқылы жасауға тыйым салады.

Systemd әзірлеушілерінің айтуынша, осалдық жүйелік шығарылым 247 (2020 ж. қараша) бастап пайда болады, бірақ мәселені анықтаған зерттеушінің айтуынша, 246 шығарылымы да әсер етеді. осалдық systemd libacl кітапханасымен құрастырылған болса пайда болады (әдепкі бойынша барлық танымал дистрибутивтер). Түзету қазір патч ретінде қол жетімді. Түзетуді келесі беттердегі дистрибутивтерден бақылай аласыз: Debian, Ubuntu, Gentoo, RHEL, SUSE, Fedora, Gentoo, Arch. Қауіпсіздікті шешу ретінде sysctl fs.suid_dumpable параметрін 0 мәніне орнатуға болады, ол systemd-coredump өңдегішіне дамптарды жіберуді өшіреді.

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

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