abr 16 2010

This version of the ClamAV engine is outdated

Category: LinuxDavid González @ 18:00

Hoy por la mañana me he encontrado que el clam, que estaba instalado en un servidor bajo Centos 5.2, no estaba corriendo.

Al ir a reiniciarlo de la forma habitual (/etc/init.d/clamd restart) mostraba este error:

Starting Clam AntiVirus Daemon: LibClamAV Warning: ******************************************************************************
LibClamAV Warning: ***  This version of the ClamAV engine is outdated.     ***
LibClamAV Warning: *** DON'T PANIC! Read http://www.clamav.net/support/faq ***
LibClamAV Warning: ***********************************************************
LibClamAV Error: cli_hex2str(): Malformed hexstring: This ClamAV version has reached End of Life! Please upgrade to version 0.95 or later. For more information see  www.clamav.net/eol-clamav-094 and www.clamav.net/download (length: 169)
LibClamAV Error: Problem parsing database at line 742
LibClamAV Error: Can't load daily.ndb: Malformed database
LibClamAV Error: cli_tgzload: Can't load daily.ndb
LibClamAV Error: Can't load /var/clamav/daily.cld: Malformed database
ERROR: Malformed database

La solución ha sido actualizar por yum el clamd:

[root@server ~]# yum update clamd

Al hacerlo ha actualizado estos dos paquetes:

=============================================================================
 Package                 Arch       Version          Repository        Size
=============================================================================
Updating:
 clamav                  i386       0.96-1.el5.rf    rpmforge           12 M
 clamd                   i386       0.96-1.el5.rf    rpmforge          226 k

Una vez hecho, he podido arrancar el clam sin problemas.

Entradas relacionadas

Etiquetas: , , ,


abr 14 2010

ClamAv en nuestro servidor Linux. Como escanear

Category: LinuxDavid González @ 18:00

Hoy vamos a aprender como instalar el antivirus ClamAV y escanear nuestro server.

Primero tenemos que ver que versión tenemos del S.O para añadir el repositorio correcto. Podemos verlo en este fichero:

root@server [~]# cat /etc/redhat-release
CentOS release 5.4 (Final)

Una vez que tenemos localizada la versión, debemos añadir el repositorio. Si nuestro caso fuera la versión 5 usaríamos la primera línea y si fuera la versión 4, usaríamos el segundo enlace.

rpm -Uhv http://apt.sw.be/redhat/el5/en/i386/rpmforge/RPMS/rpmforge-release-0.3.6-1.el5.rf.i386.rpm
rpm -Uhv http://apt.sw.be/redhat/el4/en/i386/rpmforge/RPMS/rpmforge-release-0.3.6-1.el4.rf.i386.rpm

Instalaremos el antivirus ClamAV

yum install clamd

Una vez instalado, actualizaremos la base de datos de virus:

cd /etc/cron.daily/
./freshclam

En mi caso, sólo quiero pasar el antivirus en la carpeta home (y subcarpetas). Para ello, nos situaremos en dicha carpeta y lanzaremos el clamscan

cd /home/ clamscan --max-filesize=1090401  --recursive=yes --phishing-sigs=yes --phishing-scan-urls=yes --scan-html=yes --scan-pe=yes --scan-mail=no --infected --exclude-dir=mail --exclude-dir=access-logs --exclude-dir=logs --exclude-dir=etc

Podemos pasarle muchos más parámetros al clam. Estas son las opciones que muestra la ayuda.

