Rootkits são ferramentas utilizadas, geralmente, com o objetivo de ocultar a presença de invasores nas máquinas. Com essas ferramentas alguém não-autorizado, mas que já conseguiu entrar na máquina, pode ter controle sobre a máquina e nem ser notado.
Muitos rootkits acompanham uma gama de binários (como o ls, ps, who, find etc) modificados para que os processos rodados pelo invasor não possam ser vistos pelo administrador da máquina. Além disso, muitos vÃrus atuais utilizam rootkits.
Existem dois aplicativos que podem te ajudar a detectar rootkits no seu sistema: rkhunter e chkrootkit. A seguir eu mostro como instalar e executar ambos.
Usando o rkhunter
Para instalar o rkhunter faça:
No Arch Linux:
# pacman -Sy rkhunter
No Ubuntu (e derivados):
# apt-get install rkhunter
Antes de checar o sistema com o rkhunter execute os dois comandos abaixo:
# rkhunter --propupd
# rkhunter --update
O primeiro comando atualiza a base com as propriedades dos arquivos e o seguindo atualiza a base do rkhunter.
NOTA: O wordpress anda convertendo os dois hÃfens para um só. Nos comandos acima são dois hÃfens, então preste atenção na hora de usá-los.
Depois de tudo atualizado você pode checar seu sistema com o comando:
# rkhunter -c
A saÃda do rkhunter é colorida e bem simples de se ler. Ele checa diversas coisas no sistema e sempre que um item estiver OK (ou Not found), ele marca em verde. Quando não, aparece um WARNING em vermelho.
Se você quiser que apenas os WARNINGs aparecem na tela faça
# rkhunter -c --rwo
No final de tudo o rkhunter mostrar um resumo do que aconteceu:
Todo o log da operação é armazenado, por padrão, em /var/log/rkhunter.log. Você pode sempre consultá-lo. Para mudar o arquivo do log use:
# rkhunter -c -l /caminho/para/seu/arquivo.log
Você pode, também, fazer com que o rkhunter te envie um email sempre que encontrar algum WARNING. Para isso abra o arquivo /etc/rkhunter.conf e procure a linha que começa com "#MAIL-ON-WARNING". Descomente-a e atribua seu email a ela. Fica algo assim:
MAIL-ON-WARNING=fulano@empresa.com
Acho que isto é suficiente para que você possa rodar o rkhunter com sucesso. ;)
Recomendo que você dê uma olhada na man page. Lá, e no site do rkhunter,você pode encontrar estas e outras opções com mais detalhes:
$ man rkhunter
Usando o chkrootkit
Eu acho o chkrootkit um pouco mais limitado que o rkhunter, mas ele não deixa de ser útil. Para instalá-lo faça:
No Arch Linux:
# pacman -Sy chkrootkit
No Ubuntu (e derivados):
# apt-get install chkrootkit
Para scanear o sistema rode:
# chkrootkit
E para usá-lo em modo avançado:
# chkrootkit -x
Caso o chkrootkit encontre algo ele mostrará um INFECTED na linha correspondente.
Se quiser, você pode rodar o chkrookit em outro dispositivo:
# chkrootkit -p /media/dispositivo
Para maiores informações rode "chkrootkit -h" (sem aspas) e visite o site do projeto.
Ah! E caso você tenha um mÃnimo de suspeita que seu sistema esteja infectado, não é recomendado usar essas ferramentas a partir do próprio sistema. O melhor, neste caso, é montar a partição em uma máquina 100% limpa e rodar as ferramentas de lá.
Então Hugo, como já tinha comentado com você esse post seria e foi muito bom, pena que essas ferramentas trabalham com base em assinaturas conhecidas e crackers ou hackers, sei lá como definir isso, utilizam cada vez mais ferramentas próprias considerada por eles priv8, private, ou simplesmente privadas o que torna mais ardua a detecção dos rootkits. Mas valeu mesmo por esse post muito didático.
Parabéns mano…
Não conhecia esse rkhunter, muito bom, muito bom mesmo.
Grato pela dica.
Olá o que faço quanto encontrar warnings segue o exemplo:
Scanning for hidden files… [ Warning! ]
—————
/etc/.pwd.lock /dev/.static
/dev/.udev
/dev/.initramfs
/dev/.initramfs-tools
—————
Please inspect: /dev/.static (directory) /dev/.udev (directory) /dev/.initramfs (directory)
Obrigado
[root@infotec corvolino]# rkhunter -propupd
Invalid option specified: -propupd
[root@infotec corvolino]# rkhunter -update
Invalid option specified: -update
????
e agora? x)
e o rkhunter -c não aconteceu nada! xP
@Corvolino,
Os comandos são:
rkhunter – -propupd e rkhunter – -update (com os dois – juntos)
O wordpress está com um problema. Ele concatena os dois –. Tenta aà e me avisa.
hdoria, eu scaniei e durante o processo apareceu alguns warning, e no final do processo o rkhunter me mostrou isto:
File properties checks…
Files checked: 116
Suspect files: 3
Rootkit checks…
Rootkits checked : 114
Possible rootkits: 0
_____________________________________
Ta suspeito de 3 arquivos/pasta infectado/vuneravel e em rootkit tem 0, não entendi. Outra, como faço para resolver esses 3 arquivos suspeitos?
valeu!
Opa
Uma outra forma é verificar as portas que estão abertas e qual daemon abriu com o comando
netstat -vantup
Ótimo post !!
O problema que esta acontecendo eh que o comando:
# rkhunter –propupd
so fuciona na versao 1.3.0, quem instalou direto provavelmente ta usando a versao 1.2.9.
Por isso nao ta funcionando.
idem ao que o corvolino disse
tbm tenho uns warnings , mais coo tratar disso ??
ou tem avisos que pode ser ignorado ?
no artigo não fala ..
Gostei pacas do rkhunter, e já encontrou três warnings nos diretórios e arquivos ocultos, pena que nem posso deletar nenhum deles já que são programas fundamentais do Ubuntu, nem são necessariamente arquivos malwares, mas eu acho estranho o fato do Ubuntu deixar arquivos e diretórios na pasta /etc ocultas
seria no /etc/groups ?
=P
Obrigado pela dica.
Mas como faz para colocat um atalho para o rkhunter no gnome?
[...] http://hdoria.archlinux-br.org/blog/2008/06/05/procurando-rootkits-no-seu-sistema/ [...]
Opa pessoal,
Antes de se preocuparem, vejam o log do rkhunter/chkrootkit.
Lá vocês podem obter maiores informações sobre o WARNING. Em muitos dos casos estes warnings não são motivos de preocupação.
Pelo log vocês poderão ver o tipo de WARNING. Ele avisa, por exemplo, o acesso do root via ssh está liberado. Neste caso você tem que abrir o arquivo de configuração do ssh e desabilitar o acesso do root por ssh. Não existe uma receita. Abra o arquivo de log, veja o warning e toma uma ação baseado nele.
Se ele achar rootkit, minha sugestão é: Faça backup de arquivos pessoais e formate a máquina. É a maneira mais eficiente.
Se ele achar rootkit, minha sugestão é: Faça backup de arquivos pessoais e formate a máquina. É a maneira mais eficiente.
______________________________________
uso linux para não escutar isso como resposta, me desculpe hdoria mas deve ter alguma outra alternativa porque senão vou ter que ficar instalando toda hora e no caso do arch é complicado pelo fato dos arquivos serem baixados e nem todos tem internet de alta velocidade e tempo disponÃvel para tal. ;)
porém obrigado pela resposta, abraço!
Opa Corvolino,
Infelizmente esta é a melhor solução, neste caso. É algo bem diferente de quando dá algum problema no sistema, hardware, módulo ou algo do tipo. Em situações como essa é possÃvel resolver o problema apenas consertando algo aqui e ali, sem precisar formatar a máquina.
Invasão é algo bem além disso. Você não tem como saber o que o invasor fez na sua máquina ou o que foi infectado se você não tiver ferramentas adequadas. Só passar o anti-rookit não é suficiente, ainda mais se você estive usando-o da própria máquina infectada. O melhor jeito de evitar formatar (e situações do tipo) é usar uma série de ferramentas como tripwire, iptables, snort, analisador de logs, anti-rootkit, backups etc. Mas convenhamos: se você já usa corretamente boa parte delas, dificilmente você foi invadido.
Imagina você deixar um servidor de produção importantÃssimo da sua empresa com vários rootkits. Simplesmente não dá. O melhor é, como falei, usar todas as ferramentas e ter uma polÃtica de backup. No dia que achar algum rootkit, se tem um backup de um momento imediatamente anterior para restaurar o sistema. E aà sim, você pode descobrir o que pode ter afetado sua segurança, restaurar o backup e consertar todos os problemas no sistema limpo. Enquanto isso sua empresa agradece.
Esse tutorial é de autoria sua?
@Roberto
Sim, é de minha autoria. Tem alguma dúvida sobre o tema?
Ótimo post, o chkrootkit eu já conhecia, mas esse rkhunte realmente é bem mais funcional, e essa dica do e-mail aà foi muito boa. Valeu.
Boa tarde Hugo.
Uso o Kurumin NG 8.06.
Segui todo o tutorial. Rodei o rkhunter, apareceu um warning e então tentei ver o arquivo .log mas ele está vazio.
Alguma idéia qual o motivo? Já rodei duas vezes para conferir e o .log continua vazio.
Cara que exelente post, parabéns!!
Valeu!
[...] Se você preferir instalar o Lynis, é só baixar o rpm para sua distribuição (ele fica no sub-diretório noarch), ou o deb, e instalá-lo usando o gerenciador de pacotes. NOTA: O Lynis foi criado pelo mesmo autor do rkhunter (um anti-rootkit que eu já demonstrei como usar) [...]
[...] Site: http://www.rootkit.nl/ Tutorial: http://hdoria.archlinux-br.org/blog/2008/06/05/procurando-rootkits-no-seu-sistema/pt/ [...]
[...] Site: http://www.rootkit.nl/ Tutorial: http://hdoria.archlinux-br.org/blog/2008/06/05/procurando-rootkits-no-seu-sistema/pt/ [...]
Pessoal,
Eu tenho o arch 64 bits instalado e nao achei esse rkhunter no repositorio. Existe versao de 64 bits para ele?
Bom dia Hugo Doria.
Tudo bom ?
Apareceu o sequinte:
/usr/bin/find: `head’ terminado pelo sinal 13
Pode me enviar um Email.
Obrigado.
E o pacman -Sy rkhunter
Não está mais nos repositórios do Arch.
[]’s
o rkhunter se encontra no AUR voce pode baixar ele usando yaourt -S rkhunter ou pegar o PKGBUILG e instalar ele…
Obrigado. *]
[...] Hugo Doria Author: Albino Biasutti Neto Categories: Archlinux, Debian Tags: Comentários (0) [...]
salve hugo,
beleza cara?
apareceu isso pra mim:
[12:46:03] /usr/bin/ldd [ Warning ]
[12:46:04] Warning: The command ‘/usr/bin/ldd’ has been replaced by a script: /usr/bin/ldd: Bourne-Again shell script text executable
mas ele não acho nenhum rootkit.
Rootkit checks…
Rootkits checked : 113
Possible rootkits: 0
será que tem que reinstalar o sistema?
abraços!