Informations sur les sticky bit, suid et sgid

Le suid

Lorsque l’on place un suid sur un fichier, n’importe quel utilisateur peut l’exécuter en héritant des permissions du propriétaire, comme s’il était lui-même le propriétaire.
Le suid ne s’active que sur des fichiers.

Pour  activer suid :

sudo chmod u+s fichier

Pour supprimer le suid:

sudo chmod u-s fichier

Attention à l’utilisation de suid, explication sur ce lien http://www.tofe.org/suid.php3

Le sgid

Sur un fichier ce droit fonctionne comme le droit SUID, mais appliqué aux groupes. Il donne à un utilisateur les droits du groupe auquel appartient le propriétaire de l’exécutable et non plus les droits du propriétaire.

sudo chmod g+s fichier

Sur un répertoire ce droit a une tout autre utilisation s’il est appliqué à un répertoire. Normalement, lorsqu’un fichier est créé par un utilisateur, il en est propriétaire, et un groupe par défaut lui est appliqué (généralement users si le fichier a été créé par un utilisateur, et root ou wheel s’il a été créé par root). Cependant, lorsqu’un fichier est créé dans un répertoire portant le droit SGID, alors ce fichier se verra attribuer par défaut le groupe du répertoire. De plus, si c’est un autre répertoire qui est créé dans le répertoire portant le droit SGID, ce sous-répertoire portera également ce droit.

sudo chmod g+s repertoire

Le sticky bit

Ce droit (traduction bit collant) est utilisé pour manier de façon plus subtile les droits d’écriture d’un répertoire. En effet, le droit d’écriture signifie que l’on peut créer et supprimer les fichiers de ce répertoire. Le sticky bit permet de faire la différence entre les deux droits.

Sur un fichier, Gnu/Linux n’en tient pas compte contrairement aux vieux systèmes Unix. Ainsi le sticky activé indique à l’OS que le fichier sera utilisé fréquemment et sera ainsi stocké dans un fichier d’échange pour avoir la main dessus rapidement.

sudo chmod +t fichier

Sur un répertoire le sticky bit aura pour effet d’interdire à quiconque n’étant pas le propriétaire du fichier sa suppression. Cependant, il sera toujours possible de modifier le fichier d’un autre si l’on possède les droits nécessaires.

sudo chmod +t repertoire

Plus d’info ici

Derniers Articles