Yardımcı programda
Sudoers'ın, root dışındaki herhangi bir kullanıcının UID'si altında belirli bir komutun yürütülmesine izin veren geçerli ancak pratikte son derece nadir kuralları varsa, bu komutu yürütme yetkisine sahip bir saldırgan, kısıtlamayı atlayabilir ve komutu root ile çalıştırabilir. Haklar. Sınırlamayı atlamak için, ayarlarda belirtilen UID “-1” veya “4294967295” ile belirtilen komutu yürütmeyi deneyin; bu, UID 0 ile yürütülmesine yol açacaktır.
Örneğin, ayarlarda herhangi bir kullanıcıya herhangi bir UID altında /usr/bin/id programını çalıştırma hakkı veren bir kural varsa:
myhost ALL = (TÜMÜ, !root) /usr/bin/id
veya yalnızca belirli bir kullanıcı bob'unun çalıştırılmasına izin veren bir seçenek:
myhost bob = (TÜMÜ, !root) /usr/bin/id
Kullanıcı “sudo -u '#-1' id” komutunu çalıştırabilir ve ayarlardaki açık yasağa rağmen /usr/bin/id yardımcı programı root olarak başlatılacaktır. Sorun, UID'de bir değişikliğe yol açmayan "-1" veya "4294967295" özel değerlerinin gözden kaçırılmasından kaynaklanmaktadır, ancak sudo'nun kendisi zaten UID'yi değiştirmeden root olarak çalıştığından, hedef komut da kök haklarıyla başlatıldı.
SUSE ve openSUSE dağıtımlarında kuralda “NOPASSWD” belirtilmeden güvenlik açığı bulunmaktadır
myhost ALL = (TÜMÜ, !root) NOPASSWD: /usr/bin/id
Sürümde düzeltilen sorun
Kaynak: opennet.ru