Pesquisa de site

Como instalar e usar Linux Malware Detect (LMD) com ClamAV como mecanismo antivírus


Malware, ou software malicioso, é a designação dada a qualquer programa que visa perturbar o funcionamento normal de um sistema informático. Embora as formas mais conhecidas de malware sejam vírus, spyware e adware, os danos que pretendem causar podem variar desde o roubo de informações privadas até a exclusão de dados pessoais e tudo mais, enquanto outro uso clássico do malware é controlar o sistema para usá-lo para lançar botnets em um ataque (D)DoS.

Em outras palavras, você não pode se dar ao luxo de pensar: “Não preciso proteger meu(s) sistema(s) contra malware, pois não estou armazenando nenhum dado sensível ou importante”, porque esses não são os únicos alvos do malware.

Por esse motivo, neste artigo explicaremos como instalar e configurar o Linux Malware Detect (também conhecido como MalDet ou LMD, para abreviar) junto com ClamAV (mecanismo antivírus) em RHEL 8/7/6 (onde x é o número da versão), CentOS 8/7/6 e Fedora 30-32 (as mesmas instruções também funcionam no Ubuntu > e sistemas Debian).

Um scanner de malware lançado sob a licença GPL v2, especialmente projetado para ambientes de hospedagem. No entanto, você perceberá rapidamente que se beneficiará do MalDet, independentemente do tipo de ambiente em que estiver trabalhando.

Instalando LMD no RHEL/CentOS e Fedora

LMD não está disponível em repositórios online, mas é distribuído como um tarball no site do projeto. O tarball contendo o código fonte da última versão está sempre disponível no seguinte link, onde pode ser baixado com o comando wget:

wget http://www.rfxn.com/downloads/maldetect-current.tar.gz

Então precisamos descompactar o tarball e entrar no diretório onde seu conteúdo foi extraído. Como a versão atual é 1.6.4, o diretório é maldetect-1.6.4. Lá encontraremos o script de instalação, install.sh.

tar -xvf maldetect-current.tar.gz
ls -l | grep maldetect
cd maldetect-1.6.4/
ls

Se inspecionarmos o script de instalação, que tem apenas 75 linhas (incluindo comentários), veremos que ele não apenas instala a ferramenta, mas também realiza uma pré-verificação para ver se o diretório de instalação padrão ( /usr/local/maldetect) existe. Caso contrário, o script cria o diretório de instalação antes de continuar.

Finalmente, após a conclusão da instalação, uma execução diária via cron é agendada colocando o script cron.daily (consulte a imagem acima) em /etc/ cron.daily. Este script auxiliar irá, entre outras coisas, limpar dados temporários antigos, verificar se há novas versões do LMD e verificar os diretórios de dados padrão do Apache e dos painéis de controle da web (ou seja, CPanel, DirectAdmin, para citar alguns).

Dito isto, execute o script de instalação normalmente:

./install.sh

Configurando a detecção de malware no Linux

A configuração do LMD é feita através de /usr/local/maldetect/conf.maldet e todas as opções são bem comentadas para tornar a configuração uma tarefa bastante fácil. Caso você tenha dúvidas, você também pode consultar /maldetect-1.6.4/README para obter mais instruções.

No arquivo de configuração você encontrará as seguintes seções, entre colchetes:

  1. ALERTAS DE E-MAIL
  2. OPÇÕES DE QUARENTENA
  3. OPÇÕES DE DIGITALIZAÇÃO
  4. ANÁLISE ESTATÍSTICA
  5. OPÇÕES DE MONITORAMENTO

Cada uma dessas seções contém diversas variáveis que indicam como o LMD se comportará e quais recursos estão disponíveis.

  1. Defina email_alert=1 se desejar receber notificações por e-mail sobre os resultados da inspeção de malware. Por uma questão de brevidade, retransmitiremos e-mails apenas para usuários do sistema local, mas você também pode explorar outras opções, como enviar alertas de e-mail para o exterior.
  2. Defina email_subj=”Seu assunto aqui” e email_addr=username@localhost se você tiver definido email_alert=1 anteriormente.
  3. Com quar_hits, a ação de quarentena padrão para ocorrências de malware (0=apenas alerta, 1=mover para quarentena e alerta), você dirá ao LMD o que fazer quando um malware for detectado.
  4. quar_clean permitirá que você decida se deseja limpar injeções de malware baseadas em strings. Tenha em mente que uma assinatura de string é, por definição, “uma sequência de bytes contígua que potencialmente pode corresponder a muitas variantes de uma família de malware”.
  5. quar_susp, a ação de suspensão padrão para usuários com ocorrências, permitirá que você desabilite uma conta cujos arquivos de propriedade foram identificados como ocorrências.
  6. clamav_scan=1 dirá ao LMD para tentar detectar a presença do binário ClamAV e usá-lo como mecanismo de varredura padrão. Isso resulta em um desempenho de varredura até quatro vezes mais rápido e análise hexadecimal superior. Essa opção usa apenas o ClamAV como mecanismo de varredura, e as assinaturas LMD ainda são a base para a detecção de ameaças.

