Осебпазирӣ дар sudo, ки имкон медиҳад, ки имтиёз ҳангоми истифодаи қоидаҳои мушаххас афзоиш ёбад

Дар коммуналй Судо, барои ташкили иҷрои фармонҳо аз номи корбарони дигар истифода мешавад, муайян карда шуд осебпазирӣ (CVE-2019-14287), ки ба шумо имкон медиҳад, ки фармонҳоро бо ҳуқуқи реша иҷро кунед, агар дар танзимоти sudoers қоидаҳо мавҷуд бошанд, ки дар қисмати санҷиши ID корбар пас аз калимаи иҷозатдодашудаи “ALL” манъи возеҳ кор бо ҳуқуқи реша мавҷуд аст (“... (ALL, !root) ..."). осебпазирӣ дар конфигуратсияҳои пешфарз дар тақсимот пайдо намешавад.

Агар sudoers қоидаҳои эътиборнок дошта бошанд, аммо дар амал хеле камёбанд, ки иҷрои фармони муайянро таҳти UID-и ягон корбари ғайр аз root иҷозат медиҳанд, ҳамлакунанда, ки салоҳияти иҷрои ин фармонро дорад, метавонад маҳдудияти муқарраршударо гузарад ва фармонро бо ҳуқуқҳои реша. Барои гузаштан аз маҳдудият, танҳо кӯшиш кунед, ки фармони дар танзимот нишондодашударо бо UID "-1" ё "4294967295" иҷро кунед, ки боиси иҷрои он бо UID 0 мегардад.

Масалан, агар дар танзимот қоидае мавҷуд бошад, ки ба ҳар як корбар ҳуқуқи иҷрои барномаи /usr/bin/id-ро дар ҳама гуна UID медиҳад:

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

ё хосияте, ки иҷрои танҳо барои bob корбари мушаххасро иҷозат медиҳад:

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

Истифодабаранда метавонад "sudo -u '#-1' id" -ро иҷро кунад ва утилитаи /usr/bin/id сарфи назар аз мамнӯъияти возеҳ дар танзимот ҳамчун реша оғоз мешавад. Мушкилот аз нодида гирифтани арзишҳои махсуси "-1" ё "4294967295" ба вуҷуд омадааст, ки ба тағирёбии UID оварда намерасонанд, аммо азбаски худи sudo аллакай ҳамчун реша кор мекунад, бидуни тағир додани UID, фармони ҳадаф низ бо ҳуқуқҳои реша оғоз ёфт.

Дар тақсимоти SUSE ва openSUSE, бе нишон додани "NOPASSWD" дар қоида, осебпазирӣ вуҷуд дорад. истисморшаванда нест, зеро дар sudoers режими "Defaults targetpw" ба таври нобаёнӣ фаъол аст, ки UID-ро бо махзани парол тафтиш мекунад ва аз шумо хоҳиш мекунад, ки пароли корбари мавриди ҳадафро ворид кунед. Барои чунин системаҳо ҳамла танҳо дар сурати мавҷуд будани қоидаҳои шакл анҷом дода мешавад:

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

Масъала дар нашр ҳал карда шуд Sudo 1.8.28. Ислоҳ инчунин дар шакл дастрас аст ямоқи. Дар маҷмӯаҳои тақсимот, осебпазирӣ аллакай ислоҳ карда шудааст Debian, Коғази Linux, SUSE/openSUSE, Ubuntu, Gentoo и FreeBSD. Дар замони навиштан, мушкилот дар он ҳалношуда боқӣ мемонад RHEL и Федора. Ин осебпазириро муҳаққиқони амниятии Apple муайян кардаанд.

Манбаъ: opennet.ru

Илова Эзоҳ