Objet : Discussions sur le logiciel libre
Archives de la liste
- From: Albert ARIBAUD <albert AT aribaud.net>
- To: linux-31 AT culte.org
- Subject: Re: [Linux-31] chmod Set-User-ID droits...
- Date: Sun, 21 Feb 2021 17:36:00 +0100
Le dimanche 21 février 2021 à 17:05 +0100, Jean-Marc MONGRELET a
écrit :
> Bonjour,
>
> J'ai créé un fichier script test.sh avec ce contenu:
> #!/bin/sh
> touch toto
>
> J'ai donné des droits Set-User-ID et Set-Group-ID à mon script:
> $ ls -l
> total 4
> -rwsrwsr-x 1 root root 23 févr. 21 16:30 test.sh
>
> Si j'exécute mon script cela me crée le fichier toto apparentent à
> jean-marc:
> $ ./test.sh
> $ ls -l
> total 4
> -rwsrwsr-x 1 root root 23 févr. 21 16:30 test.sh
> -rw-rw-r-- 1 jean-marc jean-marc 0 févr. 21 16:59 toto
>
> Or j'avais crue comprendre que le script s’exécuterait avec les
> droits
> root, et que donc le fichier créé devrait appartenir à root!
>
> Qu'est que j'ai loupé ?? ou qu'est que j'ai pas compris ?
>
> JM
>
> --
Bonjour,
Il semble que tu sois dans le cas évoqué par cette page :
<https://lea-linux.org/documentations/Dev-suid_scripts>
En gros : quand tu invoques ton script, ce n'est pas lui qui est
exécuté, c'est le shell qu'il indique en première ligne, /bin/sh,
lequel interprète ton script.
Or, /bin/sh n'est pas suid. Ergo i s'exécute en tant que toi, et c'est
en tant que toi qu'il fait "tourner" ton script.
Note : la page que j'ai citée indique que pour les programmes exécutés
directement (donc compilés), c'est déjà compliqué et le suid seul ne
suffit pas.
Amicalement,
Albert.
- [Linux-31] chmod Set-User-ID droits..., Jean-Marc MONGRELET, 21/02/2021
- Re: [Linux-31] chmod Set-User-ID droits..., Albert ARIBAUD, 21/02/2021
Archives gérées par MHonArc 2.6.19+.