Este post também está disponível em:
O AntiVírus ClamAV é bastante utilizado em servidores linux. Possui um mecanismo antivírus eficiente para detectar trojans, vírus, malware, phishing e outras ameaças. Como padrão o ClamAV disponibiliza algumas assinaturas antivírus que são atualizadas através de seu repositório padrão, porém, principalmente em Servidores Web, com PHP, Python etc… onde são instalados todo tipo de aplicação, incluindo WordPress, Joomla… ou MailServers que recebem phishing , vírus, trojans, nos mais diversos arquivos e formatos, se faz necessário assinaturas adicionais para o ClamAV.
Na Web existem vários projetos e sites que oferecem assinaturas grátis ou pagas para o ClamAV, porém é muito importante identificar a qualidade destas assinaturas, é bastante comum encontrar assinaturas que irão gerar o que chamamos de “falso positivo” .
A eXtremeSHOK através do GitHub criou um projeto com nome ClamAV-unofficial-sigs que reúne várias assinaturas confiáveis, disponíveis na Web para o ClamAV, mantendo tudo sempre atualizado .
Além das assinaturas disponíveis pelo projeto, vamos adicionar parte das assinaturas confiáveis que utilizamos com nossos clientes de Gerenciamento de Servidor Linux.
Vamos abordar a seguir o passo a passo para a correta instalação e configuração do ClamAV-unofficial-sigs em servidores CentOS e CloudLinux.
Instale o repositorio epel-release
yum -y update yum -y install epel-release yum -y update
Verifique em seu firewall e abra se necessário as portas:
rsync: TCP porta 873 wget/curl : TCP porta 443
Instale o ClamAV e componentes:
yum -y install clamav-server clamav-data clamav-update clamav-filesystem clamav clamav-scanner-systemd clamav-devel clamav-lib clamav-server-systemd
Configure o SELinux para permitir o Clamav ( Se Selinux estiver habilitado)
** Verifique se o Selinux está habilitado. Se estiver desabilitado pule este passo.
sestatus
Se o resultado for enable prossiga (se disable pule para usuário ClamAV):
setsebool -P antivirus_can_scan_system 1 setsebool -P clamd_use_jit 1
Crie o grupo e usuário para o ClamAV
groupadd clamav useradd -g clamav -s /bin/false -c "Clam AntiVirus" clamav
Crie o diretório, altere grupo e usuário para ClamAV
mkdir /var/clamav chown clamav.clamav /var/clamav
Removendo Example
sed -i '/^Example$/d' /etc/clamd.d/scan.conf
Edite o arquivo scan.conf
nano /etc/clamd.d/scan.conf
Localize LocalSocket e substitua por:
LocalSocket /var/run/clamd.scan/clamd.sock/g
A seguir no shell do linux cole o bloco abaixo:
cat << EOF > /etc/tmpfiles.d/clamav.conf /var/run/clamd.scan 0755 clam clam EOF mv /usr/lib/systemd/system/clamd\@scan.service /usr/lib/systemd/system/clamd\@scan.old cat << EOF > /usr/lib/systemd/system/clamd\@scan.service # Run the clamd scanner [Unit] Description = clamd scanner (%i) daemon After = syslog.target nss-lookup.target network.target [Service] Type = simple ExecStart = /usr/sbin/clamd --foreground=yes Restart = on-failure IOSchedulingPriority = 7 CPUSchedulingPolicy = 5 Nice = 19 PrivateTmp = true MemoryLimit=500M CPUQuota=50% [Install] WantedBy = multi-user.target EOF systemctl daemon-reload
Configurando o FreshClam, cole o bloco abaixo:
sed -i '/^Example$/d' /etc/freshclam.conf sed -i '/REMOVE ME/d' /etc/sysconfig/freshclam cat << EOF > /usr/lib/systemd/system/clam-freshclam.service # Run the freshclam as daemon [Unit] Description = freshclam scanner After = network.target [Service] Type = forking ExecStart = /usr/bin/freshclam -d Restart = on-failure IOSchedulingPriority = 7 CPUSchedulingPolicy = 5 Nice = 19 PrivateTmp = true [Install] WantedBy = multi-user.target EOF systemctl daemon-reload freshclam systemctl enable clam-freshclam.service systemctl start clam-freshclam.service
Habilitar, Iniciar e verificar se está tudo ok com status:
systemctl enable clamd@scan systemctl start clamd@scan systemctl status clamd@scan
Instalando Dependências:
yum -y install bind-utils rsync
Instalação do clamav-unofficial-sigs:
mkdir -p /usr/local/sbin/ wget https://raw.githubusercontent.com/extremeshok/clamav-unofficial-sigs/master/clamav-unofficial-sigs.sh -O /usr/local/sbin/clamav-unofficial-sigs.sh; chmod 755 /usr/local/sbin/clamav-unofficial-sigs.sh mkdir -p /etc/clamav-unofficial-sigs/ wget https://raw.githubusercontent.com/extremeshok/clamav-unofficial-sigs/master/config/master.conf -O /etc/clamav-unofficial-sigs/master.conf wget https://raw.githubusercontent.com/extremeshok/clamav-unofficial-sigs/master/config/user.conf -O /etc/clamav-unofficial-sigs/user.conf
Se sua distribuição linux é CentOS 7 ou CloudLinux 7 copie e cole as instruções abaixo:
os_conf="os.centos7-atomic.conf" wget "https://raw.githubusercontent.com/extremeshok/clamav-unofficial-sigs/master/config/os/${os_conf}" -O /etc/clamav-unofficial-sigs/os.conf
**Nota: para outras distribuições Linux, acesse o link abaixo, e em “Operating System Specific Install” , selecione a melhor opção para seu Linux. clamav-unofficial-sigs
Antes de seguir para o próximo passo, cadastre-se em dois sites que oferecem excelentes assinaturas para o ClamAV.
1 – MalwarePatrol Free
Crie sua conta grátis em : https://www.malwarepatrol.net/free-guard-upgrade-option/
Será exibido em seu browser “Password/Receipt:”
Guarde esta informação, precisaremos dela no próximo passo.
2 – SecuriteInfo Free
Crie sua conta grátis em : https://www.securiteinfo.com/clients/customers/signup
Você receberá um e-mail com um link para ativar sua conta, após a ativação , receberá outro email com seu usuário e senha para login no site.
Faça login e acesse : https://www.securiteinfo.com/clients/customers/account
Clique na aba Setup, verá uma URL a frente de DatabaseCustomURL
Precisamos localizar seu identificador individual que é composto por uma sequencia de 128 caracteres.
Na url a frente de DatabaseCustomURL copie a sequencia após
https://www.securiteinfo.com/get/signatures/
até “/”
Guarde estas informações, vamos utilizá-las no próximo passo.
Os outros repositórios utilizados pelo clamav-unofficial-sigs não necessitam de cadastro, apenas para conhecimento, irei citá-los abaixo:
Yara Rules: https://github.com/Yara-Rules/rules
Urlhaus: https://urlhaus.abuse.ch/
Linux Malware Detect Assinaturas: https://www.rfxn.com/projects/linux-malware-detect/
** Existem na web muitas assinaturas grátis para o ClamAV, infelizmente muitas geram falso positivos na detecção do Virus/Malware. É muito importante verificar na comunidade e outros meios a confiança destas novas assinaturas.
Vamos adicionar no arquivo de configuração que iremos abordar a seguir, dois novos repositórios adicionais de assinaturas para o ClamAV.
MailOrder: https://www.mailborder.com/
MalwareExpert: https://malware.expert/
Configuração das assinaturas para o Clamav:
Edite o arquivo user.conf :
nano /etc/clamav-unofficial-sigs/user.conf
Localize e remova o # das seguintes linhas:
securiteinfo_authorisation_signature="YOUR-SIGNATURE-NUMBER"
Substitua YOUR-SIGNATURE-NUMBER pelo código com 128 caracteres que guardou ao seguir os passos acima em SecuriteInfo Free
A seguir vamos adicionar mais algumas assinaturas.
localize e remova o # das linhas:
declare -a additional_dbs=( #ftp://ftp.example.net/pub/sigs.ndb #http://www.example.org/sigs.ldb )
apague as linhas em negrito(cinza) acima e cole o conteúdo abaixo :
http://cdn.malware.expert/malware.expert.ndb http://cdn.malware.expert/malware.expert.hdb http://cdn.malware.expert/malware.expert.ldb http://cdn.malware.expert/malware.expert.fp http://sigs.mailborder.com/sigwhitelist.ign2 http://sigs.mailborder.com/sanesecurity.ftm http://sigs.mailborder.com/junk.ndb http://sigs.mailborder.com/jurlbl.ndb http://sigs.mailborder.com/phish.ndb http://sigs.mailborder.com/rogue.hdb http://sigs.mailborder.com/scam.ndb http://sigs.mailborder.com/spamimg.hdb http://sigs.mailborder.com/spamattach.hdb http://sigs.mailborder.com/blurl.ndb http://sigs.mailborder.com/foxhole_generic.cdb http://sigs.mailborder.com/foxhole_filename.cdb http://sigs.mailborder.com/malwarehash.hsb http://sigs.mailborder.com/hackingteam.hsb http://sigs.mailborder.com/winnow_malware.hdb http://sigs.mailborder.com/winnow_malware_links.ndb http://sigs.mailborder.com/winnow_extended_malware.hdb http://sigs.mailborder.com/winnow.attachments.hdb http://sigs.mailborder.com/winnow_bad_cw.hdb http://sigs.mailborder.com/bofhland_cracked_URL.ndb http://sigs.mailborder.com/bofhland_malware_URL.ndb http://sigs.mailborder.com/bofhland_phishing_URL.ndb http://sigs.mailborder.com/bofhland_malware_attach.hdb http://sigs.mailborder.com/crdfam.clamav.hdb http://sigs.mailborder.com/porcupine.ndb http://sigs.mailborder.com/porcupine.hsb http://sigs.mailborder.com/spam.ldb http://sigs.mailborder.com/spear.ndb http://sigs.mailborder.com/spearl.ndb http://sigs.mailborder.com/foxhole_js.cdb
Execute o Script abaixo para baixar pela primeira vez todas as assinaturas e finalizar algumas configurações. Este processo pode demorar um pouco, aguarde até o final.
/usr/local/sbin/clamav-unofficial-sigs.sh --force
O Script a seguir irá instalar instruções para manter atualizado o sistema e assinaturas:
/usr/local/sbin/clamav-unofficial-sigs.sh --install-cron
O Script a seguir irá instalar instruções para o logrotate referente a clamav-unofficial-sigs:
/usr/local/sbin/clamav-unofficial-sigs.sh --install-logrotate /usr/local/sbin/clamav-unofficial-sigs.sh --install-man
Nota final: Clientes da HelpSysAdmin de Gerenciamento de Servidor possuem estas e muitas outras assinaturas confiáveis para o ClamAV.