Como instalar o detector de Malware usando Maldet

Linux Malware Detect (LMD) ou Maldet é um scanner de malware para Linux lançado sob a licença GNU GPLv2, que é projetado em torno das ameaças enfrentadas em ambientes hospedados compartilhados. Ele usa dados de ameaças de sistemas de detecção de intrusão de borda de rede para extrair malware que está sendo usado ativamente em ataques e gera assinaturas para detecção.

Além disso, os dados de ameaças também são derivados de envios de usuários com o recurso de verificação LMD e de recursos da comunidade de malware. As assinaturas que o LMD usa são hashes de arquivo MD5 e correspondências de padrão HEX, eles também são facilmente exportados para qualquer número de ferramentas de detecção, como ClamAV .

Observação: este guia pressupõe que você esteja familiarizado com SSH e navegação básica por linha de comando. Estas instruções se aplicam principalmente a clientes que possuem servidores virtuais privados ou servidores dedicados .Nota: Se você não tiver acesso de nível raiz, não será capaz de fazer essas alterações

INSTALAÇÃO do detector de Malware MALDET

A instalação é muito simples:

[simterm}# cd / usr / local / src
# wget http://www.rfxn.com/downloads/maldetect-current.tar.gz
# tar -zxvf maldetect-current.tar.gz
# cd maldetect- 1.6.4
# ./install.sh[/simterm]

Certifique-se de alterar o número da versão acima para aquele que você realmente baixou.

Depois que a instalação for concluída com sucesso, você verá a seguinte saída.

Linux Malware Detect v1.6.4
(C) 2002-2019, R-fx Networks
(C) 2019, Ryan MacDonald
inotifywait (C) 2019, Rohan McGovern
Este programa pode ser redistribuído gratuitamente sob os termos da GNU GPL

instalação concluída em / usr / local / maldetect
arquivo de configuração: /usr/local/maldetect/conf.maldet
arquivo exec: / usr / local / maldetect / maldet
link exec: / usr / local / sbin / maldet
link exec: / usr / local / sbin / lmd
cron.daily: /etc/cron.daily/maldet

maldet (6073): {sigup} executando verificação de atualização de assinatura …
maldet (6073): {sigup} conjunto de assinaturas local é versão 2013102428301
maldet (6073): {sigup} novo conjunto de assinaturas (2013102428301) disponível
maldet (6073): {sigup} baixado http://www.rfxn.com/downloads/md5.dat
maldet (6073): {sigup} baixado http://www.rfxn.com/downloads/hex.dat
maldet (6073): {sigup} baixado http://www.rfxn.com/downloads/rfxn.ndb
maldet (6073): {sigup} baixado http://www.rfxn.com/downloads/rfxn.hdb
maldet (6073): {sigup} baixado http://www.rfxn.com/downloads/maldet-clean.tgz
maldet (6073): atualização do conjunto de assinaturas {sigup} concluída
maldet (6073): {sigup} 10849 assinaturas (8981 MD5 / 1868 HEX)

O pacote inotify-toolsé necessário se você deseja habilitar o monitoramento em tempo real . O monitoramento do iNotify permite notificações por meio do kernel do Linux. Pode ser instalado com o comando abaixo:

# yum install -y inotify-tools

ATUALIZAR MALDET

Para atualizar a versão do software atualmente instalada do Maldet, digite o seguinte:

# maldet -d

ou

# maldet –update-ver

As definições de vírus para Maldet são atualizadas diariamente, mas se você deseja atualizar as definições de vírus manualmente, digite o seguinte:

# maldet -u

DESINSTALAR MALDET

Maldet pode ser desinstalado rapidamente:

# cd / usr / local / src / maldetect- 1.6.4
# ./uninstall.sh

Certifique-se de alterar o número da versão acima para aquele que está instalado em seu servidor.

CONFIGURAÇÃO

Maldet pode ser configurado editando o arquivo abaixo:

# vi /usr/local/maldetect/conf.maldet

O conf.maldetarquivo de configuração padrão é o seguinte:

#
##
# Linux Malware Detect v1.6.4
# (C) 2002-2019, R-fx Networks <proj@r-fx.org>
# (C) 2019, Ryan MacDonald <ryan@r-fx.org>
# Este programa pode ser redistribuído gratuitamente sob os termos da GNU GPL v2
##
#
##
# [ Opções gerais ]
##

# Habilite ou desabilite alertas de e-mail, isso inclui a versão do aplicativo
# alertas, bem como relatórios de verificação automática / manual. Relatórios sob demanda
# ainda pode ser enviado usando ‘–report SCANID user@domain.com’.
# [0 = desativado, 1 = ativado]
email_alert = “1”

