Cisco presentou unha nova versión importante da súa suite de antivirus gratuíto, ClamAV 0.105.0, e tamén publicou versións correctivas de ClamAV 0.104.3 e 0.103.6 que corrixen vulnerabilidades e erros. Lembremos que o proxecto pasou a mans de Cisco en 2013 tras a compra de Sourcefire, a empresa que desenvolve ClamAV e Snort. O código do proxecto distribúese baixo a licenza GPLv2.
Melloras clave en ClamAV 0.105:
- Inclúese un compilador para a linguaxe Rust nas dependencias de compilación necesarias. A compilación require polo menos Rust 1.56. As bibliotecas de dependencias necesarias en Rust están incluídas no paquete principal de ClamAV.
- O código para a actualización incremental do arquivo da base de datos (CDIFF) foi reescrito en Rust. A nova implantación permitiu acelerar significativamente a aplicación de actualizacións que eliminan un gran número de sinaturas da base de datos. Este é o primeiro módulo reescrito en Rust.
- Incrementáronse os valores límite por defecto:
- MaxScanSize: 100M > 400M
- Tamaño máximo do ficheiro: 25 M > 100 M
- StreamMaxLonxitude: 25M > 100M
- PCREMaxFileSize: 25M > 100M
- PE máximo incorporado: 10M > 40M
- MaxHTML Normalize: 10M > 40M
- MaxScriptNormalize: 5M > 20M
- MaxHTMLNoTags: 2M > 8M
- O tamaño máximo de liña nos ficheiros de configuración freshclam.conf e clamd.conf aumentou de 512 a 1024 caracteres (ao especificar os tokens de acceso, o parámetro DatabaseMirror podería superar os 512 bytes).
- Para identificar as imaxes utilizadas para a distribución de phishing ou malware, implantouse o soporte para un novo tipo de sinaturas lóxicas que utilizan o método de hash difuso, que permite identificar obxectos similares cun certo grao de probabilidade. Para xerar un hash difuso para unha imaxe, pode usar o comando "sigtool —fuzzy-img".
- ClamScan e ClamDScan teñen capacidades de dixitalización de memoria de proceso integradas. Esta función foi transferida do paquete ClamWin e é específica para a plataforma Windows. Engadíronse opcións "--memory", "--kill" e "--unload" a ClamScan e ClamDScan na plataforma Windows.
- Compoñentes de tempo de execución actualizados para executar bytecode baseados en LLVM. Para aumentar o rendemento da dixitalización en comparación co intérprete de bytecode predeterminado, propúxose un modo de compilación JIT. O soporte para versións antigas de LLVM descontinuouse; agora pódense usar as versións 8 a 12 de LLVM para traballar.
- Engadiuse a Clamd unha configuración GenerateMetadataJson, que é equivalente á opción "--gen-json" en clamscan e fai que se escriban metadatos sobre o progreso da dixitalización no ficheiro metadata.json en formato JSON.
- Proporcionou a posibilidade de construír usando a biblioteca externa TomsFastMath (libtfm), habilitada mediante as opcións "-D ENABLE_EXTERNAL_TOMSFASTMATH=ON", "-D TomsFastMath_INCLUDE_DIR=" e "-D TomsFastMath_LIBRARY=". A copia incluída da biblioteca TomsFastMath actualizouse á versión 0.13.1.
- A utilidade Freshclam mellorou o comportamento ao manexar o tempo de espera de ReceiveTimeout, que agora só remata as descargas conxeladas e non interrompe as descargas lentas activas cos datos transferidos por canles de comunicación deficientes.
- Engadido soporte para construír ClamdTop usando a biblioteca ncursesw se falta ncurses.
- Vulnerabilidades corrixidas:
- CVE-2022-20803 é un dobre libre no analizador de ficheiros OLE2.
- CVE-2022-20770 Un bucle infinito no analizador de ficheiros CHM.
- CVE-2022-20796: fallo debido a unha desreferencia do punteiro NULL no código de verificación da caché.
- CVE-2022-20771: bucle infinito no analizador de ficheiros TIFF.
- CVE-2022-20785: fuga de memoria no analizador HTML e no normalizador de Javascript.
- CVE-2022-20792: desbordamento do búfer no módulo de carga da base de datos de sinaturas.
Fonte: opennet.ru