setuid
setuid - imposta identità utente
setuid imposta l'effettiva ID utente del processo corrente. Se l'effettiva userid del chiamante è root, sono impostate le user ID reali e salvate.
Sotto Linux, setuid è implementato come la versione POSIX con la caratteristica _POSIX_SAVED_IDS. Ciò permette ad un programma setuid (che non sia root) di lasciare tutti i suoi privilegi utente, eseguire un compito non privilegiato, quindi ri-ottenere gli originali effettivi user ID in modo sicuro.
Se l'utente è root o il programma è setuid root, un attenzione speciale deve essere presa. La funzione setuid controlla l'uid effettiva del chiamante e se esso è il superuser, tutti i processi relativi all'user ID sono impostati all'uid. Dopo che ciò è avvenuto, è impossibile per il programma riottenere i privilegi di root.
In questo modo un programma setuid-root che vorrà temporaneamente lasciare i privilegi di root, assumere l'identità di un utente non-root, e quindi riottenere i privilegi di root successivamente non potrà usare setuid. Puoi ottenere questo con la (non-POSIX, BSD) chiamata seteuid.
[ Indietro ]
Comandi e termini unix linux Copyright © di Adamantio.net - (926 letture) |