Bases de Linux et de la ligne de commande
Sur de nombreux systèmes Linux, « ls -l /usr/bin/passwd » affiche « -rwsr-xr-x 1 root root ... ». Quelle est la signification du « s » placé à la position de l'exécution du propriétaire ?
- Asetuid est positionné : quel que soit l'utilisateur qui le lance, le programme s'exécute avec les droits du propriétaire du fichier (ici root)
- BLe sticky bit est positionné : les utilisateurs autres que le propriétaire et root ne peuvent ni supprimer ni renommer ce fichier
- CIl indique que ce fichier est une bibliothèque partagée, qui est seulement appelée par d'autres programmes et ne peut pas être exécutée directement comme une commande
Afficher la réponse et l'explication
Réponse : A. setuid est positionné : quel que soit l'utilisateur qui le lance, le programme s'exécute avec les droits du propriétaire du fichier (ici root)
s indique que le bit setuid (set user ID) et le droit d'exécution sont tous deux positionnés : le programme s'exécute alors avec les droits du propriétaire du fichier, et non avec ceux de l'utilisateur qui l'a lancé. Quand un utilisateur ordinaire change son propre mot de passe, passwd doit mettre à jour /etc/shadow, où seul root peut écrire : c'est pourquoi il s'agit d'un programme setuid root. Un défaut dans un programme setuid peut donner à un utilisateur ordinaire un point d'appui pour obtenir les droits de root : il ne faut donc pas positionner ce bit à la légère. En octal, il correspond à la position 4000, et chmod 4755 donne -rwsr-xr-x.
Continuer : 9 autres questions sur Bases de Linux et de la ligne de commande