Dans l'utilitaire
Si sudoers dispose de règles valides, mais extrêmement rares en pratique, qui permettent l'exécution d'une certaine commande sous l'UID de tout utilisateur autre que root, un attaquant ayant le pouvoir d'exécuter cette commande peut contourner la restriction établie et exécuter la commande avec droits racines. Pour contourner la limitation, essayez simplement d'exécuter la commande spécifiée dans les paramètres avec l'UID « -1 » ou « 4294967295 », ce qui conduira à son exécution avec l'UID 0.
Par exemple, s'il existe une règle dans les paramètres qui donne à tout utilisateur le droit d'exécuter le programme /usr/bin/id sous n'importe quel UID :
monhôte ALL = (ALL, !root) /usr/bin/id
ou une option qui permet l'exécution uniquement pour un utilisateur spécifique bob :
mon hôte bob = (TOUS, !root) /usr/bin/id
L'utilisateur peut exécuter « sudo -u '#-1' id » et l'utilitaire /usr/bin/id sera lancé en tant que root, malgré l'interdiction explicite dans les paramètres. Le problème est dû à l'oubli des valeurs spéciales « -1 » ou « 4294967295 », qui n'entraînent pas de modification de l'UID, mais comme sudo lui-même s'exécute déjà en tant que root, sans modifier l'UID, la commande cible est également lancée. avec les droits root.
Dans les distributions SUSE et openSUSE, sans spécifier « NOPASSWD » dans la règle, il existe une vulnérabilité
monhôte ALL = (ALL, !root) NOPASSWD : /usr/bin/id
Problème résolu dans la version
Source: opennet.ru