Ci sono 3 permessi speciali che sono disponibili per file eseguibili e directory. Questi sono :

1. Permesso SUID
2. Permesso SGID
3. Sticky bit

Set-user Identification (SUID)

Hai mai pensato, come un utente non-root può cambiare la propria password quando non ha il permesso di scrivere sul file /etc/shadow. hmmm… interessante, vero? Bene, per capire il trucco, controllate il permesso del comando /usr/bin/passwd :

# ls -lrt /usr/bin/passwd-r-sr-sr-x 1 root sys 31396 Jan 20 2014 /usr/bin/passwd

– Se controllate attentamente, troverete le 2 S nel campo del permesso. La prima s sta per SUID e la seconda sta per SGID.
– Quando viene eseguito un comando o uno script con il bit SUID impostato, il suo UID effettivo diventa quello del proprietario del file, piuttosto che quello dell’utente che lo sta eseguendo.
– Un altro buon esempio di SUID è il comando su :

# ls -l /bin/su -rwsr-xr-x-x 1 root user 16384 Jan 12 2014 /bin/su

– Il permesso setuid viene visualizzato come una “s” nel campo execute del proprietario.

Come impostare SUID su un file?

# chmod 4555 

Nota :
Se una “S” maiuscola appare nel campo execute del proprietario, indica che il bit setuid è on, e il bit execute “x” per il proprietario del file è off o negato.

Impostazione dell’identificazione del gruppo (SGID)

Autorizzazione SGID su file eseguibile

– L’autorizzazione SGID è simile all’autorizzazione SUID, l’unica differenza è che quando lo script o il comando con SGID attivato viene eseguito, viene eseguito come se fosse un membro dello stesso gruppo di cui fa parte il file.

# ls -l /usr/bin/write-r-xr-sr-x 1 root tty 11484 Jan 15 17:55 /usr/bin/write

– L’autorizzazione setgid appare come una “s” nel campo execute del gruppo.

Nota :
– Se una lettera minuscola “l” appare nel campo execute del gruppo, indica che il bit setgid è on, e il bit execute per il gruppo è off o negato.

Come impostare GUID su un file?

# chmod 2555 

SGID su una directory

– Quando il permesso SGID è impostato su una directory, i file creati nella directory appartengono al gruppo di cui la directory è membro.
– Per esempio se un utente con il permesso di scrittura nella directory crea un file lì, quel file è membro dello stesso gruppo della directory e non del gruppo dell’utente.
– Questo è molto utile nella creazione di directory condivise.

Come impostare SGID su una directory

# chmod g+s 

Sticky Bit

– Lo sticky bit è usato principalmente nelle directory condivise.
– È utile per le directory condivise come /var/tmp e /tmp perché gli utenti possono creare file, leggere ed eseguire file di proprietà di altri utenti, ma non sono autorizzati a rimuovere file di proprietà di altri utenti.
– Per esempio se l’utente bob crea un file chiamato /tmp/bob, l’altro utente tom non può cancellare questo file anche quando la directory /tmp ha il permesso di 777. Se il bit sticky non è impostato, allora tom può cancellare /tmp/bob, poiché il file /tmp/bob eredita i permessi della directory madre.
– l’utente root (ovviamente!) e il proprietario dei file possono rimuovere i propri file.

Esempio di sticky bit :

# ls -ld /var/tmpdrwxrwxrwt 2 sys sys 512 Jan 26 11:02 /var/tmp

- T refers to when the execute permissions are off.- t refers to when the execute permissions are on.

Come impostare il permesso sticky bit?

# chmod +t or # chmod 1777 

Lascia un commento

Il tuo indirizzo email non sarà pubblicato.