ClamAV 1.0 ha sido publicada como la primera versión “redonda” de este antivirus que es software libre (GPLv2) y multiplataforma. Este lanzamiento sorprende un poco si tenemos en cuenta que se trata de un desarrollo muy veterano con dos décadas a sus espaldas, pero, por otro lado, tampoco es que estas situaciones sean raras de ver en el mundo del FLOSS.
La primera versión de ClamAV en ver la luz fue la 0.01 en el año 2002. No se trata de una solución antimalware tradicional, sino que más bien es un “kit de herramientas antivirus diseñado especialmente para escanear correo electrónico en puertas de enlace de correo. Proporciona una serie de utilidades que incluyen un demonio de subprocesos múltiples flexible y escalable, un escáner de línea de comandos y una herramienta avanzada para las actualizaciones automáticas de las bases de datos. El núcleo del paquete es un motor antivirus disponible en forma de biblioteca compartida”. Solo tiene soporte de detección en tiempo real en Linux.
Continuando con la historia, ClamAV fue adquirido en 2007 por Sourcefire, que se hizo con la marca y los copyrights del producto, aunque el código fuente del software siguió publicado bajo la licencia GPLv2 (esto se puede comparar con lo que pasa con RHEL y los clones de este). Años después, en 2013, Sourcefire fue adquirida por Cisco, así que ClamAV pertenece a esta última desde entonces, aunque por suerte mateniendo la licencia GPLv2.
Ahora sí, vamos a mencionar las novedades de ClamAV 1.0. Para empezar, está el soporte para descifrar ficheros XLS basados en OLE2 de solo lectura que fueron cifrados con la clave predeterminada. El uso de la clave por defecto aparecerá a partir de ahora en los metadatos de JSON.
La característica o el modo all-match, que se encarga de continuar escaneando dentro de una coincidencia (fichero) para hallar más coincidencias, ha sido reescrita con un nuevo código que es más confiable y fácil de mantener. Por otro lado, se han agregado varios casos de prueba para verificar el comportamiento correcto de todas las coincidencias.
Continuando con más cosas del modo all-match, está la habilitación de las firmas de reconocimiento de tipo de archivo incrustadas para que coincidan cuando una firma de malware también coincidió en un escaneo de la misma capa, la habilitación de las firmas de bytecode en modo all-match después de producirse una coincidencia, además de haberse corregido algunos problemas con el uso del modo all-match.
Otra novedad interesante de ClamAV 1.0 es la incorporación de una nueva devolución de llamada (callback) en la API pública para inspeccionar el contenido de un fichero durante un proceso de escaneo en una capa de extracción del archivo, la cual se encuentra definida en clamv.h
.
Para terminar con lo más importante de este lanzamiento, se ha agregado una nueva función a la API pública para desempaquetar archivos de firmas CVD, la opción de compilar con una biblioteca TomsFastMath externa ha sido eliminada (un cambio sin el cual la base de datos y la validación del certificado de autenticación EXE/DLL de Windows pueden fallar), además de un Dockerfile y unos scripts de soporte movidos del repositorio principal de ClamAV a otro nuevo con el fin de facilitar la actualización de las imágenes y la resolución de los problemas.