root@server [~]# clamscan --help

    --help                -h             Mostrar por pantalla esta ayuda
    --version             -V             Mostrar por pantalla la versión
    --verbose             -v             Modo verbose
    --debug                              Habilitar el modo debug de libclamav
    --quiet                              Sólo mostrar por pantalla los mensajes de error
    --stdout                             Escribe en la salida (stdout) en lugar de la salida de errores (stderr)
    --no-summary                         Deshabilitar resumen al final del escaneo
    --infected            -i             Sólo mostrar por pantalla los fichero infectados
    --bell                               Sonido de campana en la detección de virus

    --tempdir=DIRECTORY                  Crear fichero temporales en DIRECTORY
    --leave-temps[=yes/no(*)]            No eliminar los ficheros temporales
    --database=FILE/DIR   -d FILE/DIR    Cargar la base de datos de virus desde un fichero (ficheros db)
    --log=FILE            -l FILE        Guarda el reporte escaneado en un fichero 'FILE'
    --recursive[=yes/no(*)]  -r          Escanea recursivamente subdirectorios
    --file-list=FILE      -f FILE        Escanea fichero desde FILE
    --remove[=yes/no(*)]                 Elimina fichero infectados
    --move=DIRECTORY                     Mueve los fichero infectados al directorio 'DIRECTORY'
    --copy=DIRECTORY                     Copia los fichero infectados al directorio 'DIRECTORY'
    --exclude=PATT                       No escanea ficheros que contengan 'PATT' en el nombre
    --exclude-dir=PATT                   No escanea directorios que contenga 'PATT' en el nombre
    --include=PATT                       Sólo escanea ficheros que contengan 'PATT'
    --include-dir=PATT                   Sólo escanea directorios que contengan 'PATT'

    --detect-pua[=yes/no(*)]             Detecta posiblemente aplicaciones no deseadas
    --exclude-pua=CAT                    Saltar firmas PUA de la categoría CAT
    --include-pua=CAT                    Carga firmas PUA de la categoría CAT
    --detect-structured[=yes/no(*)]      Detecta datos estructurados (SSN, Tarjeta de Crédito)
    --structured-ssn-format=X            Formato SSN (0=normal,1=stripped,2=ambos)
    --structured-ssn-count=N             Mínimo contador SSN para generar una detección
    --structured-cc-count=N              Mínimo contador CC para generar una detección
    --scan-mail[=yes(*)/no]              Escanear correos
    --phishing-sigs[=yes(*)/no]          Detección de phishing basados en firma
    --phishing-scan-urls[=yes(*)/no]     Detección de phishing basado en URL
    --heuristic-scan-precedence[=yes/no(*)] Detiene el escaneo tan pronto como encuentre un resultado heuristico
    --phishing-ssl[=yes/no(*)]           Siempre bloquea coincidencias SSL en url's (modulo de phishing)
    --phishing-cloak[=yes/no(*)]         Siempre bloquea url encubiertas (modulo de phishing)
    --algorithmic-detection[=yes(*)/no]  Algorítmica de detección
    --scan-pe[=yes(*)/no]                Escanea fichero PE
    --scan-elf[=yes(*)/no]               Escanea fichero ejecutables
    --scan-ole2[=yes(*)/no]              Escanea ficheros OEL
    --scan-pdf[=yes(*)/no]               Escanea fichero pdf
    --scan-html[=yes(*)/no]              Escanea fichero html
    --scan-archive[=yes(*)/no]           Escanea ficheros comprimidos (soportado por libclamav)
    --detect-broken[=yes/no(*)]          Intenta detectar fichero ejecutables rotos
    --block-encrypted[=yes/no(*)]        Archivos con bloques cifrados
    --mail-follow-urls[=yes/no(*)]       Descarga y escanea las URL's

    --max-filesize=#n                    Tamaño máximo de ficheros a escanear
    --max-scansize=#n                    La cantidad máxima de datos para buscar cada archivo contenedor (**)
    --max-files=#n                       El número máximo de archivos para buscar cada archivo contenedor (**)
    --max-recursion=#n                   Archivo máximo nivel de recursión para el archivo contenedor (**)
    --max-dir-recursion=#n               Máximo nivel de recursión en los directorios

(*) Opciones por defecto de escaneo
(**) Ciertos archivos (por ejemplo, documentos, archivos, etc) a su vez puede contener otros
   archivos en su interior. Las opciones anteriores garantizar el tratamiento seguro de este tipo de datos.

Entradas relacionadas

Etiquetas: , ,