Дар коммуналй
Агар 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" дар қоида, осебпазирӣ вуҷуд дорад.
myhost ALL = (ALL, !root) NOPASSWD: /usr/bin/id
Масъала дар нашр ҳал карда шуд
Манбаъ: opennet.ru