# Os endereços de e-mail de destino para relatórios de varredura automatizada / manual
# e alertas de versão do aplicativo.
# [vários endereços comma (,) spaced]
email_addr = “youremail@domain.com”

# Ignorar alertas de e-mail para relatórios de varredura em que todos os malwares acertam
# foram limpos automaticamente e com sucesso.
# [0 = desativado, 1 = ativado]
email_ignore_clean = “1”

# Isso controla as atualizações automáticas diárias dos arquivos de assinatura LMD
# e regras mais limpas. O processo de atualização de assinatura preserva qualquer
# assinatura personalizada ou arquivos mais limpos. É altamente recomendável que este
# ser habilitado como novas assinaturas lançadas várias vezes por semana.
# [0 = desativado, 1 = ativado]
autoupdate_signatures = “1”

# Isso controla as atualizações automáticas diárias da instalação do LMD.
# O processo de atualização da instalação preserva todas as opções de configuração
# junto com assinatura personalizada e arquivos mais limpos. É recomendado que
# isso seja habilitado para garantir a versão mais recente, recursos e correções de bugs
# estão sempre disponíveis.
# [0 = desativado, 1 = ativado]
autoupdate_version = “1”

# Isso controla a validação do hash MD5 executável LMD com conhecidos
# bom valor de hash upstream. Isso permite que o LMD substitua o
# executável / força uma reinstalação no caso do executável LMD
# está adulterado ou corrompido. Se você pretende fazer personalizações
# para o executável LMD, você deve desabilitar este recurso.
# [0 = desativado, 1 = ativado]
autoupdate_version_hashed = “1”

# O período de retenção, em dias, que coloca em quarentena, arquivos temporários e obsoletos
# informações da sessão devem ser retidas. Dados mais antigos do que este valor são excluídos
# com a execução diária do cron.
cron_prune_days = “21”

# Isso controla se a verificação automática diária da web padrão
# diretórios é executado via cron.
# [0 = desativado, 1 = ativado]
cron_daily_scan = “1”

# Quando definida, a opção import_config_url permite que um arquivo de configuração seja
# baixado de um URL remoto. Os locais conf.maldet e internals.conf são
# analisado seguido pelo arquivo de configuração importado. Como tal, apenas variáveis
# definidos no arquivo de configuração importado são substituídos e um conjunto completo de
# opções de configuração não são explicitamente necessárias no arquivo importado.
import_config_url = “”

# O intervalo de expiração para atualizar a versão local em cache do importado
# arquivo de configuração. O padrão é a cada 12h (43200 segundos), o que deve estar ok
# para a maioria das configurações.
import_config_expire = “43200”

# Quando definido, as opções import_custsigs _ * _ url permitem a assinatura personalizada
# arquivos a serem baixados de um URL remoto. ISTO IRÁ SOBRESCREVER QUALQUER COSTUME LOCAL
# ARQUIVOS DE ASSINATURA! É recomendado para implantações em grande escala para definir estes
# variáveis ??em um arquivo import_config_url.
import_custsigs_md5_url = “”
import_custsigs_hex_url = “”

##
# [ OPÇÕES DE DIGITALIZAÇÃO ]
##

# A profundidade máxima do diretório que o scanner irá pesquisar, um valor
# de 15 é recomendado.
# [mudar isso pode ter um impacto no desempenho da verificação]
scan_max_depth = “15”

# O tamanho mínimo de arquivo em bytes para um arquivo a ser incluído nas varreduras LMD.
# [mudar isso pode ter um impacto no desempenho da verificação]
scan_min_filesize = “24”

# O tamanho máximo de um arquivo a ser incluído nas varreduras LMD. Aceitaram
# formatos de valor são b, k, M. Ao usar o mecanismo clamscan, o max_filesize
# será definido dinamicamente com base no maior tamanho de arquivo conhecido do MD5
# arquivo de assinatura de hash.
# [mudar isso pode ter um impacto no desempenho da verificação]
scan_max_filesize = “2048k”

# A profundidade máxima de bytes que o mecanismo de varredura pesquisará no conteúdo de um arquivo.
# As regras de assinatura padrão esperam um tamanho de profundidade de pelo menos 65536 bytes.
# [mudar isso pode ter um impacto no desempenho da verificação]
scan_hexdepth = “65536”

# Use o pipe nomeado (FIFO) para passar os dados hexadecimais do conteúdo do arquivo em vez de stdin
# padrão; desempenho aprimorado e maior profundidade de digitalização. Isso é altamente
# recomendado e funciona na maioria dos sistemas. O hexfifo será desabilitado
# automaticamente se por algum motivo não puder ser utilizado com sucesso.
# [0 = desativado, 1 = ativado]
scan_hexfifo = “1”

