O ClamAV representa um dos principais kits de ferramentas antivírus e antimalware de código aberto para Linux, Windows e BSDs. Finalmente, o famoso programa chega à versão 1.0 com o novo lançamento LTS que acaba de sair.
Esta solução antivírus e antimalware GPLv2 desenvolvida pela Cisco e pela comunidade de código aberto teve seu primeiro lançamento originalmente em 2002. Agora, duas décadas depois, o ClamAV 1.0 está disponível e é batizado como um lançamento de suporte de longo prazo (LTS).
Anti-Virus ClamAV chega à versão 1.0 com o novo lançamento LTS
Com o ClamAV 1.0.0 LTS, esta solução antivírus de software livre agora revisou o recurso all-match, um novo retorno de chamada na API pública para inspecionar o conteúdo do arquivo durante uma varredura em cada camada de extração de arquivo, outras novas APIs, suporte para descriptografia arquivos XLS baseados em OLE2 somente leitura, uma ampla variedade de outras melhorias e também várias correções de bugs.
O lançamento do recurso ClamAV 1.0.0 agora está estável e disponível para download em ClamAV.net ou por meio do Docker Hub .
O ClamAV 1.0.0 inclui as seguintes melhorias e alterações.
Principais mudanças
- Suporte para descriptografar arquivos XLS baseados em OLE2 somente leitura que são criptografados com a senha padrão. O uso da senha padrão agora aparecerá nos metadados JSON.
- Solicitação de extração do GitHub: https://github.com/Cisco-Talos/clamav/pull/700
- A implementação do recurso de todas as partidas foi revisada. O código mais recente é mais confiável e fácil de manter.
- Este projeto corrigiu vários problemas conhecidos com a detecção de assinatura no modo de todas as correspondências:
- Assinaturas de reconhecimento de tipo de arquivo incorporadas habilitadas para corresponder quando uma assinatura de malware também correspondia em uma varredura da mesma camada.
- Assinaturas de bytecode habilitadas para serem executadas no modo de todas as correspondências após a ocorrência de uma correspondência.
- Corrigido uma variedade de problemas de casos extremos em todas as partidas.
- Adicionados vários casos de teste para verificar o comportamento correto de todas as correspondências.
- Solicitação de extração do GitHub: https://github.com/Cisco-Talos/clamav/pull/687
- Este projeto corrigiu vários problemas conhecidos com a detecção de assinatura no modo de todas as correspondências:
- Adicionado um novo retorno de chamada à API pública para inspecionar o conteúdo do arquivo durante uma varredura em cada camada de extração de arquivo.
- O novo tipo de função de retorno de chamada é definido em .
clcb_file_inspection
clamav.h
- A função pode ser usada para ativar o retorno de chamada antes de executar uma varredura.
cl_engine_set_clcb_file_inspection()
- Este novo retorno de chamada deve ser considerado instável para a versão 1.0. Podemos alterar esta função em uma versão de recurso subsequente.
- Solicitação de extração do GitHub: https://github.com/Cisco-Talos/clamav/pull/170
- O novo tipo de função de retorno de chamada é definido em .
- Adicionada uma nova função à API pública para descompactar arquivos de assinatura CVD.
- O último parâmetro para a função pode ser definido para verificar se a assinatura de um CVD é válida antes de descompactar o conteúdo do CVD no diretório de destino.
cl_cvdunpack()
- Solicitação de extração do GitHub: https://github.com/Cisco-Talos/clamav/pull/690
- O último parâmetro para a função pode ser definido para verificar se a assinatura de um CVD é válida antes de descompactar o conteúdo do CVD no diretório de destino.
- A opção de criar com uma biblioteca TomsFastMath externa foi removida. ClamAV requer opções de compilação não padrão para TomsFastMath para suportar números de ponto flutuante maiores. Sem essa alteração, a validação do certificado de autenticação do banco de dados e do Windows EXE/DLL pode falhar. A compilação agora é ignorada.
ENABLE_EXTERNAL_TOMSFASTMATH
- Solicitação de extração do GitHub: https://github.com/Cisco-Talos/clamav/pull/742
- Movido o Dockerfile e os scripts de suporte do repositório ClamAV principal para um novo repositório: https://github.com/Cisco-Talos/clamav-dockerO repositório separado tornará mais fácil atualizar as imagens e corrigir problemas com imagens para versões lançadas do ClamAV.Qualquer usuário que crie a imagem do ClamAV Docker em vez de extraí-la do Docker Hub terá que obter os arquivos Docker mais recentes do novo local.
- Solicitação de extração do GitHub: https://github.com/Cisco-Talos/clamav/pull/764
- Aumentou a versão principal do SONAME para libclamav por causa das alterações da ABI entre a versão 0.103 LTS e a versão 1.0 LTS.
- Solicitação de extração do GitHub: https://github.com/Cisco-Talos/clamav/pull/778
Outras melhorias
- Adicione verificações para limitar a recursão de extração de objetos PDF.
- Solicitação de extração do GitHub: https://github.com/Cisco-Talos/clamav/pull/629
- Aumentou o limite para alocações de memória com base em entrada não confiável e alterou a mensagem de aviso quando o limite é excedido para que seja mais útil e menos dramático.
- Solicitação de extração do GitHub: https://github.com/Cisco-Talos/clamav/pull/723
- Melhorou drasticamente o tempo de compilação dos testes de unidade libclamav-Rust. A compilação do teste de unidade está incluída no limite de tempo para o próprio teste e atingiu o tempo limite em sistemas mais lentos. Os módulos de código ClamAV Rust agora compartilham o mesmo diretório de compilação, o que também reduz a quantidade de espaço em disco usado para a compilação.
- Solicitação de extração do GitHub: https://github.com/Cisco-Talos/clamav/pull/694
- Para Windows: os arquivos de símbolo de depuração (PDB) agora são instalados juntamente com os arquivos de biblioteca DLL e LIB quando criados no modo “RelWithDebInfo” ou “Debug”.
- Solicitação de extração do GitHub: https://github.com/Cisco-Talos/clamav/pull/669
- Relaxou as restrições na verificação de entradas de arquivo ZIP sobrepostas para não alertar sobre arquivos Java (JAR) ligeiramente malformados, mas não maliciosos.
- Solicitação de extração do GitHub: https://github.com/Cisco-Talos/clamav/pull/561
- Aumentou o limite de tempo no FreshClam antes de avisar se a entrada de DNS estiver obsoleta. Em combinação com as alterações para atualizar a entrada do DNS com mais frequência, isso deve evitar falsos alarmes de falhas no sistema de publicação do banco de dados.
- Solicitação de extração do GitHub: https://github.com/Cisco-Talos/clamav/pull/597
- Docker: os arquivos de cabeçalho da biblioteca C agora estão incluídos na imagem do Docker. Patch cortesia do usuário TerminalFi do GitHub.
- Solicitação de extração do GitHub: https://github.com/Cisco-Talos/clamav/pull/693
- Mostre as opções de compilação BYTECODE_RUNTIME ao usar a GUI para CMake.
- Solicitação de extração do GitHub: https://github.com/Cisco-Talos/clamav/pull/678
- Adicionadas versões LLVM com suporte mínimo e máximo explícito para que a compilação falhe se você tentar compilar com uma versão muito antiga ou muito nova e imprimirá uma mensagem útil em vez de simplesmente falhar ao compilar devido a problemas de compatibilidade. Patch cortesia de Matt Jolly.
- Solicitação de extração do GitHub: https://github.com/Cisco-Talos/clamav/pull/692
- Avisos do compilador corrigidos que podem se transformar em erros no Clang 16. Cortesia do patch de Michael Orlitzky.
- Solicitação de extração do GitHub: https://github.com/Cisco-Talos/clamav/pull/767
- Permita a compilação com um RPATH personalizado para que os executáveis possam ser movidos após a compilação em um ambiente de desenvolvimento para um diretório de instalação final.
- Solicitação de extração do GitHub: https://github.com/Cisco-Talos/clamav/pull/768
Correções de bugs
- Várias correções de qualidade de código. Estes não são problemas de segurança e não serão transferidos para versões de recursos anteriores:
- Vários estouros de buffer de heap durante o carregamento de bancos de dados PDB e WDB foram encontrados por OSS-Fuzz e por Micha? Dardas.
- Solicitação de extração do GitHub: https://github.com/Cisco-Talos/clamav/pull/530
- Otimização de acompanhamento: https://github.com/Cisco-Talos/clamav/pull/712
- oss-fuzz 43843: leitura de estouro de buffer de heap (1) cli_sigopts_handler
- Solicitação de extração do GitHub: https://github.com/Cisco-Talos/clamav/pull/560
- oss-fuzz 44849: estouro de buffer de heap lido (4) em HTML/js-norm
- Solicitação de extração do GitHub: https://github.com/Cisco-Talos/clamav/pull/503
- oss-fuzz 43816: estouro de buffer de heap lido (8) em cli_bcomp_freemeta
- Solicitação de extração do GitHub: https://github.com/Cisco-Talos/clamav/pull/583
- oss-fuzz 43832: estouro de buffer de heap lido (2) em cli_parse_add
- Solicitação de extração do GitHub: https://github.com/Cisco-Talos/clamav/pull/611
- oss-fuzz 44493: estouro de número inteiro em cli_scannulsft
- Solicitação de extração do GitHub: https://github.com/Cisco-Talos/clamav/pull/554
- Vazamento CIFuzz detectado no analisador IDB
- Solicitação de extração do GitHub: https://github.com/Cisco-Talos/clamav/pull/547
- vazamentos do analisador de assinaturas oss-fuzz
- Solicitações de extração do GitHub:
- oss-fuzz 40601: vazamento detectado em pdf_parseobj
- Solicitação de extração do GitHub: https://github.com/Cisco-Talos/clamav/pull/553
- Vários estouros de buffer de heap durante o carregamento de bancos de dados PDB e WDB foram encontrados por OSS-Fuzz e por Micha? Dardas.
- Corrigida uma falha de compilação ao usar o modo LIBCLAMAV_ONLY com testes ativados.
- Solicitação de extração do GitHub: https://github.com/Cisco-Talos/clamav/pull/714
- Corrigido um problema ao verificar as assinaturas de código de autenticação EXE/DLL para determinar se um determinado arquivo pode ser confiável (ignorado).
- Solicitação de extração do GitHub: https://github.com/Cisco-Talos/clamav/pull/727
- Corrigido um bug de cache relacionado à condição de assinatura lógica de contêiner e intermediários.
- Solicitação de extração do GitHub: https://github.com/Cisco-Talos/clamav/pull/724
- Corrigido um problema de compilação ao compilar com RAR desativado ou ao compilar com uma biblioteca libmspack externa em vez da biblioteca empacotada.
- Solicitação de extração do GitHub: https://github.com/Cisco-Talos/clamav/pull/672
- Corrigida a capitalização da opção para na página de manual. Patch cortesia do usuário do GitHub monkz.
-W
clamonacc
clamonacc
- Solicitações de extração do GitHub:
- macOS: Corrigido um problema com a
mmap
detecção de chamada do sistema memory-map ( ) que afetava as versões 0.105 e 0.104. Os mapas de memória podem ser usados no ClamAV para melhorar o desempenho de carregamento de assinatura e desempenho de varredura, bem como o uso de RAM.- Solicitação de extração do GitHub: https://github.com/Cisco-Talos/clamav/pull/705
- Correção de um problema de desempenho com código Rust quando o tipo de compilação não é definido explicitamente como “Release” ou “RelWithDebInfo”. O tipo de compilação padrão do Rust agora é “RelWithDebInfo”, assim como o código C, em vez de Debug. Isso significa que agora está otimizado por padrão.
- Solicitação de extração do GitHub: https://github.com/Cisco-Talos/clamav/pull/701
- Corrigido um problema ao carregar regras Yara contendo strings regex com uma barra de escape (
\/
) seguida por dois pontos (:
).- Solicitação de extração do GitHub: https://github.com/Cisco-Talos/clamav/pull/696
- Corrigido um problema de detecção e verificação de entradas de arquivo ZIP anexadas a arquivos muito pequenos. A correção faz parte da revisão do recurso de todas as partidas.
- Corrigido um problema de detecção com assinaturas de hash de tabela de endereços de importação EXE/DLL que especificam um curinga (
*
) para o campo de tamanho. A correção faz parte da revisão do recurso de todas as partidas. - Corrigido o valor de tempo limite de bytecode padrão listado nas páginas de manual e nos arquivos de configuração de amostra. Patches cortesia de Liam Jarvis e Ben Bodenmiller.
- Solicitações de extração do GitHub:
- Corrigido um problema ao construir o programa de teste libclamav_rust ao executar se construir com e quando o módulo é usado para localizar as bibliotecas LLVM. Patch cortesia do usuário GitHub teoberi.
ctest
BYTECODE_RUNTIME=llvm
FindLLVM.cmake
- Solicitação de extração do GitHub: https://github.com/Cisco-Talos/clamav/pull/572
- Corrigido um problema em que as varreduras enviadas com o modo de todas as correspondências ativado faziam com que todas as varreduras subsequentes também usassem o modo de todas as correspondências.
clamd
- Solicitação de extração do GitHub: https://github.com/Cisco-Talos/clamav/pull/741
- Corrigido bug ao iniciar com a opção que criava arquivos com nomes aleatórios no diretório atual.
clamonacc
--log=FILE
- Solicitação de extração do GitHub: https://github.com/Cisco-Talos/clamav/pull/751
- Outras correções de bugs variados.
Downloads e mais detalhes sobre o ClamAV 1.0 LTS via clamav.net.