heaven35 a écrit :
Je cherche à écrire un script qui me permettrait de killer des process ou d'effectuer des rm sur des fichiers/dossiers qui ne m'appartiennent pas. Pour cela il me faut des droits root.
|
Déjà, oublie le script et fais un programme en C (sans être loggé en root). Compile-le (avec gcc) et tu obtiens un fichier binaire (par binaire, je veux dire : "contenant des instructions directement compréhensibles par le processeur" ). Ensuite, tu te logges en root (commande : su) et tu fais appartenir fichier_binaire à root (commande : chown root fichier_binaire). Ensuite, tu fais en sorte que lorsque le noyau fait un exec de fichier_binaire, il modifie le propriétaire du processus (qui a demandé l'exec) en lui affectant le propriétaire de fichier_binaire (commande : chmod +s fichier_binaire). Tu n'as plus besoin d'être root : fermer le flux en appuyant sur [Ctrl]+[D]. Ca devrait marcher !
Pourquoi faire absolument un fichier binaire ? Lorsque le noyau fait un exec, c'est forcément un exec d'un fichier binaire. Si tu exécutes un script, le noyau va faire un exec de l'interpréteur de commandes capable de comprendre le script. Dans ton cas, il fera sûrement un exec de bash, qui ne va évidemment pas te donner les droits du root.
Message édité par e-miel le 26-11-2005 à 17:20:51