# A profundidade máxima de bytes que o mecanismo de varredura pesquisará no conteúdo de um arquivo
#s ao usar o pipe nomeado (FIFO). O desempenho aprimorado permite maior
# scan depth sobre o valor padrão scan_hexdepth.
# [mudar isso pode ter um impacto no desempenho da verificação]
scan_hexfifo_depth = “524288”

# Se instalado, use o binário ClamAV clamscan como mecanismo de verificação padrão que
# fornece desempenho de varredura aprimorado em grandes conjuntos de arquivos. O clamscan
# engine é usado em conjunto com assinaturas nativas do ClamAV atualizadas
# por meio de freshclam junto com assinaturas LMD fornecendo
# recursos de detecção.
# [0 = desativado, 1 = ativado]
scan_clamscan = “1”

# Inclui a verificação de caminhos graváveis ??temporários conhecidos para
# -a | –al e -r | –tipos de varredura recentes.
scan_tmpdir_paths = “/ tmp / var / tmp / dev / shm”

# Permite que usuários não root realizem varreduras. Isso deve ser habilitado quando
# using mod_security2 upload scan ou se você quiser permitir usuários
# para realizar varreduras. Quando ativado, isso preencherá ‘pub /’ com o usuário
# quarentena, sessão e caminhos temporários próprios para facilitar as varreduras.
# [0 = desativado, 1 = ativado, desativado por padrão]
scan_user_access = “0”

# Processar CPU escalonamento (bom) nível de prioridade para operações de varredura.
# [-19 = prio alto, 19 = prio baixo, padrão = 19]
scan_cpunice = “19”

# Níveis de prioridade de agendamento de IO de processo (ionice) para operações de varredura.
# (usa a classe de agendamento de melhor esforço cbq [-c2])
# [0 = IO mais favorável, 7 = IO menos favorável]
scan_ionice = “6”

# Defina o limite rígido de uso da CPU para os processos de varredura find e clam (d). Esta
# requer que o binário ‘cpulimit’ esteja disponível no servidor. Os valores
# são expressos como porcentagem relativa * N núcleos no sistema. Um núcleo de 8 CPU
# servidor aceitaria valores de 0 – 800, 12 núcleos 0 – 1200 etc …
scan_cpulimit = “0”

# Como um design e caso de uso comum, o LMD normalmente verifica apenas os caminhos do espaço do usuário
# e, como tal, faz sentido ignorar os arquivos pertencentes ao root. Isto é
# recomendado para deixar isto ativado para melhor desempenho.
# [0 = desativado, 1 = ativado]
scan_ignore_root = “1”

# Isso permite que usuários ou grupos específicos sejam totalmente ignorados na varredura
# listas de arquivos. Esta opção deve ser usada com cuidado e não é ideal para
# ignorando falsos positivos. Em vez disso, você deve usar um dos arquivos para ignorar,
# como ignore_paths, para excluir um nome de arquivo ou caminho específico das varreduras.
# [lista de nomes de usuários e grupos com vírgulas ou espaços em branco]
scan_ignore_user = “”
scan_ignore_group = “”

# A quantidade máxima de tempo, em segundos, que a geração da lista de arquivos ‘localizar’
# será executado antes de ser encerrado. Todos os resultados de ‘encontrar’ até o ponto de
# terminação será totalmente verificada. Se estiver executando uma verificação completa de todos os caminhos do usuário
# em um servidor grande, é razoável esperar que a operação de localização leve um
# muito tempo para ser concluído e, como tal, este recurso pode interferir. Em tais casos,
# este recurso pode ser desabilitado / modificado por varredura usando o
# ‘-co | –config-option’ Opção CLI, como:
# “maldet -co scan_find_timeout = 0 -a / home /? / public_html”.
# [0 = desativado, 14400 = tempo limite recomendado de 4 horas]
scan_find_timeout = “0”

# A operação diária de ‘localização’ do cron realizada pelo LMD detecta criação / modificação recente
# arquivos do usuário. Esta operação ‘localizar’ pode consumir muitos recursos e pode
# seja desejável manter os resultados da lista de arquivos para que outros aplicativos / tarefas
# pode fazer uso dos resultados. Quando scan_export_filelist está habilitado, a maioria
# conjunto de resultados recente será salvo em ‘/usr/local/maldetect/tmp/find_results.last’
# [0 = desativado, 1 = ativado]
scan_export_filelist = “0”

