Após seis meses de desenvolvimento, a Cisco lançou a versão 1.3.0 do pacote antivírus gratuito ClamAV. O projeto foi adquirido pela Cisco em 2013, após a compra da Sourcefire, que desenvolvia o ClamAV e o Snort. O código do projeto é distribuído sob a licença GPLv2. A versão 1.3.0 é considerada uma versão comum (não LTS), cujas atualizações são lançadas por pelo menos quatro meses após o lançamento do primeiro release da próxima versão. O download da base de assinaturas para versões não-LTS também é garantido por pelo menos mais quatro meses após o lançamento da próxima versão.
Principais melhorias no ClamAV 1.3:
- Foi adicionada a compatibilidade para extração e verificação de anexos usados em arquivos do Microsoft OneNote. O suporte para análise do formato OneNote está habilitado por padrão, mas pode ser desativado se desejado, através da configuração 'ScanOneNote no' no clamd.conf, especificando a opção de linha de comando '--scan-onenote=no' ao iniciar a ferramenta clamscan, ou adicionando a flag CL_SCAN_PARSE_ONENOTE ao parâmetro options.parse ao usar o libclamav.
- Foi estabelecido o suporte para a construção do ClamAV em um sistema operacional semelhante ao BeOS, chamado Haiku.
- No clamd, foi adicionada a verificação da existência do diretório para arquivos temporários, especificado no arquivo clamd.conf através da diretiva TemporaryDirectory. Se o diretório não existir, o processo agora termina com uma mensagem de erro.
- Ao configurar a construção das bibliotecas estáticas no CMake, foi garantida a instalação das bibliotecas estáticas libclamav_rust, libclammspack, libclamunrar_iface e libclamunrar, utilizadas no libclamav.
- Foi implementada a identificação do tipo de arquivo para scripts Python compilados (.pyc). O tipo de arquivo é passado na forma de um parâmetro string CL_TYPE_PYTHON_COMPILED, suportado nas funções clcb_pre_cache, clcb_pre_scan e clcb_file_inspection.
- Melhorado o suporte para a descriptografia de documentos PDF com senha vazia.
Simultaneamente, foram lançadas as atualizações ClamAV 1.2.2 e 1.0.5, nas quais duas vulnerabilidades afetando as versões 0.104, 0.105, 1.0, 1.1 e 1.2 foram corrigidas:
- CVE-2024-20328 — possibilidade de injeção de comandos durante a verificação de arquivos no clamd devido a um erro na implementação da diretiva 'VirusEvent', utilizada para executar um comando arbitrário em caso de detecção de um vírus. Os detalhes sobre a exploração da vulnerabilidade ainda não foram revelados, sabe-se apenas que o problema foi corrigido desativando o suporte no parâmetro de formatação de string 'VirusEvent' '%f', que era substituído pelo nome do arquivo infectado.
Parece que o ataque se resume à entrega de um nome de arquivo malicioso formatado, contendo caracteres especiais que não são escapados ao executar o comando especificado no VirusEvent. Curiosamente, uma vulnerabilidade semelhante já foi corrigida em 2004, também removendo o suporte para a substituição ‘%f’, que foi posteriormente restaurado na versão do ClamAV 0.104, resultando no renascimento da antiga vulnerabilidade. Na vulnerabilidade anterior, para executar seu comando durante a verificação de vírus, bastava criar um arquivo chamado «; mkdir owned» e gravar nele uma assinatura de teste do vírus.
- CVE-2024-20290 — um buffer overflow no código de análise de arquivos com conteúdo no formato OLE2, que um atacante remoto não autenticado pode explorar para causar uma negação de serviço (interrupção do processo de varredura). O problema é causado por uma verificação incorreta do final da linha durante a varredura do conteúdo, levando à leitura de uma área fora dos limites do buffer.
Fonte: opennet.ru
