Galera, essa é uma dica bem simples. Isso é, em suma, apenas uma maneira de "enganar" os usuários mais "espertinhos" e rootkits, reduzindo seu poder destrutivo. Geralmente utilizo esta técnica em servidores, pois não há quem fique 24 horas por dia monitorando o log de eventos do sistema.
O que faremos é restringir o poder de fogo do usuário root, trocando-o por outro usuário qualquer. Apesar de simples, esta técnica evita que usuários mal intencionados e rootkits obtenham certos privilégios, pois ambos se baseiam no fato do usuário root ser o super-usuário.
Para isso, logados como root, criamos um novo usuário em nosso sistema, de preferência algo que não seja óbvio. Para este usuário criamos uma senha mais complexa (16 ou mais caracteres, alfa-numérica e capitalizada) que as utilizadas normalmente. Em seguida, vamos editar o arquivo /etc/passwd, trocando o uid e o gid do usuário root pelos do novo usuário, desta forma:
Isto já seria o suficiente, se não fosse o problema de propriedade de arquivos e diretórios. Para resolvermos tal problema, devemos mudar estas propriedades. Para isso usamos o chown da seguinte forma:
Agora podemos testar o "poder de fogo" do usuário root. Efetuamos o logout e logamos novamente com o usuário root. Então, no prompt do shell, ao invés de "#" aparecerá "$". Efetuamos novamente o logout e logamos como novo_usuário. Agora, ao invés de "$" no prompt do shell aparecerá "#", evitando que usuários que consigam obter a senha do usuário root tenham poder para efetuar qualquer operação indevida, assim como vários rootkits que se baseiam no nome do usuário e não em seu uid, também façam o mesmo.
Espero que isso possa ser útil a vocês como tem sido útil para mim (evitando o número excessivo de manutenção nos meus servidores causadas por usuários espertinhos nas redes que administro).
[1] Comentário enviado por birilo em 25/08/2006 - 17:11h
Vários rootkits que eu conheçam se baseiam em identificar o usuário de UID 0.
É interessante, mas não difere muito em segurança...
O mais interessante é manter patchs de segurança de softwares constantemente, e manter uma senha forte (clássicos: Alfa + Num + pontuação + minusculos/maiuscutos) e troca-la constantemente...
O uso de honeypots dizem ser uteis (mas estes eu nunca usei)
[3] Comentário enviado por wolfgang em 26/02/2007 - 23:50h
Todos os serviços são, na verdade, executados com o usuário que tem o uid 0. Por exemplo, se criarmos o usuário fonseca e atribuirmos a ele o uid 0, na próxima inicialização, todos os serviços habilitados no boot para rodarem pelo root rodarão pelo usuário fonseca... Caso vc não reinicialize os sistemas, os serviços continuarão rodando como root até que vc faça isso, pois todos eles permanecem na RAM, onde foram previamente alocados...
Caso um novo serviço seja executado, ele será iniciado pelo usuário fonseca...