SUID bit

2012-09-05

L’utilisation du bit SUID permet d’exécuter des scripts en se faisant passer pour un autre utilisateur. Cela peut être pratique sur sa machine personnelle pour appeler un script qui modifie la luminosité de l’écran… Mais aussi dangereux si la machine est utilisée par d’autres utilisateurs…

Attention, après recherche le bit suid ne fonctionne pas sur linux pour les scripts bash… Cela explique bien des choses que je ne comprenais pas ! $ cat hello.c #include<stdio.h> #include<stdlib.h>

int main(int argc, char **argv[]) { printf(“hello getuid=%d geteuid=%d\n”, getuid(), geteuid()); } $ gcc hello.c -o hello && sudo chown root:root hello && sudo chmod u+s hello && ls -l hello -rwsr-xr-x 1 root root 8484 2012-09-05 13:43 hello $ ./hello hello getuid=1000 geteuid=0 $ sudo chmod u-s hello $ ./hello hello getuid=1000 geteuid=1000