##
# [OPÇÕES DE QUARENTENA]
##
# A ação de quarentena padrão para ataques de malware
# [0 = alerta apenas, 1 = mover para quarentena e alerta]
quarantine_hits = “1”

# Tente limpar injeções de malware com base em string
# [NOTA: quarantine_hits = 1 obrigatório]
# [0 = desativado, 1 = limpo]
quarantine_clean = “1”

# A ação de suspensão padrão para usuários com acessos
# Cpanel suspender ou definir shell / bin / false em não Cpanel
# [NOTA: quarantine_hits = 1 obrigatório]
# [0 = desativado, 1 = suspender conta]
quarantine_suspend_user = “0”

# O valor mínimo de ID do usuário que pode ser suspenso
# [padrão = 500]
quarantine_suspend_user_minuid = “500”

# Ao usar um mecanismo de verificação externo, como o ClamAV, os arquivos devem ser
# colocado em quarentena se um erro do mecanismo do scanner for recebido?
# O padrão é 1, sempre quarentena, pois o ClamAV gera um
# código de saída de erro para erros triviais, como arquivo não encontrado. Como tal, um
# grande porcentagem de varreduras terá o ClamAV saindo com o código de erro 2.
# [0 = não colocar em quarentena, 1 = sempre colocar em quarentena]
quarantine_on_error = “1”

##
# [OPÇÕES DE MONITORAMENTO]
##
# A opção de inicialização padrão para o modo de monitor, seja ‘usuários’ ou caminho para a linha
# arquivo espaçado contendo caminhos locais para monitorar.
#
# Esta opção é opcional para o script de inicialização baseado em init, maldet.sh. Esta
# o valor é ignorado quando ‘/ etc / sysconfig / maldet’ ou ‘/ etc / default / maldet’ é
# presente com um valor definido para.
#
# Esta opção é OBRIGATÓRIA para o script systemd maldet.service. Aquele script
# verifica apenas o valor de. O serviço falhará em
# iniciar se um valor não for fornecido.
# default_monitor_mode = “usuários”
# default_monitor_mode = “/ usr / local / maldetect / monitor_paths”
default_monitor_mode = “”

# O número base de arquivos que podem ser vistos em um caminho
# [máximo de relógios de arquivo = usuários inotify_base_watches *]
inotify_base_watches = “16384”

# O tempo de suspensão em segundos entre as execuções do monitor para verificar os arquivos
# que foi criado / modificado / movido
inotify_sleep = “30”

# O intervalo em segundos que o inotify irá recarregar a configuração
# dados, incluindo importações de configuração remota.
inotify_reloadtime = “3600”

# O ID de usuário mínimo que será adicionado ao monitoramento de caminho quando
# a opção USERS é especificada
inotify_minuid = “500”

# Este é o html / web root para usuários relativos ao homedir, quando
# esta opção é definida, os usuários só terão o webdir monitorado
# [lista espaçada por vírgulas, desmarque a opção para monitorar a casa do usuário padrão]
inotify_docroot = “public_html, public_ftp”

# Nível de prioridade de escalonamento de CPU de processo (bom) para o processo de monitoramento.
# [-19 = prio alto, 19 = prio baixo, padrão = 15]
inotify_cpunice = “18”

# Níveis de prioridade de agendamento de IO de processo (ionice) para operações de varredura.
# (usa a classe de agendamento de melhor esforço cbq [-c2])
# [0 = IO mais favorável, 7 = IO menos favorável]
inotify_ionice = “6”

# Definir limite rígido de uso de CPU para processos de monitoramento de inotify. Isto exige
# o binário ‘cpulimit’ disponível no servidor. Os valores são expressos
# como porcentagem relativa * N núcleos no sistema. Um sistema de núcleo de 8 CPU aceitaria
# valores de 0 a 800, um sistema de 12 núcleos aceitaria 0 a 1200 etc …
inotify_cpulimit = “0”

# Registrar todos os arquivos verificados pelo modo de monitoramento do inotify; isso não é recomendado
# e eliminará seu arquivo ‘event_log’, destinado apenas para fins de depuração.
inotify_verbose = “0”

##
# [ANÁLISE ESTATÍSTICA]
# Este é um recurso beta e, como tal, deve ser usado com cautela.
# Atualmente, esse recurso pode ter um impacto substancialmente negativo
# no desempenho da varredura, especialmente com grandes conjuntos de arquivos.
##
# O teste de comprimento da string é usado para identificar ameaças com base no
# comprimento da string ininterrupta mais longa em um arquivo. Isso é
# útil visto que o código ofuscado é frequentemente armazenado usando métodos de codificação
# que produzem strings muito longas sem espaços (por exemplo: base64)
# [comprimento da string em caracteres, padrão = 150000]
string_length_scan = “0” # [0 = desativado, 1 = ativado]
string_length = “150000” # [comprimento máximo da string]

