Se alguém tiver raiz, é muito difícil, talvez impossível, ter certeza de que não conseguirá recuperá-la, a menos que você reinstale e restaure a partir de um backup feito antes que eles tivessem acesso. Pontos a observar: primeiro um truque antigo: qualquer usuário extra em /etc/passwd
com UID 0. Por exemplo:
root:x:0:0:root:/root:/bin/bash
daemon:x:1:1:daemon:/usr/sbin:/bin/sh
bin:x:2:2:bin:/bin:/bin/sh
sys:x:3:3:sys:/dev:/bin/sh
..etc...
something-innocuous:0:42:foo:/:/bin/sh
..etc..
Esse usuário extra teria uma senha separada e seria efetivamente root assim que fizesse login.
Execute visudo
se você tiver sudo
instalado e verifique se há algo incomum lá.
Você deve verificar /etc/pam.conf
e todo /etc/pam.d
(possivelmente em outro lugar também?) para garantir que nada esteja configurando o PAM para conceder login sem senha para root
de um IP particular ou similar.
Você deve verificar se há processos extras sendo executados como raiz, que podem oferecer um shell raiz a um usuário remoto ou local específico; o executável desse processo não precisa mais existir no disco ou não precisa ser o que era quando o processo foi iniciado.
Finalmente, se você ainda não acha que é impossível: pesquise quaisquer pontos de montagem cujas opções de montagem não contenham nosuid
para binários setuid / setgid (usando algo como find -perm /6000
) ou binários que o root possa executar, pode ter sido modificado. Quais podem ter sido modificados / adicionados recentemente? Qualquer um deles. Os timestamps são triviais para mudar.
Um rootkit pode ter feito qualquer combinação dos itens acima e pode ter corrigido o kernel (talvez também na memória, sem uma reinicialização) para impedir sua capacidade de detectá-lo (removendo coisas do ps / netstat, etc.)
Boa sorte. : -)