Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1370 connectés 

  FORUM HardWare.fr
  Linux et OS Alternatifs
  Codes et scripts

  script bash et setuid

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

script bash et setuid

n°1165592
trictrac
Posté le 21-09-2009 à 10:28:57  profilanswer
 

salut,  
 
Petite question.
J'essaie de mettre en place un script bash qui devrait faire 2 - 3 opération avec les droits root, lancable par tous les users au nom de root.
Or quand je le setUID, ca ne fonctionne pas.
J'ai cru voir sur internet que c'est pas possible, mais j'ai pas bien compris pourquoi.
Des pistes ?
 
Non, je ne peux pas utiliser sudo .

mood
Publicité
Posté le 21-09-2009 à 10:28:57  profilanswer
 

n°1165604
ccp6128
Syntax error
Posté le 21-09-2009 à 10:48:30  profilanswer
 

A ma connaissance, c'est tout simplement pour des raisons de sécurité.  
 
Etant donné que le contenu d'un script peut être modifiable beaucoup plus facilement qu'un code compilé, cela constitue une faille de sécurité béante.
 
Pour "contourner" ca, pas d'autres moyen que de lancer ton script via un programme compilé qui l'exécuterait ensuite. Mais c'est encore pire côté sécurité (si tu passes le script en argument, hello suid pour tout script présent sur ta machine, si le chemin est hardcodé on pourrait écraser ton script et le remplacer par un autre).
 
De manière générale, le principe du suid est a manier avec précaution, cela ouvre très souvent la possibilité aux utilisateurs de gagner un accès root.

n°1165619
Taz
bisounours-codeur
Posté le 21-09-2009 à 11:32:20  profilanswer
 

Rien à voir avec de la sécurité.
C'est juste que le shellbang #! appelle l'interpréteur qui lui même évalue le script ... donc le setuid sur le script, il ne sert a rien, le script n'étant pas exécutable lui-même.
 
 
La véritable solution, c'est sudo.

n°1165624
ccp6128
Syntax error
Posté le 21-09-2009 à 11:35:42  profilanswer
 

Merci pour la correction, j'ai appris quelque chose.

n°1165637
black_lord
Modérateur
Truth speaks from peacefulness
Posté le 21-09-2009 à 12:37:46  profilanswer
 

tu peux détecter si l'utilisateur n'est pas root aussi, pour faire un truc un peu classe :o


---------------
uptime is for lousy system administrators what Viagra is for impotent people - mes unixeries - github me
n°1165684
trictrac
Posté le 21-09-2009 à 15:32:02  profilanswer
 

pour sudo, est-ce qui'l est posible de faire avec sudo sans avoir a mettre le mot de passe ?
par exemple, jamais personne ne ferai un 'sudo ping' et entrerai son mot de passe ...
 
Je sais que c'est con, mais je suis assez au pieds du mur ...

n°1165690
anapivirtu​a
Boh.
Posté le 21-09-2009 à 15:43:58  profilanswer
 

trictrac a écrit :

pour sudo, est-ce qui'l est posible de faire avec sudo sans avoir a mettre le mot de passe ?
par exemple, jamais personne ne ferai un 'sudo ping' et entrerai son mot de passe ...
 
Je sais que c'est con, mais je suis assez au pieds du mur ...


 
Oui, via NOPASSWD
 
man sudo.


---------------
Si vis pacem, para bellum.
n°1165706
tuxerman12
Posté le 21-09-2009 à 16:08:49  profilanswer
 

Oui, il y a même de bons exemples commentés dans le fichier de conf, enfin dans les distrib que j'utilise il y en a.


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Linux et OS Alternatifs
  Codes et scripts

  script bash et setuid

 

Sujets relatifs
[ Linux ][ Script ][ Démarrage ] : Who, Wget résultats vides? PQ?bash, écrire dans un tableau
script sh de fichier logScript bash : exécution de plusieurs scripts
Equivalent de 'chomp' sur bashScipt bash: formater la commande pour un ps
Recherche chaine dans un fichier texte avec script shellinit.d et script perso. lors d'un reboot
Plus de sujets relatifs à : script bash et setuid


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR