programadorurgente.com | Entrar | Registo

Segurança de servidores II - RKHunter

Este programa é um boa ajuda para qualquer administrador de servidores. O que ele faz é detectar "rootkits", ficheiros, pastas, etc
suspeitos num servidor. Parte dos testes baseiam-se na análise das hashes SHA-1 dos conteúdos dos ficheiros.

Para que possam compreender, uma função hash (existem várias) é um algoritmo que recebe uma quantidade de dados variáveis e devolve informação de comprimento fixo (a este resultado chama-se hash). Estas funções não permitem a partir do resultado obter os dados originais.

Exemplo de resultados de funções hash
Texto Hash MD5 Hash SHA-1
Frase "Programador Urgente - Soluções de desenvolvimento" 938574a93db10ad888e39a6de3f3055a b64af83002a28a790208c9b6498fba4b820191c3
Texto do artigo anterior "Segurança de servidores I - Logcheck" 456e4f3b661d326611dc185714b310c8 f6fad6c5da03e46423350bf22fd44e76e2970618

Podem fazer os seus testes aqui.

O que acontece é que é feito um hash aos conteúdos originais dos ficheiros (lembrem-se que a maior parte dos ficheiros nos Linux e afins fazem parte de pacotes públicos) e de tempos em tempos o rkhunter compara o hash original com o hash actual. Se os dois valores forem diferentes então os conteúdos mudaram, o que pode ser um indício de uma "infecção" ou substituição do ficheiro para outros fins.
Como a maior parte das distribuições possuem um gestor de pacotes (APT, YUM, etc) que por sua vez já faz esta hash então acaba por ser bem prático o uso deste sistema de detecção.

Além de verificações de hash, o rkhunter também analisa a existência, permissões e proprietários dos ficheiros e pastas. Uma pequena pesquisa no google apresenta imensos recursos para ler sobre este assunto.

Passos para a instalação e configuração (como root):

apt-get install rkhunter

A configuração inicial manda os emails de aviso para a conta root do sistema. Ora isto pode não ser muito útil se não estiverem a ler essa caixa de correio, então o melhor é mesmo configurarem um email alternativo em /etc/default/rkhunter.

Para actualizar a base de dados de hashes dos ficheiros:

rkhunter –propupd

Para forçar uma actualização (as actualizações são por defeito semanais e automáticas):

rkhunter –update

Para fazerem um teste ao vosso sistema:

rkhunter –c

Depois se existirem avisos começa a tarefa do administrador de pesquisa e análise para concluir se existe uma ameaça ou não.

Como nota adicional, por vezes após fazer actualizações ao sistema operativo e seus pacotes o rkhunter detecta falsos positivos. Isto acontece porque a base de dados dele não está sincronizada com a informação dos pacotes novos ou actualizados. Na maioria dos casos para resolver isto basta correr um rkhunter –propupd e verificar novamente, mas é sempre bom ter em mente quais as alterações que podem ter ocorrido para saber identificar as alterações.

Até breve.