Skip to main content

Integración con antivirus ClamAV

Wazuh detecta archivos maliciosos mediante la integración con ClamAV , el cual es un motor antimalware gratuito y de código abierto para detectar varios tipos de malware, incluidos virus y troyanos.

ClamAV es un conjunto de herramientas antimalware de código abierto diseñado para diversos casos de uso, como seguridad de terminales, escaneo web y tiene las siguientes características:

  • Ofrece protección en tiempo real para puntos finales de Linux.
  • Proporciona actualizaciones automáticas a la base de datos de malware.
  • Admite todos los formatos de archivos de correo estándar de forma predeterminada.
  • Admite varios formatos de archivo como ZIP y RAR.
  • Admite archivos de documentos comunes, como archivos de MS Office y Mac Office, HTML, RTF y PDF.
  • Está diseñado con un actualizador de bases de datos avanzado que puede aprovechar actualizaciones programadas o firmas digitales.
  • Utiliza un escáner de línea de comandos.
  • Tiene soporte integrado para ejecutables ELF y archivos ejecutables portátiles empaquetados con UPX, FSG, Petite, NsPack, wwpack32, MEW, Upack y ofuscados con SUE y otros.

Configuración.

Puede configurar ClamAV y recopilar sus registros desde puntos finales de Linux y Windows. Para recopilar registros de ClamAV de puntos finales de Linux, elimine la etiqueta de comentario # antes de la declaración "LogSyslog true" en el archivo de configuración. Quitar el comentario a esta declaración reenvía los registros de ClamAV al archivo Syslog /var/log/syslog. 

Para instalar el entorno de prueba tendremos que ejecutar los siguientes comandos.

sudo apt-get update
sudo apt-get install clamav-daemon
sudo chmod 644 /etc/clamav/clamd.conf
sudo chmod 644 /etc/clamav/freshclam.conf
sudo chown root:clamavclamav:adm /etc/clamav/clamd.conf
sudo chown root:clamavclamav:adm /etc/clamav/freshclam.conf

image.png

Instalación de RsyslogRsyslog.

sudo apt-get install rsyslog -y
Configuración daemon de Clamav.

Modificar los datos en el archivo de configuración.

sudo nano /etc/clamav/clamd.conf
LogSyslog true
#LogFile /var/log/clamav/clamav.log
sudo nano /etc/clamav/freshclam.conf
LogVerbose true
LogSyslog true

Modificar los siguientes apartados en clamd.conf que es el scanner mediante linea de comandos.

sudo nano /usr/local/etc/clamd.conf
# Comment or remove the line below.
# Example
sudo nano /usr/local/etc/freshclam.conf
# Comment or remove the line below.
# Example
UpdateLogFile /var/log/clamav/freshclam.log
systemctl restart clamav-daemon 
systemctl enable clamav-daemon 
systemctl restart wazuh-agent
sudo usermod -aG clamav $USER
sudo usermod -aG adm $USER
sudo chmod 666 /var/run/clamav/clamd.ctl

Comando de prueba para analisis:análisis y almacenamiento en syslog:

clamscan --stdout --no-summary -i -r /directorio/de/escaneo | logger -t "clamd[5286]"

Comando de prueba para respuesta en consola de archivos infectados:

clamscan --stdout --no-summary -i -r /home/rchavez/Descargas/Malware
Agente de Wazuh.

Si no se lee por defecto se debe añadir el apartado localfile que obliga a realizar el registro del directorio syslog para que Wazuh agent lo analice cada vez que se realice un escaneo de cualquier directorio.

nano /var/ossec/etc/ossec.conf
  <localfile>
    <log_format>syslog</log_format>
    <location>/var/log/syslog</location>
  </localfile>
systemctl restart wazuh-agent

Una vez realizados los ajustes podemos observar diferentes tipos de alertas generadas.

Cuando se detiene el servicio de clamAV tenemos:

image.png

Cuando se detecta un archivo infectado tenemos:

image.png

Cuando se tiene un error inesperado o mala configuración tenemos:

image.png

Actualización automática de freshclam.

Configuración de cantidad de veces al día que se actualiza clamav-freshclam de forma automática modificando el archivo de configuración. Por defecto se establece en 24 pero dependiendo de la cantidad de recursos del equipo esta puede modificarse.

sudo nano /etc/clamav/freshclam.conf
#Para una actualización de 6 veces al dia.
Checks 6
sudo systemctl restart clamav-freshclam
Actualización manual de freshclam.

Configuración manual para actualizar clamav-freshclam realizando los siguientes siguientes comandos:

sudo systemctl stop clamav-freshclam.service
sudo freshclam
sudo systemctl restart clamav-freshclam.service