linux user group brescia

immagine del castello

Archivio della mailing list

script user che esegue comandi in root

Maurizio Paolini paolini a lugbs.linux.it
Gio 4 Ott 2001 20:38:12 UTC
Si tratta di sfruttare il bit "s" (Set UID) per un eseguibile.  Purtroppo, per
problemi di sicurezza in linux non e' possibile "suiddare" degli script,
ma solo degli eseguibili binari, e questo purtroppo costringe a fare
un "wrapper" ad esempio in c, che richiami a sua volta lo script.

Comunque, supponiamo che "wrap" sia un eseguibile che richiama lo script,
da root diamo i comandi:

   # chown root wrap
   # chmod +s wrap

di modo che i permessi di "wrap" risultino:

-rwsr-sr-x    1 root    ...   wrap

(notare la presenza della lettera "s").  Un eseguibile con tali permessi
ha la proprieta' che, chiunque lo esegua, girera' con i permessi del suo
"owner", in questo caso "root".  Se "wrap" richiama altri comandi, questi
gireranno a loro volta con gli stessi permessi del chiamante, e quindi
in questo caso con i permessi di root, senza bisogno di "suiddarli".

Attenzione!  Ogni volta che si "suidda" qualche eseguibile a root si creano
potenziali falle nel sistema, poiche' si permette ad un utente qualunque di
eseguire tale programma come se fosse root.  

mp




Maggiori informazioni sulla lista Lug