Resumindo, as linhas com essas variáveis devem ficar assim em /usr/local/maldetect/conf.maldet:

email_alert=1
email_addr=gacanepa@localhost
email_subj="Malware alerts for $HOSTNAME - $(date +%Y-%m-%d)"
quar_hits=1
quar_clean=1
quar_susp=1
clam_av=1

Instalando ClamAV no RHEL/CentOS e Fedora

Para instalar o ClamAV e aproveitar as vantagens da configuração clamav_scan, siga estes passos:

Habilite o repositório EPEL.

yum install epel-release

Então faça:


yum update && yum install clamd
apt update && apt-get install clamav clamav-daemon  [Ubuntu/Debian]

Nota: Estas são apenas as instruções básicas para instalar o ClamAV para integrá-lo ao LMD. Não entraremos em detalhes no que diz respeito às configurações do ClamAV, pois, como dissemos anteriormente, as assinaturas LMD ainda são a base para detectar e limpar ameaças.

Testando detecção de malware no Linux

Agora é hora de testar nossa instalação recente do LMD/ClamAV. Em vez de usar malware real, usaremos os arquivos de teste da EICAR, que estão disponíveis para download no site da EICAR.

cd /var/www/html
wget http://www.eicar.org/download/eicar.com 
wget http://www.eicar.org/download/eicar.com.txt 
wget http://www.eicar.org/download/eicar_com.zip 
wget http://www.eicar.org/download/eicarcom2.zip 

Neste ponto, você pode esperar a próxima tarefa cron ser executada ou executar o maldet manualmente. Iremos com a segunda opção:

maldet --scan-all /var/www/

LMD também aceita caracteres curinga, portanto, se quiser verificar apenas um determinado tipo de arquivo (ou seja, arquivos zip, por exemplo), você pode fazer isso:

maldet --scan-all /var/www/*.zip

Quando a verificação for concluída, você poderá verificar o e-mail enviado pelo LMD ou visualizar o relatório com:

maldet --report 021015-1051.3559

Onde 021015-1051.3559 é o SCANID (o SCANID será um pouco diferente no seu caso).

Importante: Observe que o LMD encontrou 5 ocorrências desde que o arquivo eicar.com foi baixado duas vezes (resultando em eicar.com e eicar.com.1).

Se você verificar a pasta de quarentena (só deixei um dos arquivos e apaguei o resto), veremos o seguinte:

ls -l

Você pode então remover todos os arquivos em quarentena com:

rm -rf /usr/local/maldetect/quarantine/*

Em caso de,

maldet --clean SCANID

Não realiza o trabalho por algum motivo. Você pode consultar o seguinte screencast para obter uma explicação passo a passo do processo acima:

Considerações Finais

Como maldet precisa ser integrado com cron, você precisa definir as seguintes variáveis no crontab do root (digite crontab -e como root e pressione o botão Enter) caso você perceba que o LMD não está funcionando corretamente diariamente:

PATH=/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=root
HOME=/
SHELL=/bin/bash

Isso ajudará a fornecer as informações de depuração necessárias.

Conclusão

Neste artigo, discutimos como instalar e configurar o Linux Malware Detect, junto com o ClamAV, um aliado poderoso. Com a ajuda dessas 2 ferramentas, detectar malware deve ser uma tarefa bastante fácil.

No entanto, faça um favor a si mesmo e familiarize-se com o arquivo README conforme explicado anteriormente, e você poderá ter certeza de que seu sistema está sendo bem contabilizado e gerenciado.

Não hesite em deixar seus comentários ou dúvidas, se houver, através do formulário abaixo.

Links de referência

Página inicial do LMD