SUID e SGID – Permissões especiais no Linux
SUID e SGID – Permissões especiais no Linux
SUID – Set owner User ID
Tipo especial de permissão de arquivos. Normalmente, quando um programa roda, ele herda permissões de acesso do usuário logado no momento. O bit SUID é definido para dar permissões temporárias para um usuário executar um programa ou arquivo com as permissões do proprietário do arquivo (geralmente o root)
Exemplos
O comando passwd (gerenciamento de senhas) roda com SUID previamente configurado para que um usuário comum possa alterar suas própria senha, pois ele não tem permissão para alterar arquivos de sistema como o /etc/shadow – somente o root possui esse tipo de permissão
Configuração
Usamos o comando chmod para configurar o SUID em um arquivo, como no seguinte exemplo:
# chmod 4750 arquivo # permissão 4 = SUID
Verificação
Para verificarmos se um arquivo possui o bit SUID ativado nas permissões do proprietário, usamos o comando ls -l , obtendo uma saída como a seguinte:
-rwsr-xr-x fabio arquivo
A permissão de execução do proprietário (x) é substituída por um s ou S, onde:.
- s = possui permissão de execução
- S = não possui permissão de execução
Podemos localizar arquivos que possuam o bit SUID ativo usando o comando a seguir:
# find / -perm +4000
SGID – Set Group ID
Tipo especial de permissões aplicado a arquivos ou pastas. Normalmente, quando um programa é executado, ele herda permissões de acesso do usuário logado atualmente. O bit SGID é definido para dar permissões temporárias para um usuário executar um programa ou arquivo com as permissões do grupo do arquivo.
Configuração
Usamos o comando chmod para configurar o bit SGID em um arquivo, como segue:
# chmod 2750 arquivo # permissão 2 = SGID
Verificação
Para verificarmos se um arquivo possui o bit SGID ativado nas permissões do proprietário, também usamos o comando ls -l. Veja um exemplo de saída obtida com este comando:
-rwxr-sr-x fabio arquivo
A permissão de execução do grupo (x) é substituída por um s ou S, onde:
- s = possui permissão de execução
- S = não possui permissão de execução
Também podemos localizar arquivos que possuam o bit SGID ativo usando o comando a seguir:
$ find / -perm +2000
Sticky bit
O sticky bit é um bit usado em permissões de pastas para evitar a exclusão de seu conteúdo por outros usuários, mesmo que eles tenham permissão de escrita na pasta.
Somente o proprietário do arquivo e o usuário root podem excluir arquivos em uma pasta que possua o Sticky bit ativado.
Configuração
Usamos o comando chmod para configurar o Sticky em uma pasta, como no exemplo:
# chmod 1757 arquivo # permissão 1 = Sticky
Verificação
Para verificarmos se uma pasta possui o bit Sticky ativado nas permissões dos outros, também usamos o comando ls -l, como neste exemplo:
-rwxr-xrwt fabio pasta
Aqui, a permissão de execução do grupo (x) é substituída por um t ou T, onde:
- t = possui permissão de execução
- T = não possui permissão de execução
Também podemos localizar arquivos que possuam o bit Sticky ativo usando o comando find, como segue:
# find / -perm +1000
É isso aí! Para saber mais sobre os bits de permissão especiais do Linux, assista ao vídeo a seguir:
Escreva um comentário