Depois de usar sudo
e digitar uma senha para fazer isso, sudo
lembra que inserimos uma senha e não precisamos inserir uma senha na próxima vez que a usarmos.
Estou preocupado com a possibilidade de usar esse fato para enganar um usuário (admin / sudoer) para executar um script que contenha um comando sudo
, para que o script possa usar privilégios de administrador.
Um teste usando um diretório e ls
Imaginei que poderia mostrar que um script pedia uma senha para que esse truque não funcionasse. Eu fiz o seguinte teste.
Eu criei um diretório testDir de propriedade de root e usando chmod
excluí todos os privilégios de acesso do grupo (g) e de outros (o). Eu usei sudo
para fazer isso, então a partir de agora assumimos que estamos no estado "lembre-se de que o usuário não precisa digitar uma senha para usar o sudo".
Em testDir eu criei um testFile usando sudo
(depois disso nós não precisamos mais digitar uma senha para usar o sudo).
Como não sou root, ls testDir
agora me diz que a permissão foi negada.
No entanto, echo sudo ls testDir| bash
imprime testFile no terminal.
O comportamento parece ser o mesmo se, em vez de canalizar "sudo ls testDir" para o bash, executarmos um script de shell contendo a linha sudo ls testDir
.
Perguntas: Você deve tomar cuidado ao executar programas quando tiver usado apenas sudo
?