Você pode editar os seguintes valores para configurar a Maldet de acordo com suas necessidades

email_alert : Se desejar receber alertas por e-mail, defina como 1.email_subj : Defina o assunto do seu e-mail aqui.email_addr : Adicione seu endereço de e-mail para receber alertas de malware.email_ignore_clean: Quando os alertas de malware forem limpos automaticamente (verifique as próximas duas opções), ignore o envio de alertas de e-mail. Isso é desabilitado por padrão. Defina-o como 1 para ativá-lo, se você configurou uma varredura diária automatizada que detecta e limpa os acessos e não deseja ser alertado por e-mail.quar_hits : A ação de quarentena padrão para ocorrências de malware, deve ser definida como 1. Os arquivos afetados serão movidos para a quarentena.quar_clean : Eliminando injeções de malware detectadas, deve ser definido como 1.quar_susp : A ação de suspensão padrão para usuários com acessos, defina-a de acordo com seus requisitos.quar_susp_minuid : ID de usuário mínima que pode ser suspensa.inotify_minuid: O ID de usuário mínimo acima do qual os usuários precisam ser monitorados. O valor padrão é 500.inotify_docroot: O diretório da web relativo ao diretório inicial dos usuários. Por padrão, é definido como public_html. Se for definido, apenas este diretório da web será monitorado.

CRONJOB PARA AUTOMATIZAR VERIFICAÇÕES PROGRAMADAS

Durante a instalação do Maldet, um script de trabalho cron diário é instalado em /etc/cron.daily/maldet.

O cronjob instalado pelo Linux Malware Detect é usado para realizar atualizações diárias de arquivos de assinatura, manter os dados de sessão, temp e quarentena com não mais de 14 dias e executa uma verificação diária de alterações recentes do sistema de arquivos.

Se o monitoramento em tempo real baseado no inotify estiver habilitado, o cron job diário também verifica os arquivos criados / atualizados recentemente em busca de malware. As estruturas de pasta para as configurações de painel de controle mais populares: Ensim, Plesk, DirectAdmin, Cpanel, ISPConfig, VirtualMin, VestaCP, ISPManager e Froxlor foram incluídas.

Você deve garantir a compatibilidade com a estrutura de homedirs de seus servidores e certificar-se de que corresponde a este arquivo cron.

Observe as seções específicas do painel de controle neste arquivo cron:

# se estivermos executando o monitoramento do inotify, envie um resumo diário do hit
if [“$ (ps -A –user root -o” cmd “| grep -E maldetect | grep -E inotifywait)”]; então
$ inspath / maldet –monitor-report >> / dev / null 2> & 1
elif [“$ cron_daily_scan” == “1”]; então
if [-d “/ home / virtual”] && [-d “/ usr / lib / opcenter”]; então
# ensim
$ inspath / maldet -b -r / home / virtual /? / fst / var / www / html /, / home / virtual /? / fst / home /? / public $
elif [-d “/ etc / psa”] && [-d “/ var / lib / psa”]; então
# psa
$ inspath / maldet -b -r / var / www / vhosts /? / $ scan_days >> / dev / null 2> & 1
elif [-d “/ usr / local / directadmin”]; então
# DirectAdmin
$ inspath / maldet -b -r / home? /? / domains /? / public_html /, / var / www / html /? / $ scan_days >> / dev $
elif [-d “/ var / www / clients”]; então
# ISPConfig
$ inspath / maldet -b -r / var / www / clients /? / web? / web, / var / www / clients /? / web? / subdomains, / var $
elif [-d “/ etc / webmin / virtual-server”]; então
# Virtualmin
$ inspath / maldet -b -r / home /? / public_html /, / home /? / domains /? / public_html / $ scan_days >> / $
elif [-d “/ usr / local / ispmgr”] || [-d “/ usr / local / mgr5”]; então
# ISPmanager
$ inspath / maldet -b -r / var / www /? / data /, / home /? / data / $ scan_days >> / dev / null 2> & 1
elif [-d “/ var / clientes / webs”]; então
# froxlor
$ inspath / maldet -b -r / var / customers / webs / $ scan_days >> / dev / null 2> & 1
elif [-d “/ usr / local / vesta”]; então
# VestaCP
$ inspath / maldet -b -r / home /? / web /? / public_html /, / home /? / web /? / public_shtml /, / home /? / tmp / $
elif [-d “/ usr / share / dtc”]; então
# DTC
if [-f / var / lib / dtc / saved_install_config]; então
. / var / lib / dtc / saved_install_config
fi
$ inspath / maldet -b -r $ {conf_hosting_path: – / var / www / sites} /? /? / subdomains /? / html / $ scan_d $
senão
# cpanel, interworx e outras configurações padrão home / user / public_html
$ inspath / maldet -b -r / home? /? / public_html /, / var / www / html /, / usr / local / apache / htdocs / $ sca $
fi
fi

