Descreveremos e resolveremos os erros mais comuns que ocorrem ao usar o antivírus ClamAV (clamscan, clamdscan e freshclam).
Os erros de compilação do ClamAV a partir do seu código-fonte não são abordados aqui.
clamdscan "Can't open file or directory ERROR"
Ao verificar arquivos ou diretórios, é possível que alguns deles gerem este erro. Os arquivos correspondentes não são verificados, passando sem a análise de malwares.
Isso pode ser devido às permissões dos diretórios ou arquivos. Portanto, você deve verificar se o clamdscan tem permissão de leitura e escrita nesses diretórios e arquivos.
Também pode ser causado pelo AppArmor. A solução é colocar o clamd no modo "complain" do AppArmor. Aqui está a solução para o Debian:
apt-get install apparmor-utils
aa-complain /usr/sbin/clamd
clamdscan "File path check failure: Permission denied. ERROR"
Para corrigir este erro, você pode testar as 3 soluções a seguir:
- Defina os arquivos e diretórios verificados para a permissão 666: chmod 666 *
- Use o clamdscan com a opção --fdpass: clamdscan --fdpass
- Use o clamdscan com a opção --stream: clamdscan --stream
"Ignoring mirror (due to previous errors)" nos logs do freshclam
Quando esta mensagem de erro aparece, significa que você não conseguiu baixar os bancos de dados de assinaturas do antivírus.
Esta mensagem corresponde a uma versão anterior ao ClamAV 0.102.
A partir da versão 0.102, o código da parte de rede do freshclam foi radicalmente alterado. Consequentemente, para resolver este erro, é necessário atualizar sua versão do ClamAV.
"nonblock_connect: connect(): fd=5 errno=101: Network is unreachable" e "WARNING: getpatch: Can't download daily-xxx.cdiff from db.local.clamav.net" nos logs do freshclam
Esta mensagem indica uma impossibilidade de se conectar aos servidores do ClamAV para baixar os bancos de dados de assinaturas do antivírus.
- Ou o seu servidor tem um problema de conexão à Internet.
- Ou você está usando um proxy (transparente ou não). O Freshclam prefere uma conexão direta com os servidores do ClamAV e tem dificuldades com conexões por Proxy. Principalmente se o Proxy modificar as propriedades da conexão HTTP(S), como alterar o User-Agent.
- Ou você está usando uma versão muito antiga do antivírus ClamAV, e é essencial atualizá-lo.
"WARNING: Can't read main.cvd header from db.local.clamav.net (IP: )" nos logs do freshclam
Você não conseguiu baixar os bancos de dados de assinaturas do antivírus.
É possível que o arquivo mirrors.dat esteja saturado. Este arquivo serve para colocar na lista negra servidores espelho do ClamAV que apresentam erro. Se você teve uma desconexão na Internet, é possível que o freshclam tenha colocado todos os espelhos na lista negra e não haja mais nenhum disponível.
A solução é excluir este arquivo (por exemplo, /var/lib/clamav/mirrors.dat no Debian) e reiniciar o freshclam.
Note que, a partir das versões 0.100, esse problema não existe mais. Portanto, se você vir esse tipo de erro, é importante atualizar o ClamAV.
"WARNING: Message: SSL peer certificate or SSH remote key was not OK" nos logs do freshclam
Você não conseguiu atualizar os bancos de dados de assinaturas do antivírus e esta mensagem aparece.
É possível que o relógio do seu computador esteja desatualizado. Atualize a data e a hora usando NTP.
"ERROR: This tool requires libclamav with functionality level XXX or higher (current f-level: XXX)"
É possível que você tenha duas versões diferentes da libclamav instaladas no seu sistema. Isso pode incluir duas versões fornecidas pelo sistema operacional. Basta remover a versão mais antiga. Também pode ser uma mistura entre uma instalação a partir do código-fonte do ClamAV e uma versão fornecida pelo sistema operacional. Sempre certifique-se de ter apenas uma versão da libclamav instalada no seu sistema.
"LibClamAV Error: yyerror()" e "LibClamAV Warning: cli_loadyara: failed to parse or load 1 yara rules from file"
O ClamAV suporta assinaturas antivirais no formato YARA. No entanto, o mecanismo de interpretação YARA usado é específico e interno ao ClamAV. Este mecanismo YARA não é 100% compatível com o interpretador oficial do YARA.
Por isso, algumas regras YARA podem não funcionar totalmente com o ClamAV.
Para resolver este problema:
- Ou você reescreve a regra YARA problemática para torná-la compatível com o ClamAV.
- Ou você aguarda que o mecanismo YARA do ClamAV seja melhorado no futuro.
Erros "LibClamAV Error", como por exemplo "LibClamAV Error: [scan_biff_for_xlm_macros] Unexpected state value 4" ao usar o ClamAV.
Esses erros são muito específicos e podem evidenciar um problema na análise de dados mal gerenciados pelo ClamAV. Recomendamos reportar o problema às equipes de desenvolvimento do ClamAV no
Github oficial.
"LibClamAV Warning: fmap: map allocation failed", "LibClamAV Error: CRITICAL: fmap() failed" e "Can't allocate memory ERROR" ao usar o ClamAV
Esta mensagem de erro geralmente indica falta de memória RAM durante uma verificação. Assim:
- Ou você não tem memória suficiente. Seria bom aumentar a memória RAM do seu servidor ou VPS.
- Ou você está tentando verificar um objeto muito grande. Para evitar isso, defina limites para o tamanho dos objetos verificados: --max-filesize ou --max-scansize na linha de comando.
- Ou você está verificando arquivos ou diretórios do sistema, como o diretório /proc no Linux. Isso é proibido; não faça isso.
"Segmentation fault (core dumped)" ao usar o ClamAV
Esta mensagem de erro é certamente a mais importante de todas. Ela indica uma falha do antivírus tão grave que o sistema operacional encerrou o processo do ClamAV.
No entanto, a mensagem é muito genérica e resulta de muitas causas possíveis, como a configuração do seu sistema operacional, os recursos disponíveis (RAM), ou o objeto que você está tentando verificar com o ClamAV (muito grande, ou um arquivo de sistema como /proc, por exemplo).
Portanto, não é possível determinar a causa exata dessa falha, e a melhor solução é abrir um ticket de bug com as equipes de desenvolvimento do ClamAV no
Github oficial.
TCP: No tcp AF_INET/AF_INET6 SOCK_STREAM socket received from systemd
O daemon ClamAV está em execução, mas a porta TCP 3310 não está aberta: o comando "lsof -i|grep clamd" não retorna nada.
Ao iniciar o clamd, aparece a seguinte mensagem de erro: "TCP: No tcp AF_INET/AF_INET6 SOCK_STREAM socket received from systemd".
A solução é criar o diretório /etc/systemd/system/clamav-daemon.socket.d/ e, em seguida, adicionar o arquivo /etc/systemd/system/clamav-daemon.socket.d/extend.conf:
cat /etc/systemd/system/clamav-daemon.socket.d/extend.conf
[Socket]
SocketUser=clamav
ListenStream=3310
Depois, reinicie o servidor.
A política de fim de vida útil (End-Of-Life ou EOL) do antivírus ClamAV
Desde 15 de dezembro de 2024, apenas
as versões 1.0.x, 1.3.x e 1.4.x do antivírus ClamAV são suportadas e mantidas.
Se você tem uma versão anterior, o ClamAV não deverá mais funcionar, pois os bancos de dados de assinaturas recentes não são mais compatíveis com essas versões antigas. Então, ou você usa nossas
assinaturas adicionais para ClamAV, na versão Profissional no mínimo, ou você atualiza urgentemente seu antivírus ClamAV. Ou ambos, o que é ainda melhor!
Para ir mais longe, recomendamos que leia nosso artigo sobre as
versões antigas do antivírus ClamAV.
O antivírus ClamWin não funciona mais
ClamWin é uma adaptação para Windows do antivírus ClamAV, mas feita por terceiros. Assim, o ClamWin não é suportado nem desenvolvido pelas equipes da Cisco/Sourcefire. Infelizmente, este antivírus para Windows não é mais desenvolvido por seu proprietário, e sua última versão disponível é a 0.103.2.1. Como mencionado no parágrafo anterior, as versões 0.103 não são mais suportadas pelo ClamAV, então o ClamAV desativou o download dos bancos de dados de assinaturas para o ClamWin. Isso o torna totalmente ineficaz, e é desaconselhado usá-lo em empresas ou em ambientes de produção.
A solução que recomendamos é
baixar a versão oficial do ClamAV para Windows. Uma versão de 32 bits e outra de 64 bits estão disponíveis. Certamente, essa versão não possui uma interface gráfica (GUI), mas a linha de comando do ClamAV não é muito complicada, e alguns simples arquivos BAT serão suficientes para automatizar a verificação do seu disco rígido.
Também existe uma
adaptação não oficial do antivírus ClamAV para Windows que é interessante porque funciona com versões muito antigas do Windows (WinNT e Windows 98!). Mas ainda é baseada na linha de comando, sem interface gráfica.
Erro 426 com as assinaturas de SecuriteInfo.com
Se você obtiver um erro 426 ao usar o freshclam para baixar
nossas assinaturas antivirais, significa que você tem uma conta gratuita e um antivírus ClamAV obsoleto.
A solução é atualizar sua instalação do ClamAV ou optar por uma assinatura "Profissional" para baixar nossas assinaturas. Fazer ambos aumentará significativamente a detecção de malwares na sua instalação.
Não consigo baixar securiteinfoold.hdb, ou tenho erros 'nonblock_recv: recv timing out (30 secs)' ou 'Download failed (28) ... Message: Timeout was reached'
- Para versões do ClamAV mais antigas que 0.102.2, adicione "ReceiveTimeout 2400" ao arquivo freshclam.conf e reinicie o daemon freshclam.
- Para versões do ClamAV 0.102.2 e superiores, remova "ReceiveTimeout" do arquivo freshclam.conf e reinicie o daemon freshclam.
Atualize sua versão do ClamAV
Como você pode ver, a maioria dos problemas pode ser resolvida atualizando o antivírus ClamAV para a última versão disponível. Existem várias maneiras de fazer isso; escolha a que melhor se adapta ao seu ambiente.
- Se você recompilou o ClamAV a partir do código-fonte, basta baixar a versão mais recente dos arquivos de origem do ClamAV e recompilá-lo no seu ambiente. No entanto, atenção à versão do seu sistema operacional: se for muito antiga, a última versão do ClamAV pode causar erros de compilação.
- Se você usa uma versão executável do ClamAV, como o ClamAV para Windows, basta instalar o pacote contendo a nova versão do executável. Esta é a solução mais simples!
- Se o antivírus ClamAV foi fornecido pelo seu sistema operacional, como acontece na maioria dos ambientes Linux (Ubuntu, Debian, Red Hat, CentOS...), é imperativo atualizar o sistema operacional. Se isso não for possível devido a restrições, recomendamos desinstalar o pacote ClamAV do seu sistema operacional e instalar/recompilar o ClamAV a partir do código-fonte. Porém, como mencionado anteriormente, se o seu sistema for muito antigo, pode haver falhas na recompilação.
Para mais informações, recomendamos a leitura de nosso artigo
Quais são os riscos de usar uma versão antiga do antivírus ClamAV?
O suporte do SecuriteInfo.com
Se você tem necessidades específicas relacionadas ao ClamAV, como um contrato de manutenção, suporte para compilação ou acompanhamento tecnológico, não hesite em
nos contactar e explicar suas necessidades. Ficaremos felizes em ajudar com sua proteção antivírus usando o ClamAV.
O suporte oficial do ClamAV
Se você tem outras mensagens de erro ou deseja suporte direto das equipes de desenvolvimento do ClamAV, há duas opções:
- Inscreva-se na lista de discussão oficial (apenas em inglês) e envie sua pergunta por e-mail. A comunidade e alguns dos desenvolvedores do ClamAV responderão.
- Abra um ticket no Github oficial. Porém, você deve ser desenvolvedor, pois será necessário fornecer muitos detalhes técnicos no ticket. Não é uma opção para o público geral.
Você sabia?
A SecuriteInfo.com disponibiliza
assinaturas antivirais adicionais para o antivírus ClamAV. Isso aumenta significativamente a detecção de malwares e spams.
Nota: ClamAV é uma marca registrada da Cisco
Tags
ANTIVIRUS
CLAMAV
LINUX
WINDOWS
MACOS
Inscription à notre lettre d'information
Inscrivez-vous à notre
lettre d'information pour vous tenir au courant de nos actualités et de nos dernières trouvailles.