Qué son los virus?
En la Real Academia nos encontramos con la siguiente definición del termino virus: “Programa
introducido subrepticiamente en la memoria de un ordenador que, al activarse, destruye total o
parcialmente la información almacenada”.
De una forma más coloquial y quizás más correcta podríamos decir que un virus informático es
programa que se copia automáticamente (sin conocimiento ni permiso del usuario), ya sea por
medios de almacenamiento o por Internet, y que tiene por objeto alterar el normal
funcionamiento del ordenador, que puede ir desde una simple broma; acceso a tus datos
confidenciales; uso de tu ordenador como una maquina zombie; borrado de los datos; etc.
En un principio estos programas eran diseñados casi exclusivamente por los hackers y crackers que
tenían su auge en los Estados Unidos y que hacían temblar a las grandes compañías. Tal vez esas
personas lo hacían con la necesidad de demostrar su creatividad y su dominio de las
computadoras, por diversión o como una forma de manifestar su repudio a la sociedad que los
oprimía. Hoy en día, resultan un buen medio para el sabotaje corporativo, espionaje industrial y
daños a material de una empresa en particular.
Un virus puede ser o no, muy peligroso, pero independientemente de dicho grado, si el sistema a
comprometer es crítico, un virus de bajo grado de peligrosidad podrá causar graves daños. Si por
el contrario dicho virus es muy peligroso y afecta a una computadora familiar sus daños serán
mínimos. Por ello desde el punto de vista de una empresa o gran corporación, un virus sea cual
sea, debe ser considerado siempre como peligroso.
Cómo funcionan?
Se podría decir que la mayor parte de los virus estaban y quizás estén programados en
Ensamblador, lenguaje de bajo nivel que permite trabajar directamente sobre el hardware, sin
tener que interactuar con el Sistema Operativo. Actualmente no todos los virus se desarrollan en
Ensamblador, sino que se utilizan todo tipo de lenguajes de alto nivel, que no permiten realizar
todas las acciones que permite el ensamblador, pero sí facilitan mucho su codificación.
Lo que tratan los virus es de ser ejecutados para con ello poder actuar y replicarse, ya que ningún
usuario ejecutaría un virus de forma intencionada. Los virus deben ocultarse, ya sea tras otros
programas “benignos” o bien utilizando otras técnicas.
Por norma general, un virus intentará cargarse en la memoria para poder ejecutarse, y controlar
las demás operaciones del sistema.
Como formas más comunes de infección de los virus podríamos tener las siguientes:
En el caso de que un virus tratara de cargarse en el arranque, intentaría dos cosas.
- Primero si existe la posibilidad de cargarse en la CMOS, lo cual sería posible si la memoria
no es ROM, sino que es Flash-ROM.
- Si esto no es posible, intentará cargarse en el sector de arranque. El sistema cargará el MBR
en memoria RAM que le indicará las particiones, el tamaño, cual es la activa (en la que se
encuentra el S.O.) para empezar a ejecutar las instrucciones. Es aquí donde el virus deberá
cargar el MBR en un sector alternativo y tomar su posición de tal forma que cada vez que
se arranque el sistema el virus se cargará. Así, ya que el antivirus se carga tras el S.O. la
carga del virus en memoria no será detectada.
Por otro lado, si virus infecta un archivo ejecutable .EXE, intentará rastrear en el código los puntos
de entrada y salida del programa. Teniendo conocimiento de estos dos puntos, el virus se
incrustará antes de cada uno de ellos, asegurándose así de que cada vez que dicho programa se
ejecute, el virus será ejecutado. Una vez esté en ejecución decidirá cual es la siguiente acción a
llevar a cabo, ya sea replicarse introduciéndose en otros programas que estén en memoria en ese
momento, ocultarse si detecta antivirus, etc.
Tanto virus como gusanos, troyanos,…, tienen unos objetivos comunes. Ocultarse al usuario;
reproducirse ya sea en otros ficheros o en el caso de los gusanos autoenviarse; y finalmente llevar
a cabo la acción para la cual ha sido programado, destrucción de datos, obtención de datos
personales, control remoto de la máquina.
Para conseguir dichos objetivos podríamos decir que su estructura se divide en tres módulos
principales:
- Módulo de reproducción: Es la parte encargada de gestionar las rutinas gracias a las
cuales el virus garantiza su replicación a través de ficheros ejecutables. Dichos ficheros
ejecutables cuando sean trasladados a otras computadoras provocarán también la
dispersión del virus.
- Módulo de ataque: Módulo que contiene las rutinas de daño adicional o implícito. Este
podrá ser disparado por distintos eventos del sistema: una fecha, hora, el encontrar un
archivo específico (COMMAND.COM),