Cisco ha presentado una nueva versión importante del paquete antivirus gratuito ClamAV 0.104.0. Recordemos que el proyecto pasó a manos de Cisco en 2013 después de la compra de la empresa Sourcefire, que desarrollaba ClamAV y Snort. El código del proyecto se distribuye bajo la licencia GPLv2.
Al mismo tiempo, Cisco anunció el inicio de la formación de ramas de ClamAV con soporte a largo plazo (LTS), cuyo mantenimiento se garantizará durante tres años a partir de la publicación de la primera versión en la rama. La primera rama LTS será ClamAV 0.103, para la cual se lanzarán actualizaciones para solucionar vulnerabilidades y problemas críticos hasta 2023.
Las actualizaciones para las ramas normales, que no se clasifiquen como LTS, se publicarán al menos otros 4 meses después del lanzamiento de la primera versión de la siguiente rama (por ejemplo, las actualizaciones para la rama ClamAV 0.104.x se publicarán durante 4 meses después del lanzamiento de ClamAV 0.105.0). La posibilidad de descargar la base de firmas para las ramas no LTS también se garantizará al menos durante 4 meses después del lanzamiento de la siguiente rama.
Otro cambio significativo ha sido la creación de paquetes de instalación oficiales que permiten realizar actualizaciones sin recompilar desde los fuentes y sin esperar a que aparezcan paquetes en las distribuciones. Los paquetes están preparados para Linux (en formatos RPM y DEB para arquitecturas x86_64 e i686), macOS (para x86_64 y ARM64, incluyendo soporte para el chip Apple M1) y Windows (x64 y win32). Además, se ha comenzado a publicar imágenes oficiales de contenedores en Docker Hub (se ofrecen imágenes tanto con la base de firmas integrada como sin ella). En el futuro, se planea publicar paquetes RPM y DEB para la arquitectura ARM64 y la ubicación de compilaciones para FreeBSD (x86_64).
Mejoras clave en ClamAV 0.104:
- Transición al uso del sistema de compilación CMake, el cual ahora es obligatorio para compilar ClamAV. El soporte para los sistemas de compilación Autotools y Visual Studio ha sido descontinuado.
- Se han eliminado los componentes LLVM incluidos en el suministro a favor de utilizar las bibliotecas externas de LLVM ya disponibles. En tiempo de ejecución, se utiliza por defecto un intérprete de bytecode para procesar las firmas con bytecode incorporado, el cual no soporta JIT. Si se necesita usar LLVM en lugar del intérprete de bytecode, se deben especificar explícitamente las rutas a las bibliotecas LLVM 3.6.2 (el soporte para versiones más nuevas se añadirá más adelante).
- Los procesos clamd y freshclam ahora también están disponibles como servicios de Windows. Para instalar estos servicios, existe la opción «—install-service», y para iniciar, se puede utilizar el comando estándar «net start [name]».
- Se ha añadido una nueva opción de escaneo que advierte sobre la transmisión de archivos gráficos dañados, a través de los cuales podrían intentar explotar vulnerabilidades en las bibliotecas gráficas. La verificación de la validez del formato se implementa para archivos JPEG, TIFF, PNG y GIF, y se puede habilitar mediante la configuración AlertBrokenMedia en clamd.conf o la opción de línea de comandos «—alert-broken-media» en clamscan.
- Se han añadido nuevos tipos CL_TYPE_TIFF y CL_TYPE_JPEG para ser coherentes con la definición de archivos en los formatos GIF y PNG. Los tipos BMP y JPEG 2000 siguen definiéndose como CL_TYPE_GRAPHICS, ya que no se admite el análisis de formato para ellos.
- ClamScan ha añadido un indicador visual de progreso para la carga de firmas y la compilación del motor, que se realizan antes del inicio del escaneo. El indicador no se mostrará si no se inicia desde la terminal o si se especifica alguna de las opciones «—debug», «—quiet», «—infected», «—no-summary».
- En libclamav se han añadido llamadas de retorno para mostrar el progreso, como cl_engine_set_clcb_sigload_progress(), cl_engine_set_clcb_engine_compile_progress() y engine free: cl_engine_set_clcb_engine_free_progress(), mediante las cuales las aplicaciones pueden rastrear y estimar el tiempo de ejecución de las etapas iniciales de carga y compilación de firmas.
- A la opción VirusEvent se le ha añadido soporte para la máscara de formato de cadena «%f» para insertar la ruta del archivo en el que se ha detectado un virus (de forma similar a la máscara «%v» con el nombre del virus detectado). En VirusEvent, una funcionalidad similar también está disponible a través de las variables de entorno $CLAM_VIRUSEVENT_FILENAME y $CLAM_VIRUSEVENT_VIRUSNAME.
- Se ha mejorado el funcionamiento del módulo de descompresión de scripts AutoIt.
- Se ha añadido soporte para extraer imágenes de archivos *.xls (Excel OLE2).
- Se ha habilitado la carga de hashes Authenticode basados en el algoritmo SHA256 en forma de archivos *.cat (se utilizan para la verificación de archivos ejecutables de Windows firmados digitalmente).
Fuente: opennet.ru