Para ativar alertas de e-mail quando malware for detectado, você precisa abrir o arquivo de configuração Maldet, que está localizado em: /usr/local/maldetect/conf.maldet

email_alert = 1
email_subj = “Alerta Maldet de $ (hostname)”
email_addr = “email@domain.com”

EXEMPLOS DE USO do detector de Malware ( Maldet)

Para verificar uma pasta , por exemplo, /homevocê deve inserir:

# maldet -a / home

Para verificar uma pasta com um caractere curinga , por exemplo, todas as pastas que /homecomeçam com um, rvocê deve inserir:

# maldet -a / home / r?

Execute uma varredura curinga apenas para uma extensão de arquivo específica :

# maldet -a /var/www/html/*.php

Verifique os arquivos que foram criados / modificados nos últimos 7 dias:

# maldet -r / var / www / html / 7

Verificar todos os arquivos em um caminho (padrão: / home, curinga:?)

# maldet -a / home /? / public_html

Para executar varreduras em segundo plano , digite o seguinte (ideal para varreduras maiores):

# maldet -b -r / home / username /

Examine o relatório de verificação de malware executando o seguinte comando e anexando o ID do relatório de verificação:

# maldet – número do relatório-xxxx.xxxxx

Envie um relatório de varredura por e-mail para um endereço de e-mail fornecido:

# maldet –report SCANID youremail@domain.com

Para colocar os arquivos infectados em quarentena , execute o seguinte comando com o ID do relatório de verificação. Os arquivos infectados serão colocados em quarentena para limpeza:

# maldet -q SCAN ID
# maldet –quarantine SCANID

Limpe todos os resultados de malware de uma verificação anterior:

# maldet -n SCAN ID
# maldet –clean SCAN ID

Restaure um arquivo que você já colocou em quarentena. Isso pode ser útil no caso de você ter um falso positivo que levou a um arquivo legítimo sendo colocado em quarentena:

# maldet -s FILENAME # maldet -s SCANID
# maldet –restore FILENAME

Obtenha uma lista de todos os relatórios:

# maldet -e list

Limpar registros, fila de quarentena, sessão e dados temporários:

# maldet -p

Faça upload de malware suspeito para rfxn.com para revisão e hashing em assinaturas:

# maldet -c caminho / para / nome do arquivo

Veja os eventos do arquivo de log maldet .

# maldet -l

O que dá em um servidor ativo uma saída semelhante:

26 de maio 07:39:41 hostname maldet (22671): {mon} verificou 47 arquivos novos / alterados com o mecanismo clamav
26 de maio 07:40:19 hostname maldet (22674): {mon} verificou 50 arquivos novos / alterados com o mecanismo clamav
26 de maio 07:40:56 hostname maldet (22674): {mon} verificou 32 arquivos novos / alterados com o mecanismo clamav
26 de maio 07:41:33 hostname maldet (22674): {mon} verificou 24 arquivos novos / alterados com o mecanismo clamav
26 de maio 07:42:10 hostname maldet (22674): {mon} verificou 11 arquivos novos / alterados com o mecanismo clamav
26 de maio 07:42:47 hostname maldet (22674): {mon} verificou 8 arquivos novos / alterados com mecanismo clamav
26 de maio 07:43:24 hostname maldet (22674): {mon} verificou 6 arquivos novos / alterados com mecanismo clamav
26 de maio 07:44:00 hostname maldet (22674): {mon} verificou 25 arquivos novos / alterados com mecanismo clamav

Observe o uso do mecanismo ClamAV. Para obter mais informações, consulte a seção Integração do ClamAV abaixo.

MONITORAMENTO INOTIFY

O recurso de monitoramento inotify no LMD é projetado para monitorar usuários em tempo real para operações de criação / modificação / movimentação de arquivos. Esta opção requer um kernel que suporte inotify_watch(CONFIG_INOTIFY) que é encontrado nos kernels 2.6.13+ e CentOS / RHEL 5 por padrão.

