Ya han pasado más de 20 años desde que el primer virus informático hiciera su aparición. Desde aquel entonces, la naturaleza de las amenazas ha cambiado de manera significativa. Las amenazas actuales son más complejas que nunca antes.
Gran parte de los modernos códigos maliciosos, incluyendo todo tipo de troyanos, vulnerabilidades, paquetes raíz o rootkits, robo de identidades o phishing, correo no deseado o spam y programas espía o spyware, además de virus y gusanos, tienen como objetivo secuestrar los ordenadores de los usuarios con fines de lucro ilegales. La conectividad que ofrece Internet significa que los ataques pueden lanzarse de manera muy rápida en los ordenadores cautivos, ya sea masiva o selectivamente, según los deseos de los autores de programas maliciosos o malware, y sus delincuenciales redes de auspiciadores. Los códigos maliciosos pueden ir incrustados en mensajes electrónicos, inyectados en falsos paquetes de datos o insertados en páginas Web para ser descargados por un troyano instalado en un equipo infectado. La magnitud del problema, en términos cuantitativos, también ha tenido un crecimiento incesante. Las bases de datos antivirus de Kaspersky Lab contienen 570.000 registros , y a diario se añaden cerca de 3.500 nuevas entradas.
En cualquier campo de la actividad humana, la generación más reciente se apoya por completo en las anteriores, aprende de lo que se hizo antes, repite lo que tuvo éxito, al mismo tiempo que trata de abrir nuevos caminos. Esto también es cierto para los que desarrollan códigos maliciosos. Sucesivas oleadas de códigos maliciosos han redefinido el panorama de las amenazas.
Se desprende de lo anterior que las soluciones de seguridad también tuvieron su propia evolución en sus intentos de responder a cada generación de amenazas. Como resultado de ello, tanto la enfermedad como el remedio difieren en gran medida del punto en el que se encontraban cuando surgió el primer problema viral. Pero, ¿cuáles son los factores específicos que influyeron en el desarrollo de los códigos maliciosos? Y ¿cómo han evolucionado las soluciones de seguridad para enfrentarse a cada nueva amenaza?
Los primeros virus para PC: virus de sector de arranque (boot sector viruses)
El primer virus informático, Brain, surgió en 1986. Brain era un virus localizado en el sector de arranque. Los virus en el sector de arranque funcionaban modificando el primer sector en los disquetes o floppy disk. El ciclo vital de un virus del sector de arranque era el siguiente: el virus se ejecutaba y cargaba su código en la memoria cuando el usuario arrancaba el equipo desde un disco infectado. El disco no tenía que ser un disco de sistema: cualquier disco cumplía el cometido. En la mayoría de los casos, el usuario no pretendía arrancar el sistema desde el disco. Por lo general, sucede que el usuario olvida quitar el disco al apagar el equipo y, posteriormente, arranca el sistema con el disco dentro del ordenador. Si el BIOS estaba configurado para arrancar desde un disco floppy el sistema detectaba el disco en la unidad A y de manera automática cargaba cualquier código que se encontrara en el sector de arranque. En el caso de un disco infectado, el virus. El usuario se daba cuenta de que estaba tratando de arrancar, por equivocación, desde un disco floppy cuando aparecía el mensaje “Non system disk or disk error, replace and press any key when ready”. Luego, quitaba el disco y seguía trabajando, sin siquiera sospechar de lo que acababa de ocurrir. Lo que sucedía después dependía del sistema operativo que se usaba. Los virus en el sector de arranque infectaban el BIOS, antes de que se cargara el sistema operativo. Por ende, estos virus eran independientes del sistema operativo1. Sin embargo, utilizaban llamadas DOS para llegar a la memoria residente y así diseminarse a otros discos floppy: si el sistema operativo no era compatible con DOS, entonces no tenían la oportunidad de cargarse y diseminarse. Eran neutralizados de manera efectiva por cualquier sistema operativo distinto a DOS, Windows 3.x (que se superponía a DOS) o Windows 9x (que a veces podía recurrir al acceso DOS a discos floppy). El único daño que podían causar en otros sistemas operativos era si se encontraban codificados para ocasionar daños rutinarios a nivel del BIOS, antes de que arrancara el sistema operativo. Este es, por ejemplo, el caso de Michelangelo, que sobrescribía el inicio del disco duro tan pronto como el ordenador arrancaba en una fecha dada… antes de que el sistema operativo lograra arrancar.
Los autores de virus dirigidos a los sectores de arranque no necesitaban implementar técnicas de ingeniería social para diseminar sus creaciones. Por el contrario, se necesitaba muy poca intervención del usuario más allá de dejar olvidado el disco floppy infectado en el dispositivo de lectura. En esa época, los discos floppy eran el medio principal de transferencia de datos desde un ordenador a otro, y entre usuarios. De manera que resultaba casi inevitable que, tarde o temprano, el usuario afectado pasara un disco floppy infectado a un amigo, colega o cliente, ayudando así a diseminar el virus.
En los años siguientes a la aparición de Brain, los virus dirigidos al sector de arranque se refinaron y desarrollaron aún más. Mientras que Brain se limitaba a infectar discos floppy, la mayoría de sus sucesores fueron diseñados para infectar también el disco duro. En la mayoría de los casos, esto significaba inscribir el código en el registro maestro de arranque, conocido como MBR (Master Boot Record). Sin embargo, algunos, como por ejemplo Form, infectaban el sector de arranque del disco duro. Y un reducido número, tal es el caso de Purcyst, infectaban el registro MBR y el sector de arranque.
Los virus de fichero para DOS
Hasta 1995, los virus dirigidos al sector de arranque representaban cerca del 70% de todas las infecciones detectadas2 circulando en Internet. Sin embargo, no eran el único tipo de virus. Asimismo, este periodo fue testigo del surgimiento de virus diseñados para infectar archivos ejecutables DOS, primero los archivos COM, y luego los archivos EXE. Estos virus modificaban el archivo anfitrión de tal manera que el código viral se ejecutaba de manera automática al iniciarse el programa. Existían varios métodos para infectar archivos.
Un método típico consistía en añadir el código viral al final del archivo anfitrión para modificar el encabezamiento del archivo, de manera que primero se cargara el código viral y después las instrucciones del programa original. No obstante, este método presentaba una serie de variaciones. Algunos virus insertaban su código al inicio del archivo. Otros lo hacían en varios lugares del archivo. Y otros, conocidos como virus de sobrescritura, reemplazaban el código original por completo: como era de esperar, el programa anfitrión no lograba ejecutarse, por lo que esos virus no eran muy comunes; su presencia resultaba demasiado obvia para que pudieran sobrevivir por largo tiempo. Algunos virus escogieron un método alternativo de infección. Los virus acompañantes almacenaban su código en un archivo "acompañante" separado. Por ejemplo, el virus podía renombrar el archivo estándar RUNME.EXE por RUNME.EXD y crear uno nuevo RUNME.EXE conteniendo el código viral: Cuando el usuario ejecutaba el programa, primero se cargaba el virus y luego entregaba el control al programa original, de manera que el usuario no notara nada sospechoso. Otra alternativa consistía en el “virus vínculo” que se diseminaba manipulando la manera en que se accedía a los archivos bajo el sistema de archivos FAT utilizado por DOS. El usuario recibía un archivo infectado (en disco floppy, por ejemplo) y lo ejecutaba. Entonces el virus se cargaba en la memoria y creaba un archivo (generalmente invisible) en el disco: este archivo contenía el código viral. Posteriormente, el virus modificaba el FAT para vincular otros archivos al sector del disco que contenía el código viral. Como resultado, cuando se ejecutaba el archivo infectado, lo primero que hacía el sistema era saltar al código viral y lo ejecutaba.
Una razón por la que los archivos virales eran menos comunes que los archivos dirigidos a los sectores de arranque del sistema era que los usuarios no solían intercambiar programas, en particular en el ambiente empresarial. Aunque intercambiaban discos floppy, lo hacían principalmente para transferir datos. Dicho esto, también había archivos virales en aquellos días. Los más exitosos y de más rápida expansión estaban diseñados para alojarse en la memoria residente: conocidos como virus de archivos de acción indirecta, podían monitorear las actividades en el sistema e infectar cualquier archivo que el usuario ejecutara. Por el contrario, los virus de archivos de acción directa sólo infectaban un archivo (o archivos) cuando se ejecutaba el programa infectado y luego pasaban al estado de hibernación hasta que se ejecutara un archivo infectado: la diseminación de estos virus era mucho menos efectiva. Otro factor que ayudaba a los virus de archivo a expandirse era la distribución masiva de medios de comunicación: esto solía suceder a través de la distribución de discos infectados incluidos en portadas de revistas.
Seguir leyendo
No hay comentarios:
Publicar un comentario