Арнайы ережелерді пайдалану кезінде артықшылықты арттыруға мүмкіндік беретін sudo-дағы осалдық

Утилитада Sudo, басқа пайдаланушылар атынан командалардың орындалуын ұйымдастыру үшін пайдаланылады, анықталды осалдық (CVE-2019-14287), егер sudoers параметрлерінде ережелер болса, пайдаланушы идентификаторын тексеру бөлімінде рұқсат беретін кілт сөзден кейін «ALL» түбірлік құқықтарымен іске қосуға нақты тыйым салынған («... (ALL, !root) ..." ). Осалдық дистрибуциялардағы әдепкі конфигурацияларда пайда болмайды.

Егер sudoers жарамды, бірақ іс жүзінде өте сирек кездесетін, тамырдан басқа кез келген пайдаланушының UID идентификаторы бойынша белгілі бір пәрменді орындауға мүмкіндік беретін ережелерге ие болса, осы пәрменді орындауға құқығы бар шабуылдаушы белгіленген шектеуді айналып өтіп, пәрменді орындай алады. түбірлік құқықтар. Шектеуді айналып өту үшін параметрлерде көрсетілген пәрменді UID «-1» немесе «4294967295» арқылы орындауға тырысыңыз, бұл оның UID 0 арқылы орындалуына әкеледі.

Мысалы, параметрлерде кез келген пайдаланушыға /usr/bin/id бағдарламасын кез келген UID астында орындауға құқық беретін ереже болса:

myhost ALL = (ALL, !root) /usr/bin/id

немесе белгілі бір пайдаланушы bob үшін ғана орындауға мүмкіндік беретін опция:

myhost bob = (БАРЛЫҚ, !root) /usr/bin/id

Пайдаланушы «sudo -u '#-1' идентификаторын» орындай алады және /usr/bin/id утилитасы параметрлердегі нақты тыйымға қарамастан, түбірлік ретінде іске қосылады. Мәселе «-1» немесе «4294967295» арнайы мәндерін елемеуден туындайды, олар UID өзгертуіне әкелмейді, бірақ sudo өзі UID өзгертпей түбір ретінде жұмыс істеп тұрғандықтан, мақсатты пәрмен де түбірлік құқықтармен іске қосылды.

SUSE және openSUSE дистрибутивтерінде ережеде «NOPASSWD» көрсетілмей, осалдық бар. пайдалану мүмкін емес, өйткені sudoers жүйесінде әдепкі бойынша UID кодын парольдер дерекқорымен тексеретін және мақсатты пайдаланушының құпия сөзін енгізуді сұрайтын «Әдепкі targetpw» режимі қосылады. Мұндай жүйелер үшін шабуыл форма ережелері болған жағдайда ғана жүзеге асырылуы мүмкін:

myhost ALL = (БАРЛЫҒЫ, !root) NOPASSWD: /usr/bin/id

Мәселе шығарылымда түзетілді Sudo 1.8.28. Түзету пішінде де қол жетімді патч. Тарату жинақтарында осалдық әлдеқашан түзетілген Debian, Arch Linux, SUSE/openSUSE, Ubuntu, Gentoo и FreeBSD. Жазу кезінде мәселе шешілмеген күйінде қалады RHEL и Fedora. Бұл осалдықты Apple компаниясының қауіпсіздік зерттеушілері анықтады.

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

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