Existem três modos com os quais o monitor pode ser executado e eles se relacionam com o que será monitorado, são USUÁRIOS | CAMINHOS | ARQUIVOS.

por exemplo: maldet –monitor userspor exemplo: maldet –monitor /root/monitor_pathspor exemplo: maldet –monitor /home/mike,/home/ashton

Você pode executar o Maldet como um daemon da seguinte maneira:

MONITORE USUÁRIOS

A opção de usuários pegará os diretórios pessoais de todos os usuários do sistema que possuem um uidmaior que inotify_minuide os monitorará. Se inotify_docrootfor definido, o diretório da web dos usuários, se existir, será monitorado apenas:

# maldet –monitor users
ou
# maldet -m users

CAMINHOS DE MONITORAMENTO

Como alternativa, você pode monitorar caminhos. Forneça uma lista de caminhos separados por vírgulas para monitorar:

# maldet –monitor / home, / var, / tmp
ou
# maldet -m / home, / var, / tmp

O exemplo abaixo exibe a saída de uma lista de caminhos monitorados com espaçamento de vírgula:

maldet (5330): {mon} definir inotify max_user_instances para 128
maldet (5330): {mon} definir inotify max_user_watches para 61440
maldet (5330): {mon} adicionado / var para inotificar a matriz de monitoramento
maldet (5330): {mon} adicionou / home / xmodulo para inotificar a matriz de monitoramento
maldet (5330): {mon} iniciando o processo de notificação em 1 caminho, isso pode demorar um pouco …
maldet (5330): {mon} inicialização do inotify bem-sucedida (pid: 4154)
maldet (5330): {mon} log de monitoramento inotify: / usr / local / maldetect / inotify / inotify_log

MONITORE ARQUIVOS

Se você acredita que há problemas com arquivos específicos, você pode monitorar continuamente arquivos específicos fornecendo uma lista de arquivos separados por vírgulas:

# maldet –monitor FILE1, FILE2, … FILEx
ou
# maldet -m FILE1, FILE2, … FILEx

Rastreie eventos no arquivo de registro do monitor:

# tail -f / usr / local / maldetect / logs / inotify_log

Encerrar / eliminar o serviço de monitoramento de notificação

# maldet -k

INICIE O MONITORAMENTO INOTIFY NA INICIALIZAÇÃO

Ao iniciar a maldet no modo de monitoramento, ele verifica os arquivos à medida que são modificados ou carregados nos diretórios selecionados. Infelizmente, por padrão, o monitoramento iNotify não iniciará corretamente na reinicialização do sistema.

Existem três opções em torno disso:

configurar o serviço Maldet configurando os valores de caminhos corretos e modo de monitoramentoConfigure um cron job que é executado no momento da inicialização e inicia o monitoramento do iNotifyCrie um script a ser colocado no arquivo rc.local

1. Configure o serviço detctor de malware ( Maldet )

Para verificar novamente o status atual da Maldet, digite o seguinte:

systemctl status maldet

O que deve dar uma saída semelhante:

? maldet.service – monitoramento de detecção de malware do Linux – maldet
Carregado: carregado (/usr/lib/systemd/system/maldet.service; ativado; predefinição do fornecedor: desativado)
Ativo: falhou (Resultado: recursos) desde Qui 2019-05-16 02:42:56 CEST; 1 semanas 4 dias atrás
Processo: 3487 ExecStart = / usr / local / maldetect / maldet –monitor $ default_monitor_mode (código = encerrado, status = 0 / SUCESSO)

Aviso: o diário foi girado desde que a unidade foi iniciada. A saída do log está incompleta ou indisponível.
[root @ xxx ~] # systemctl start maldet
O trabalho para maldet.service falhou porque um limite de recurso configurado foi excedido. Consulte “systemctl status maldet.service” e “journalctl -xe” para obter detalhes.

Muito provavelmente, você descobrirá que o modo de monitoramento falhou. Isso geralmente se deve a um de dois motivos:

O modo de monitoramento correto não foi definidoOs caminhos corretos para monitorar não foram definidos

Para resolver o problema 1 (veja o exemplo de mensagem de erro acima), interrompa a execução do serviço e tente reiniciar:

systemctl stop maldet

Edite /usr/lib/systemd/system/maldet.servicee substitua a linha:

ExecStart = / usr / local / maldetect / maldet –monitor $ default_monitor_mode

com

ExecStart = / usr / local / maldetect / maldet –monitor USUÁRIOS

Informe o systemd sobre o arquivo de configuração atualizado:

systemctl daemon-reload

Em seguida, reinicie o serviço:

systemctl start maldet.service

Verifique o status da maldet. Certifique-se de que não está mais travando:

