Posts Tagged ‘rootkit’
As melhores ferramentas de segurança pra Linux
Posted by Hugo Doria | Filed under Arch Linux, Linux
Existem várias ferramentas de segurança que podem auxiliar a vida de um administrador de redes/sistemas. Resolvi fazer um compilado rápido das melhores ferramentas para ajudar a vida destas pessoas. ;-)
É claro que esta lista não é definitiva e reflete apenas o meu gosto e o que uso. Se alguém tiver alguma sugestão de ferramenta para adicionar aqui é só entrar em contato que adicionarei com prazer. Com o tempo eu vou adicionando mais informações nesta página para torná-la ainda mais completa.
Bem, vamos à lista (que não está em nenhuma ordem definida):
Lynis - uma ferramenta simples de auditoria de segurança
Posted by Hugo Doria | Filed under Arch Linux, Linux
Lynis é uma ferramenta simples, bacana e que pode te ajudar a melhorar a segurança do seu sistema. Ela é capaz de escanear a máquina, procurar falhas de segurança, usuários sem senha, regras de firewall, certificados SSL expirados e informar sobre possíveis erros de configuração.
Tudo isto é feito de modo informativo e o Lynis não toma nenhuma ação automaticamente. Por isso ele não pode ser considerado uma ferramenta de hardening mesmo.
Segue um screenshot do Lynis em ação:
A ferramenta já foi testada em Arch Linux, CentOS, Debian, Fedora, FreeBSD, Mac OS X, Mandriva, OpenBSD, OpenSolaris, OpenSuSE, PCLinuxOS, Red Hat, Slackware 12.1 e Ubuntu.
Instalando o Lynis
Na verdade, o Lynis nem precisa ser instalado para ser executado. Basta você baixar o source e fazer:
$ tar xf lynis-1.2.1.tar.gz
$ cd lynis-1.2.1/
Dentro deste diretório você encontrará um arquivo “lynis”, que é o executável. Para rodá-lo você só precisa:
- Ser root, ou ter direitos equivalentes
- Ter permissão de escrita no /var/log e no /tmp
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)
Usando o Lynis
A primeira coisa a ser feita é verificar se o Lynis está atualizado com o comando:
# ./lynis –check-update
Se o campo “Status” mostrar “Up-to-date” então é sinal que está tudo bem e você já pode escanear seu sistema com:
# ./lynis -c
O lynis vai varrer seu sistema e ir mostrando o resultado na tela. Primeiro ele detecta a versão do kernel, o hostname, o arquivo de log e algumas coisas mais. Depois ele checa a parte de boot e serviços.
Em seguida vem informações mais específicas do kernel (como versão e quantidade de modulos carregados), processos mortos ou zumbis e a parte de usuários e grupos.
Depois vem sistemas de arquivos, rede, impressoras e spools e toda a parte de software (email, integridade de arquivos, firewall etc).
Como se não bastasse, o Lynis ainda checa ferramentas do sistema, contas, tarefas do cron, certificados SSl, virtualização e frameworks de segurança (SELinux e AppArmor, por exemplo).
Como vocês podem ver é muita coisa mesmo, porém tudo de forma simples e resumida. Para cada teste feito você verá um “[ OK ]“ ou um “[ WARNING ] “. O primeiro é um resultado bom, o outro não. De qualquer forma é bom você prestar muita atenção em cada item pois o “[ OK ]“ nem sempre quer dizer que o sistema esteja configurado corretamente, esteja seguro ou que aquilo seja a melhor pratica. Assim como o “[ WARNING ]“ nem sempre é algo ruim, pois os sistemas são diferentes e podem requerer coisas diferentes.
No final de todo o processo ele gera um resultado parecido com este:
Os resultados acima mostram, por exemplo, que o modulo do iptables está carregado mas não há nenhuma regra em uso (ou seja, ele está sendo desnecessário), que nenhum serviço ou cliente NTP foi encontrado, que não há senha no GRUB etc. Ele mostra, também, a gravidade de cada item (leve, médio ou grave).
Com base nestes resultados você pode tomar ações e corrigir os problemas encontrados (caso ache que seja necessário, claro). Se precisar de informações mais detalhadas é só checar os arquivos /var/log/lynis.log e /var/log/lynis-report.dat.
A ferramenta ainda possui outras opções que podem ser interessantes para você:
Rodar o Lynis em modo rápido (assim ele não espera que você aperte enter sempre):
# ./lynis -Q
Mostrar apenas os warnings encontrados:
# ./lynis -q
Setar o nome do “auditor”:
# ./lynis –auditor “Seu nome”
Para uma lista completa de opções e mais informações rode:
# ./lynis –help
E visite o site do projeto.
Procurando rootkits no seu sistema
Posted by Hugo Doria | Filed under Arch Linux, Linux
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á.




Hugo Dória é pai, músico, desenvolvedor oficial e empacotador do Arch Linux, sysadmin e trabalha com instalação e configuração de servidores Linux. :)