Describiremos y resolveremos los errores más comunes que aparecen al utilizar el antivirus ClamAV (clamscan, clamdscan y freshclam).
No se abordan aquí los errores de compilación de ClamAV a partir de sus fuentes.
clamdscan "Can't open file or directory ERROR"
Cuando escanea archivos o directorios, es posible que algunos de ellos provoquen este error. Los archivos correspondientes no se escanean y eluden la verificación de malware.
Esto puede deberse a los permisos de los directorios o archivos, por lo que debe verificar que clamdscan tenga permisos de lectura y escritura en estas carpetas y archivos.
Pero también puede deberse a AppArmor. La solución es poner clamd en el modo "complain" de AppArmor. Aquí está la solución para Debian:
apt-get install apparmor-utils
aa-complain /usr/sbin/clamd
clamdscan "File path check failure: Permission denied. ERROR"
Para corregir este error, puede probar las siguientes 3 soluciones:
- Establecer los permisos de los archivos y directorios escaneados en 666: chmod 666 *
- Usar clamdscan con la opción --fdpass: clamdscan --fdpass
- Usar clamdscan con la opción --stream: clamdscan --stream
"Ignoring mirror (due to previous errors)" en los registros de freshclam
Cuando aparece este mensaje de error, significa que no puede descargar las bases de datos de firmas del antivirus.
Este mensaje corresponde a una versión anterior a ClamAV 0.102.
A partir de la versión 0.102, el código de la parte de red de freshclam cambió radicalmente. Por lo tanto, para resolver este error, es necesario actualizar su versión de ClamAV.
"nonblock_connect: connect(): fd=5 errno=101: Network is unreachable" y "WARNING: getpatch: Can't download daily-xxx.cdiff from db.local.clamav.net" en los registros de freshclam
Este mensaje indica que no es posible conectarse a los servidores de ClamAV para descargar las bases de datos de firmas del antivirus.
- Puede que su servidor tenga un problema de conexión a Internet.
- Puede que esté utilizando un proxy (transparente o no). Freshclam prefiere una conexión directa a los servidores de ClamAV y maneja muy mal las conexiones a través de Proxy, especialmente si el Proxy modifica las propiedades de la conexión HTTP(S), por ejemplo, cambiando el User-Agent.
- Puede que esté utilizando una versión muy antigua del antivirus ClamAV, en cuyo caso es imperativo actualizarlo.
"WARNING: Can't read main.cvd header from db.local.clamav.net (IP: )" en los registros de freshclam
No puede descargar las bases de datos de firmas del antivirus.
Es posible que el archivo mirrors.dat esté saturado. Este archivo sirve para poner en lista negra a los servidores espejo de ClamAV que tienen errores. Si tuvo una desconexión de Internet, es posible que freshclam haya puesto en lista negra a todos los espejos y que ya no quede ninguno disponible.
La solución es eliminar este archivo (por ejemplo, /var/lib/clamav/mirrors.dat en Debian) y reiniciar freshclam.
Cabe señalar que desde las versiones 0.100 este problema ya no existe. Por lo tanto, si ve este tipo de error, es importante actualizar ClamAV.
"WARNING: Message: SSL peer certificate or SSH remote key was not OK" en los registros de freshclam
No puede actualizar las bases de datos de firmas del antivirus y aparece este mensaje.
Es posible que su ordenador no tenga la hora correcta. Actualice la fecha y la hora utilizando NTP.
"ERROR: This tool requires libclamav with functionality level XXX or higher (current f-level: XXX)"
Es posible que tenga dos versiones diferentes de libclamav instaladas en su sistema. Esto puede ocurrir si su sistema operativo proporciona dos versiones. En este caso, elimine la versión más antigua. También puede ser una mezcla entre una instalación desde el código fuente de ClamAV y una versión proporcionada por el sistema operativo. Siempre asegúrese de tener solo una versión de libclamav instalada en su sistema.
"LibClamAV Error: yyerror()" y "LibClamAV Warning: cli_loadyara: failed to parse or load 1 yara rules from file"
ClamAV admite firmas antivirus en formato YARA. Sin embargo, el motor de interpretación YARA utilizado es específico e interno de ClamAV. Este motor YARA no es 100% compatible con el intérprete oficial YARA.
Por lo tanto, algunas reglas YARA pueden no funcionar completamente con ClamAV.
Para resolver este problema:
- Puede reescribir la regla YARA que causa el problema para que sea compatible con ClamAV.
- O puede esperar que en un futuro cercano el motor YARA de ClamAV sea mejorado.
Los errores "LibClamAV Error", como por ejemplo "LibClamAV Error: [scan_biff_for_xlm_macros] Unexpected state value 4" al usar ClamAV.
Estos errores son muy específicos y pueden destacar un problema al escanear datos que ClamAV no puede manejar correctamente. Por lo tanto, recomendamos informar a los equipos de desarrollo de ClamAV en el
Github oficial.
"LibClamAV Warning: fmap: map allocation failed", "LibClamAV Error: CRITICAL: fmap() failed" y "Can't allocate memory ERROR" al usar ClamAV
Este mensaje de error generalmente indica una falta de memoria RAM durante un escaneo. Por lo tanto:
- Puede que no tenga suficiente memoria; sería útil aumentar la memoria RAM de su servidor o VPS.
- Puede que esté intentando escanear un objeto demasiado grande. Para evitar esto, configure límites en el tamaño de los objetos a escanear: --max-filesize o --max-scansize en la línea de comandos.
- Puede que esté intentando escanear archivos o directorios del sistema, como el directorio /proc en Linux. Esto está prohibido, no lo haga.
"Segmentation fault (core dumped)" al usar ClamAV
Este mensaje de error es probablemente el más importante de todos. Indica un fallo del antivirus tan grave que el sistema operativo finalizó el proceso de ClamAV.
Sin embargo, el mensaje es demasiado general y puede deberse a muchas causas posibles, como la configuración de su sistema operativo, los recursos disponibles (RAM) o el objeto que intenta escanear con ClamAV (demasiado grande o un archivo del sistema como /proc, por ejemplo).
Por lo tanto, no es posible determinar la causa exacta de este fallo, y la mejor solución es abrir un ticket de error para los equipos de desarrollo de ClamAV en su
Github oficial.
TCP: No tcp AF_INET/AF_INET6 SOCK_STREAM socket received from systemd
El demonio ClamAV está en ejecución, pero el puerto TCP 3310 no está abierto: el comando "lsof -i|grep clamd" no devuelve nada.
Al iniciar clamd, aparece el siguiente mensaje de error: "TCP: No tcp AF_INET/AF_INET6 SOCK_STREAM socket received from systemd".
La solución es crear el directorio /etc/systemd/system/clamav-daemon.socket.d/ y luego colocar el archivo /etc/systemd/system/clamav-daemon.socket.d/extend.conf en su interior:
cat /etc/systemd/system/clamav-daemon.socket.d/extend.conf
[Socket]
SocketUser=clamav
ListenStream=3310
Luego reinicie su servidor.
La política de fin de vida (End-Of-Life o EOL) del antivirus ClamAV
Desde el 15 de diciembre de 2024, solo
las versiones 1.0.x, 1.3.x y 1.4.x del antivirus ClamAV están soportadas y mantenidas.
Si tiene una versión anterior, ClamAV ya no debería funcionar porque las bases de datos de firmas recientes no son compatibles con estas versiones antiguas. Por lo tanto, puede utilizar nuestras
firmas adicionales para ClamAV, en su versión Profesional como mínimo, o actualizar urgentemente su antivirus ClamAV. ¡O ambas cosas, lo que sería aún mejor!
Para profundizar más, le recomiendo leer nuestro artículo sobre las
versiones antiguas del antivirus ClamAV.
El antivirus ClamWin ya no funciona
ClamWin es un port de Windows del antivirus ClamAV, pero realizado por un tercero. Por lo tanto, ClamWin no está soportado ni desarrollado por los equipos de Cisco / Sourcefire. Desafortunadamente, este antivirus para Windows ya no es desarrollado por su propietario y su última versión disponible es la versión 0.103.2.1. Como se explicó en el párrafo anterior, las versiones 0.103 ya no son soportadas por ClamAV, por lo que ClamAV ha invalidado la descarga de las bases de datos de firmas para ClamWin. Esto lo hace totalmente ineficaz, por lo que se desaconseja usar ClamWin en un entorno empresarial o de producción.
La solución que recomendamos es
descargar la versión oficial de ClamAV para Windows. Está disponible en versión de 32 bits y de 64 bits. Es cierto que esta versión no tiene interfaz gráfica (GUI), pero la línea de comandos de ClamAV no es muy complicada, y solo se necesitan unos simples archivos BAT para automatizar el escaneo de su disco duro.
También existe un
port no oficial del antivirus ClamAV para Windows que es interesante porque funciona con versiones muy antiguas de Windows (¡WinNT y Windows 98!). Sin embargo, sigue siendo línea de comandos y no tiene interfaz gráfica.
Error 426 con las firmas de SecuriteInfo.com
Si obtiene un error 426 al usar freshclam para descargar
nuestras firmas antivirus, significa que tiene una cuenta gratuita y un antivirus ClamAV obsoleto.
La solución consiste en actualizar su instalación de ClamAV o elegir una suscripción "Profesional" para descargar nuestras firmas. O bien hacer ambas cosas para mejorar significativamente la detección de malware en su instalación.
No puedo descargar securiteinfoold.hdb o tengo errores 'nonblock_recv: recv timing out (30 secs)' o 'Download failed (28) ... Message: Timeout was reached'
- Para ClamAV más antiguo que 0.102.2, añada "ReceiveTimeout 2400" a su archivo freshclam.conf y reinicie el demonio freshclam.
- Para ClamAV 0.102.2 y superiores, elimine ReceiveTimeout de su archivo freshclam.conf y reinicie el demonio freshclam.
Actualizar su versión de ClamAV
Como puede ver, la mayoría de los problemas se resuelven actualizando el antivirus ClamAV a la última versión conocida. Hay varias maneras de hacerlo, elija la que corresponda a su entorno.
- Si recompiló ClamAV a partir de su código fuente, simplemente obtenga la última versión de los archivos fuente de ClamAV y recompílelo en su entorno. Sin embargo, tenga cuidado con la versión de su sistema operativo: si utiliza un sistema operativo demasiado antiguo, es posible que la última versión de ClamAV genere errores de compilación.
- Si tiene una versión ejecutable de ClamAV, como por ejemplo con ClamAV para Windows, simplemente instale el paquete que contiene la nueva versión del ejecutable. ¡Es la solución más simple!
- Si su sistema operativo le proporcionó el antivirus ClamAV, como sucede en la gran mayoría de entornos Linux (Ubuntu, Debian, Red Hat, CentOS...), entonces es imprescindible actualizar su sistema operativo. Si esta actualización es imposible porque resulta demasiado restrictiva, recomendamos eliminar el paquete ClamAV de su sistema operativo, instalarlo y luego recompilar ClamAV a partir de las fuentes. Pero como se explicó anteriormente, si su sistema operativo es demasiado antiguo, ClamAV podría no recompilarse.
Para más información, le recomendamos leer nuestro artículo
¿Qué riesgos hay al usar una versión antigua del antivirus ClamAV?
El soporte de SecuriteInfo.com
Si tiene necesidades específicas relacionadas con ClamAV, como un contrato de mantenimiento, soporte para la compilación o vigilancia tecnológica, no dude en
contactarnos y explicarnos sus necesidades. Estaremos encantados de atender sus requerimientos de protección antivirus con ClamAV.
El soporte oficial de ClamAV
Si tiene otros mensajes de error o desea soporte directo con los equipos de desarrollo de ClamAV, tiene dos opciones:
- Puede inscribirse en la lista de distribución oficial (solo en inglés) y luego hacer su pregunta por correo electrónico. La comunidad y algunos de los desarrolladores de ClamAV le responderán en esta lista.
- Puede crear un ticket en su GitHub. Sin embargo, debe ser desarrollador, ya que deberá aportar muchos detalles técnicos en su ticket. No es para el público general.
¿Lo sabía?
SecuriteInfo.com pone a disposición
firmas antivirus adicionales para el antivirus ClamAV. Esto permite mejorar enormemente la detección de malware y spam.
Nota: ClamAV es una marca registrada por Cisco
Tags
ANTIVIRUS
CLAMAV
LINUX
WINDOWS
MACOS
Inscription à notre lettre d'information
Inscrivez-vous à notre
lettre d'information pour vous tenir au courant de nos actualités et de nos dernières trouvailles.