systemctl status maldet.service

problema 2 : caso os caminhos corretos para monitorar não tenham sido definidos, você receberá um erro semelhante:

Processo: 24473 ExecStart = / usr / local / maldetect / maldet –monitor / usr / local / maldetect / monitor_paths (código = encerrado, status = 0 / SUCESSO)

Isso significa que você terá que definir os valores do caminho no /usr/lib/systemd/system/monitor_pathsarquivo como uma lista separada por vírgulas, por exemplo:

/ home, / var, / tmp

Informe o systemd sobre o arquivo de configuração atualizado:

systemctl daemon-reload

Em seguida, reinicie o serviço:

systemctl start maldet.service

Verifique o status da maldet. Certifique-se de que não está mais travando:

systemctl status maldet.service

2. Configurar Cron

Abra o crontab com o seguinte comando:

crontab -e

Cole a seguinte linha na parte inferior:

@reboot / usr / local / sbin / maldet –monitor / home

Salve e feche o arquivo. Agora você habilitou com sucesso a verificação de malware em tempo real usando caminhos para maldet. O cron acima irá verificar todos os diretórios em /home.

Lembre-se de que você também pode monitorar usuários e arquivos individuais usando o mesmo método. Por favor, consulte os exemplos acima e ajuste seu cron de acordo.

3. Configure rc.local

O script /etc/rc.local(Ubuntu / Debian) ou /etc/rc.d/rc.local(CentOS, Fedora) deve ser usado pelo administrador do sistema. É tradicionalmente executado após todos os serviços normais do sistema serem iniciados, no final do processo de mudança para um nível de execução multiusuário.

Para configurar um script de inicialização rc.local, primeiro criaremos um arquivo que inclui todos os diretórios que desejamos monitorar.

nano / usr / local / maldetect / monitor_paths

Cole caminhos para todos os diretórios que deseja monitorar como uma lista separada por vírgulas neste arquivo.

Abra o arquivo /etc/rc.localou /etc/rc.d/rc.localusando um editor de texto

nano /etc/rc.local (Debian / Ubuntu)
nano /etc/rc.d/rc.local (CentOS, Fedora)

Cole a seguinte linha antes da linha de fechamento exit 0

maldet –monitor / usr / local / maldetect / monitor_paths

Lembre-se de que seu script criado deve receber permissões de execução :

chmod + x / usr / local / maldetect / monitor_paths

IGNORAR ARQUIVOS

Existem três arquivos para ignorar disponíveis no Linux Malware Detect. Eles podem ser usados ??para excluir arquivos das verificações diárias de malware.

IGNORE_PATHS

Este é um arquivo com espaçamento de linha para caminhos que devem ser excluídos dos resultados da pesquisa:

# / usr / local / maldetect / ignore_paths

IGNORE_SIGS

Este é um arquivo com espaçamento de linha para assinaturas que devem ser removidas da verificação de arquivo:

# / usr / local / maldetect / ignore_sigs

IGNORE_INOTIFY

Este é um arquivo com espaçamento de linha para caminhos que devem ser excluídos do monitoramento do Inotify:

# / usr / local / maldetect / ignore_inotify

IGNORE_EXTENSIONS

Adicione as extensões dos tipos de arquivo que você deseja excluir das verificações diárias (um por linha):

# /usr/local/maldetect/ignore_file_ext

INTEGRAÇÃO CLAMAV

Info! Nosso guia de instalação para o pacote ClamAV pode ser encontrado nesta página

ClamAV e Maldet estão totalmente integrados. Você pode usar o ClamAV como mecanismo de verificação para Maldet. Isso acelera o processo de varredura e, além disso, as definições de vírus do ClamAV agora também são usadas durante a varredura.

O benefício dessa integração é uma verificação de malware mais rápida e eficaz, ou seja; é mais provável que você identifique ameaças potenciais.

COMO CONFIGURAR

Certifique-se de que o ClamAV esteja instaladoHabilite o ClamAV no arquivo de configuração LMD:

/usr/local/maldetect/conf.maldet

Habilite a integração do ClamAV configurando scan_clamscanpara 1

# Use com ClamAV
scan_clamscan = “1”

Conclusão

Após as configurações detector de malware usando o maldet, o comutadores assim como servidores estão protegidas das principais ameaças que atingem os usuários e administradores de servidores e sistemas.

Fonte: WokTron

Seguem abaixo mais algumas matérias relacionadas

ANTIVIRUS

DDOS

Dicas e truques com SSH

FONTE: Blog SempreUpdate
Meu agradecimento pelas excelentes publicações!