Կոմունալում
Եթե sudoers-ն ունի վավեր, բայց գործնականում չափազանց հազվադեպ կանոններ, որոնք թույլ են տալիս կատարել որոշակի հրաման ցանկացած այլ օգտվողի UID-ի ներքո, բացի root-ից, հարձակվողը, ով իրավասու է կատարել այս հրամանը, կարող է շրջանցել սահմանված սահմանափակումը և կատարել հրամանը արմատային իրավունքները: Սահմանափակումը շրջանցելու համար պարզապես փորձեք «-1» կամ «4294967295» UID-ով կատարել կարգավորումներում նշված հրամանը, ինչը կհանգեցնի դրա կատարմանը 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
Խնդիրը լուծվել է թողարկման մեջ
Source: opennet.ru