Ainda é possível ler o arquivo após alterar as permissões

Ainda é possível ler o arquivo após alterar as permissões

Criei um arquivo como root e escrevi uma string nele. Agora mudei o modo para "0" assim:

root# ls -al transit/
total 4.0K
---------- 1 root root 6 Jan  5 18:15 27050
root#

Se eu tentar segui-lo, cabeceá-lo ou acertá-lo, funciona:

root# cat transit/27050
320646
root# 

Por que é possível lê-lo?

Responder1

Consulte a respostaaqui.

Basicamente, o rootness supera as permissões.

Permissões 000 significa que apenas o root pode ler ou gravar o arquivo.

Não tenho conhecimento de nenhum uso especial extra para a combinação de propriedade root e 000 permissões.

Além disso, você pode encontrar algumas informações valiosas nestepergunta também.

Então, como aponta o usuário Hauke ​​Laging em sua resposta,

Sempre assuma que root(e qualquer outro usuário/processo com CAP_DAC_OVERRIDEe CAP_DAC_READ_SEARCH) pode fazertudo a menos que um LSM (SELinux, AppArmor ou similar) o impeça de fazer isso.

Isso significa também que você deve assumir que todas as teclas digitadas podem ser lidas. As senhas não são realmente seguras. Se você deseja um nível sério de segurança, então você deve usar um sistema que seja completamente controlado por você (e nem mesmo usado por mais ninguém).

Portanto, mesmo as permissões 000 não podem restringir a leitura do conteúdo do arquivo pelo usuário root, a menos que haja algum LSM impedindo o usuário root de ler o conteúdo do arquivo.

informação relacionada