Anonymus Posté 5 Mai 2008 Posté 5 Mai 2008 Bonjour, J'ai besoin qu'un programme php se fasse passer pour 'root' afin d'avoir 'tous les droits'. Je dois m'en servir dans un exec ou shell_exec ou équivalent. Merci, Nicolas.
snwoman49 Posté 5 Mai 2008 Posté 5 Mai 2008 La commande exec s'effectue logiquement en root. Si ce n'est pas le cas, modifie l'user et le groupe du fichier en root.
Anonymus Posté 5 Mai 2008 Auteur Posté 5 Mai 2008 la commande exec s'execute en apache, apparemment, et quand je modifie l'user et le groupe du fichier, ce sont les autres programmes ( qui doivent y accéder) qui plantent. Et idem si je mets 'tous les droits' dessus : là, ca plante tout :/ ( c'est du décryptage pgp/gpg, on peut pas faire ce qu'on veut )
Kioob Posté 5 Mai 2008 Posté 5 Mai 2008 Hello, essaye de voir du coté de sudo. Mais avec un php en "module", c'est pas forcément super prudent : tu vas autoriser l'exécution à l'utilisateur "www-data" (ou "apache"), c'est à dire tous les sites et scripts de la machine (y compris phpmyadmin, phpbb, wordpress, etc quoi). N'y a t-il pas un autre moyen de procéder ?
Dan Posté 6 Mai 2008 Posté 6 Mai 2008 Si la commande est un exécutable et qu'elle doive toujours tourner comme 'root', tu peux lui donner le set-userid bit ! Par exemple "chmod 4755 nom_de_commande". Attention car tous les utilisateurs qui ont accès au shell linux tourneront cette commande comme 'root'... et si elle a un "shell escape", le shell sera root lui aussi !
Sujets conseillés
Veuillez vous connecter pour commenter
Vous pourrez laisser un commentaire après vous êtes connecté.
Connectez-vous maintenant