¿Qué hace un antivirus para detectar el malware?

Fecha de publicación 30/05/2019
Autor
INCIBE (INCIBE)
Imagen de un antivirus

El antivirus es esa herramienta que mencionamos, constantemente, en nuestros artículos y avisos de seguridad y cuya funcionalidad es indispensable para preservar la integridad de la información y los sistemas que la gestionan. Sin embargo, hasta ahora, no hemos comentado qué es lo que hace, exactamente, para proteger nuestros dispositivos. En este artículo os mostraremos algunos detalles y características de esta herramienta básica de ciberseguridad.

¿Qué hace un antivirus?

Un antivirus es un tipo de software cuyo principal objetivo es detectar y bloquear acciones maliciosas en el equipo, generadas por cualquier tipo de malware y en caso de que se haya producido una infección, eliminarla. Actualmente, este tipo de software forma parte de lo que se conoce como suites de herramientas de seguridad que incorporan otras funcionalidades: gestores de contraseñas, analizadores de la red wifi o bloqueadores de sitios web maliciosos como los utilizados en campañas de phishing.

Detección de malware

Los antivirus incorporan una gran cantidad de funciones. Hoy nos vamos a centrar en cómo detectan los códigos maliciosos. Para ello, cuentan, principalmente, con dos tipos de protección:

  • reactiva, basada en firmas;
  • proactiva o heurística.

Base de datos de firmas

El método, tradicionalmente utilizado por los antivirus para la detección del malware, se fundamenta en bases de datos de firmas (una forma de identificar el malware), generadas por el fabricante, también conocidas como vacunas. El posible archivo malicioso se compara con la base de datos y si existe una coincidencia entonces se trata de malware.

Problemas de la detección basada en firmas

  • El principal problema de este tipo de análisis, es que únicamente detectará aquellas muestras de malware que ya hayan sido identificadas, previamente, y para las cuales se haya generado una firma que esté en la base de datos. En caso de que ésta no existiera en la base de datos que tiene el antivirus del usuario, este quedaría expuesto a la amenaza. Detección de los antivirus basada en eurística.
  • Otro inconveniente es la demora que existe entre la identificación, generación de la firma y actualización de la base de datos, esa ventana de tiempo deja al usuario indefenso frente a la amenaza.
  • Por último, hay una gran cantidad de archivos maliciosos que son creados a diario haciendo que la detección, exclusivamente basada en firmas, haya quedado obsoleta.

Heurística

Como método complementario a la detección basada en firmas y para dar solución a sus deficiencias, se diseñó la detección proactiva basada en heurística. Este método de detección de malware, da respuesta a muchas situaciones donde la detección basada en firmas no llega como:

  • el malware que todavía no tiene una firma;
  • el malware que ha sido descubierto pero la firma todavía no ha llegado al usuario.

La heurística es considerada una de las partes de la inteligencia artificial, diseñada bajo reglas obtenidas de la experiencia y un sistema de aprendizaje automático que hacen que este método sea mejor y más preciso con el tiempo.

El funcionamiento de los algoritmos heurísticos basa su comportamiento en diferentes criterios que determinarán si un archivo es malicioso, como por ejemplo, que se modifique el registro o se establezca una conexión remota con otro dispositivo. A cada uno de esos criterios se le asigna un puntaje. Si este supera un determinado umbral se le considerará una amenaza.

Detección de los antivirus basada en firmas.

Tipos de algoritmos heurísticos

Este tipo de análisis proactivo puede ser llevado a cabo de distintas formas, aunque las tres más comunes son:

  • genérico: este análisis compara el comportamiento de un determinado archivo con respecto a otro ya identificado como malicioso. Si el archivo analizado supera el umbral de similitud, será considerado malicioso variante del primero;
  • pasivo: analiza el archivo de forma individual, sin realizar ninguna comparación con otro identificado como malware, e intenta averiguar qué es lo que hace, por ejemplo abrir un puerto o conectarse a una dirección IP. Si las acciones son consideradas peligrosas, marcará la muestra como maliciosa;
  • activo: este ejecuta la muestra en un entorno seguro o sandbox que determinará su comportamiento e identificará si se trata de malware o no.

Problemas de la detección basada en heurística

  • El principal problema de este tipo de detección son los falsos positivos. Es decir, que una aplicación, sin ningún propósito malicioso, sea identificada como malware. Los algoritmos heurísticos suelen poseer distintos niveles de rigurosidad. Cuanto más riguroso sea el análisis, más probabilidad existirá de que se produzca un falso positivo y viceversa;
  • otro inconveniente de este análisis es que la carga de trabajo del equipo aumenta en comparación con el análisis basado en firmas, pudiéndose ver afectado el rendimiento de otras herramientas.

Importancia de mantener el antivirus actualizado

Esta es una recomendación que siempre damos y ahora ya sabéis por qué.

¿Qué método de detección elegir?

Decantarse, únicamente, por un método de detección u otro sería un error, ya que se perderían las ventajas aportadas por el otro.

Los antivirus son una de las piezas clave en la prevención de amenazas, por lo que mantener esta herramienta activa y actualizada prevendrá la mayoría de ellas. Además, actualmente, cuentan con multitud de herramientas que ayudan mejorar el nivel de ciberseguridad del dispositivo de forma considerable, ya sea un ordenador o un Smartphone, ya que estos dispositivos también deben protegerse. ¡Instala un antivirus y si ya lo tienes, mantenlo actualizado a la última versión!