Lietderībā
Ja sudoers ir derīgi, bet praksē ārkārtīgi reti noteikumi, kas ļauj izpildīt noteiktu komandu ar jebkura lietotāja UID, kas nav root, uzbrucējs, kuram ir tiesības izpildīt šo komandu, var apiet ierobežojumu un izpildīt komandu ar root. tiesības. Lai apietu ierobežojumu, vienkārši mēģiniet izpildīt iestatījumos norādīto komandu ar UID “-1” vai “4294967295”, kas novedīs pie tās izpildes ar UID 0.
Piemēram, ja iestatījumos ir noteikums, kas jebkuram lietotājam dod tiesības izpildīt programmu /usr/bin/id ar jebkuru UID:
myhost ALL = (ALL, !root) /usr/bin/id
vai opcija, kas ļauj izpildīt tikai konkrētam lietotājam Bobam:
myhost bob = (ALL, !root) /usr/bin/id
Lietotājs var izpildīt “sudo -u '#-1' id”, un utilīta /usr/bin/id tiks palaista kā root, neskatoties uz tiešu aizliegumu iestatījumos. Problēmu rada speciālo vērtību “-1” vai “4294967295” neievērošana, kas neizraisa izmaiņas UID, bet tā kā pati sudo jau darbojas kā root, tad, nemainot UID, tiek palaista arī mērķa komanda. ar saknes tiesībām.
SUSE un openSUSE izplatījumos, nenorādot noteikumā “NOPASSWD”, pastāv ievainojamība.
myhost ALL = (ALL, !root) NOPASSWD: /usr/bin/id
Problēma ir novērsta laidienā
Avots: opennet.ru