O que é Setuid?

Setuid, que significa set user ID na execução, é um tipo especial de permissão de arquivo em sistemas operacionais Unix e Unix, como Linux e BSD. É uma ferramenta de segurança que permite aos usuários executar certos programas com privilégios escalados.

Quando a permissão setuid de um arquivo executável é definida, os usuários podem executar esse programa com um nível de acesso que corresponda ao usuário que possui o arquivo. Por exemplo, quando um usuário deseja alterar sua senha, ele executa o comando passwd. O programa passwd é de propriedade da conta raiz e marcado como setuid, portanto, o usuário recebe temporariamente acesso root para esse propósito muito limitado.

Ao visualizar as permissões de um arquivo com o comando ls -l, a permissão setuid é exibida como um " s " na posição de bit "user execute". Por exemplo:

 ls -l / usr / bin / passwd 
 -rwsr-xr-x 1 raiz 54192 20 de novembro 17:03 / usr / bin / passwd 

Definindo a permissão setuid de um arquivo

Para definir a permissão setuid para um arquivo executável, use o identificador de permissão u + s com o comando chmod :

 chmod u + s myfile 

Arquivos não executáveis ​​podem ser marcados como setuid, mas não tem efeito; marcá-los setuid não os torna executáveis ​​automaticamente. Nesse caso, o bit de permissão aparece como um " S " maiúsculo. Por exemplo:

 ls -l myfile 
 -rw-r - r-- 1 usuário 0 mar 6 10:45 myfile 
 chmod u + s myfile 
 ls -l myfile 
 -rwSr - r-- 1 usuário 0 mar 6 10:45 myfile 

No entanto, se você definir o arquivo como executável pelo usuário com a permissão u + x, a permissão setuid entrará em vigor. Ele será então representado na listagem com um " s " minúsculo:

 chmod u + x myfile 
 ls -l myfile 
 -rwsr - r-- 1 usuário 0 mar 6 10:45 myfile 

Setgid

Setgid é o equivalente a setuid que concede permissão ao grupo que possui o arquivo é conhecido como setgid . Ele opera da mesma maneira, e o indicador " s " ou " S " é exibido na posição de execução do grupo da saída de ls -l . Por exemplo:

 chmod g + s myfile2 
 ls -l myfile2 
 -rw-r-sr-- 1 utilizador 0 Mar 6 10:46 myfile2 

Acrônimos de computador, Arquivo executável, Linux, Permissão, Termos de segurança