¡COMO FUNCIONAN LOS ANTIVIRUS?


Identificación

Para identificar un virus primero deberemos detectarlo y luego determinar de cuál se trata.
A la técnica de identificación se le conoce como “scanning”. Los programas antivirus poseen cadenas propias de cada virus. Dichas cadenas las usará el antivirus como “huella” para identificar si un fichero se trata o no de virus y si es así cuál es en concreto.

Teóricamente se deberían comprobar todos los archivos del sistema con todas y cada una de las cadenas de virus que tiene en la base de datos el antivirus, pero esto en la práctica no es eficiente ya que sería bastante costoso.

Para que este proceso sea posible, y un usuario pueda identificar un virus, con anterioridad otro usuario debe haber informado de su presencia a las empresas desarrolladoras de antivirus para que éstas creen la cadena del virus y preparen su desinfección si es que es posible. Por ello es tan importante tener actualizadas las bases de datos y que la empresa desarrolladora de nuestro antivirus saque con frecuencia actualizaciones de las firmas.

Esto último es lo que hace que la técnica de scanning sea algo débil, ya que para que un virus sea detectado depende de que tengamos su firma en nuestro antivirus. Durante ese transcurso de tiempo el virus es libre.

 Detección

Es muy interesante detectar un virus antes de que ocasione daños. Por ello es primordial
detectarlo por encima de identificarlo. La técnica de scanning es algo débil por lo que aparecen otras técnicas que nos permiten detectar a un virus aunque no sepamos exactamente cual es.

Entre ellas se encuentran el análisis heurístico y la comprobación de integridad.

  • Análisis heurístico

Puede ser considerada como la técnica de detección de virus más común. Está técnica analizará los distintos ficheros en búsqueda de instrucciones, o secuencia de ellas, dañinas para el sistema.
Algunos posibles ejemplos serian instrucciones de que intentarán replicarse, modificaciones en la FAT, acceso a los contactos de nuestro programa de correo, etc.
No obstante alguna de las instrucciones comentadas antes no tienen porqué ser dañinas. Por ello esta técnica conlleva multitud de falsas alarmas.

  •  Comprobación de integridad

Técnica de detección que consiste en una vigilancia continua de algunos sectores del sistema controlando que estos no sean alterados sin el permiso del usuario.
Esta comprobación se realiza tanto en archivos como en sectores de arranque.
Para poder usar está técnica lo primero que deberá hacer el antivirus será crear un registro con las características (nombre, tamaño, fecha….) de cada uno de los archivos y aplicar sobre cada uno de ellos un algoritmo que nos dará un valor, en principio único (aunque en ocasiones dos ficheros distintos han producido checksum idénticos), denominado checksum.
En el momento en que un virus se introduzca en un fichero será detectado por el antivirus al realizar la consiguiente comprobación de checksum, ya que al aplicar dicho algoritmo sobre el fichero el checksum resultante no será el mismo.

El método de comprobación de integridad para un MBR o para el sector de boot es bastante similar, pero en este caso no solo se hará un checksum sino que también se hará una copia de seguridad de dichos datos. De esta forma cuando el antivirus se encuentre monitorizando si encuentra alguna diferencia entre los checksum avisará al usuario y dará la posibilidad de restaurar con las copias de seguridad hechas anteriormente.

Obviamente para que esta técnica sea efectiva, todos los checksum y copias de seguridad deben realizarse antes de que el sistema esté infectado, ya que si no es así los checksum a pesar de que un fichero contenga virus estarán correctos.

  •  Eliminación

Podría parecer sencillo el hecho de desinfectar o eliminar un virus de un fichero ya que la idea es sencilla: extraer el código dañino del fichero infectado, que normalmente como ya dijimos se sitúa en el inicio y fin del fichero. Pero no es una tarea tan sencilla ya que por lo general los antivirus son capaces de eliminar un pequeño porcentaje de los virus, exactamente de los que se tiene un amplio conocimiento, por lo general los más conocidos.
Incluso en los casos en los que la eliminación sea posible puede ser peligrosa ya que si el virus no está perfectamente identificado las técnicas usadas para su eliminación no serán las adecuadas.
Por todo ello quizás lo más adecuado en los casos en que la seguridad sea crítica es borrar dichos ficheros infectados y restaurarlos con la correspondiente copia de seguridad. Incluso si no estamos seguros o si la infección se ha realizado en los sectores de arranque la solución pasaría por formatear la unidad correspondiente (si tenemos la seguridad de que no han sido infectadas las demás unidades del sistema).

  • Demonios de protección

Conocidos en el ámbito de UNIX como demonios de protección y el de MSDOS como TSR, éstos son módulos del antivirus que residen en memoria evitando la entrada de cualquier virus y controlando aquellas operaciones que se consideren sospechosas. Controlará operación de creación de nuevos ficheros, borrado, copia, etc.

Dichos demonios serán cargados antes que cualquier otro programa para poder detectar desde un principio la carga en memoria de los posibles virus.
  •  Cuarentena

Ya que la eliminación de los virus, como ya indicamos, no siempre es posible, en muchas ocasiones la solución podría consistir en borrar el fichero. Esto es un procedimiento arriesgado ya que puede que realmente el fichero no esté infectado, y que no se tenga copia de seguridad para restaurarlo por lo que borrarlo supondría perderlo. Es aquí cuando surge el concepto de cuarentena.
Todos aquellos ficheros que sospechemos que realmente no están infectados o que nos queremos asegurar de su infección (porque no podemos permitirnos borrarlos así como así) se pondrán en cuarentena. La cuarentena consiste en encriptar dicho fichero y guardarlo en un directorio creado para tal efecto.
Esto paralizará el posible daño del virus, si es que realmente se trata de un virus, o restaurarlo en el momento en que nos aseguremos de que no es un virus.
  •  Bases de datos de antivirus

Para que la técnica de scanning sea efectiva, las definiciones, cadenas o firmas de los virus deben estar actualizadas. De esto se ocuparán las compañías de antivirus que controlarán los virus siguiendo sus posibles modificaciones y sacarán nuevas firmas.

No obstante no solo es imprescindible mantener actualizadas dichas firmas sino que también es importante mantener actualizado el programa antivirus en sí, ya que nos proporcionará técnicas mejoradas de análisis heurístico, mejora de los demonios de protección, etc.

No hay comentarios.:

Publicar un comentario