As permissões corretas de /bin/su
devem ser: -rwsr-xr-x
-rwsr-xr-x 1 root root 40128 May 17 2017 /bin/su*
Para corrigir esse problema específico, você deve:
- Alterar o proprietário do arquivo para ser root: root
- Alterar a permissão do arquivo para ser -rwsr-xr-x
Isso pode ser feito usando:
sudo chown root:root /bin/su
sudo chmod 4755 /bin/su
- O primeiro comando, que altera o proprietário do arquivo para
root
. - O próximo comando alterará a permissão para permitir leitura / execução por qualquer usuário e definirá o
s
bit como o comando/bin/su
.
P: Por que executar chown
em /bin/su
também removeu os set-user-id
/ set-group-id
bits?
R: Por design, a execução de chown
pode remover os set-user-id
/ set-group-id
bits. Quando esses bits são definidos, a execução desse arquivo resultará na execução do arquivo como o proprietário do arquivo binário, em vez do proprietário do processo que executa o arquivo. Alterar o proprietário do arquivo (ou grupo) sem remover o set-user-id
bit resultará em um arquivo que será executado como usuário diferente do planejado originalmente, o que pode resultar em uma falha de segurança.
Algumas referências:
Unless chown is invoked by a process with appropriate privileges, the set-user-ID and set-group-ID bits of a regular file shall be
apagado após a conclusão bem sucedida; o set-user-ID e o set-group-ID pedaços de outros tipos de arquivos podem ser apagados.
Página man% chown
do Ubuntu sugira correr info coreutils 'chown invocation'
para obter a documentação completa de chown
13.1 ‘chown’: Change file owner and group
=========================================
‘chown’ changes the user and/or group ownership of each given FILE to
NEW-OWNER or to the user and group of an existing reference file.
Synopsis:
....
The ‘chown’ command sometimes clears the set-user-ID or set-group-ID
permission bits. This behavior depends on the policy and functionality
of the underlying ‘chown’ system call, which may make system-dependent
file mode modifications outside the control of the ‘chown’ command. For
example, the ‘chown’ command might not affect those bits when invoked by
a user with appropriate privileges, or when the bits signify some
function other than executable permission (e.g., mandatory locking).
When in doubt, check the underlying system behavior.