- Los primeros virus para PC: virus de sector de arranque (boot sector viruses)
- Los virus de fichero para DOS
- El panorama viral de los 80
- Camuflaje y polimorfismo
- Las soluciones antivirus de entonces
- Aumentan las amenazas, evolucionan los métodos de detección
- Los primeros bloqueadores de conductas peligrosas
- Intercambio de virus y herramientas de creación de virus
- Los macrovirus
- Soluciones para servidores de correo y pasarelas de Internet
- El nacimiento del spam
- Envíos masivos de códigos nocivos
- Los gusanos para correo electrónico
- Las respuestas al aumento de la velocidad de propagación
- Los cortafuegos personales
- Los sistemas de prevención de intrusos (IPS)
- El análisis de comportamientos
- Del vandalismo cibernético al delito cibernético
- Los ataques “phishing”
- Un camuflaje más sofisticado
- Programas nocivos para dispositivos móviles
- Los desafíos actuales
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 principal 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.
El panorama viral de los 80
Mientras que el número total de virus de archivos crecía de manera sostenida desde finales de los años 80, la escena estaba dominada por un número muy reducido de virus muy exitosos. Por ejemplo, Jerusalem se esparció a través de muchas empresas, instituciones académicas y agencias gubernamentales, y el 13 de mayo de 1988 (que llegó a ser conocido como el “Viernes negro”) causó la mayor epidemia viral hasta entonces conocida. El virus Vienna engendró numerosas variantes tras la publicación de su código fuente. Y Cascada, notable por ser el primer virus codificado, continuó siendo popular hasta bien entrada la década de los 90.
A medida que pasaba el tiempo, algunos autores de virus trataron de recopilar lo mejor de ambas vertientes desarrollando virus que eran una combinación de los virus dirigidos a los sectores de arranque y de los virus de archivos. Tequila, Junkie y Natas son ejemplos exitosos de lo que llegó a conocerse como virus multipartes.
En ese entonces, se trataba casi por completo de un problema viral. Ya habían aparecido algunos gusanos, siendo el más notorio el gusano Morris, aparecido en noviembre de 1988: este gusano logró infectar a más de 6.000 sistemas vulnerables (casi el 10% de todos los ordenadores conectados a Internet en 1988). Sin embargo, en ese momento, Internet se utilizaba de manera casi exclusiva por el gobierno y por instituciones académicas. Aún no había llegado el momento del gusano de Internet.
Además, sólo había un reducido número de troyanos. El término troyano (forma reducida de caballo de troya) proviene del caballo de madera usado por los griegos para infiltrarse en la ciudad de Troya y capturarla. Los primeros troyanos que aparecieron a fines de los años 80 se camuflaron como programas inocuos. Una vez que el incauto usuario ejecutaba el programa, el troyano descargaba su carga dañina. A continuación citamos la definición usual dada por la mayoría de los fabricantes de soluciones antivirus: un troyano es un programa incapaz de reproducirse que aparenta ser un programa legítimo, pero que está diseñado para realizar acciones nocivas en el ordenador cautivo.
El hecho de que los troyanos no se reproducen es la principal característica que los distingue de los virus. Los virus son parasitarios pues añaden su código a un programa anfitrión ya existente. Es así que se esparcen de archivo en archivo: y cuanto más tiempo permanezca infectado un usuario, más se expandirá el virus en su ordenador (y potencialmente también a través de la red, si el usuario dispone de acceso a una red). Por el contrario, los troyanos no cuentan con un mecanismo incorporado de reproducción. Entonces, en esa época los autores de troyanos tenían que encontrar la manera de distribuir su código de manera manual: cargarlo a un sistema BBS (Bulletin Board System), como una aplicación útil, implantarlo deliberadamente en una red corporativa, o enviarlo por correo electrónico a una lista predefinida de víctimas.
Por ejemplo, Twelve Tricks, era una versión pirateada de un programa de referencia estándar (benchmark) para el disco duro. Al instalarse, el troyano se inscribía en el registro MBR del disco y ejecutaba uno de sus doce “trucos”, muchos de los cuales aparentaban ser un problema de hardware. Por desgracia, también había la posibilidad de que el troyano formateara la pista del disco duro que contenía el sector de arranque, o que causara un deterioro gradual del FAT.
Otro ejemplo de un troyano de las primeras épocas era el Aids Information Disk (disco informativo sobre el sida). A fines de 1989, 20.000 discos floppy que contenían este troyano fueron enviados a direcciones robadas de PC Business World y de la Organización Mundial de la Salud por una compañía llamada PC Cyborg. Supuestamente, estos discos contenían información sobre el VIH; el autor claramente estaba jugando con la gran preocupación del público sobre esta enfermedad. Cuando el usuario ejecutaba el programa de instalación, el troyano se autoinscribía en el disco duro, creaba sus propios archivos y directorios ocultos, y modificaba los sistemas de archivos. Cuando el ordenador había sido iniciado 90 veces, el troyano codificaba los contenidos del disco duro, haciendo inaccesible toda información. El único archivo accesible que quedaba en el disco era README: este archivo contenía una cuenta y una dirección postal en Panamá para realizar el pago. Resulta interesante que el uso de los “mecanismos de programa”, incluyendo algunos que “afectarían negativamente a otras aplicaciones de programas” venía anunciado al principio del acuerdo de licencia incluido en el disco floppy utilizado para distribuir el troyano3.
No fue sino mucho después que llegaría el auge de los troyanos.
Camuflaje y polimorfismo
Este periodo también fue testigo del desarrollo de técnicas diseñadas de manera específica para ampliar la “ventana de oportunidad”, es decir, el periodo de tiempo durante el cual un virus podía diseminarse inadvertidamente. Las técnicas furtivas se desarrollaron como una manera de esconder los cambios que los virus realizaban en el sistema del usuario. Estas técnicas incluían la supresión de los mensajes de error que advertían sobre la presencia de virus en el equipo, imitando la información de archivos de manera tal que no pareciera que el archivo había aumentado de tamaño, e interceptando todo intento de leer sectores del disco mediante una herramienta de edición de sector. Posteriormente las técnicas furtivas alcanzaron grados más sofisticados, llegando a filtrar códigos de virus de archivos infectados cuando un escáner antivirus trataba de leer estos archivos. Este desarrollo hizo esencial la memoria de escaneado, antes de analizar el disco (codificar los códigos virales en la memoria resultaba tan complejo que pocos virus siquiera lo intentaban).
Otro recurso utilizado era la técnica polimorfa diseñada para ayudar a los códigos a evadir los análisis antivirus. El término “polimorfo” proviene de la voz griega que significa “muchas formas”. La idea era, en cada nueva infección, codificar de varias formas el código viral, para cambiar el código del virus de manera que no haya la secuencia constante de bytes que busca un programa antivirus. Los primeros virus polimorfos de prueba se crearon en 1990: pero no fue sino hasta abril de 1991, con la aparición del virus Tequila, que los códigos polimorfos empezaron a surgir. Este desarrollo provocó que los programas antivirus ya no se basaran exclusivamente en signaturas. Se hizo esencial entonces recurrir a otras técnicas como la emulación de códigos virales o el uso de algoritmos matemáticos, para poder “ver a través” del código.
Los virus furtivos y los polimorfos se fueron refinando con el paso del tiempo y las posteriores generaciones de autores de virus volvieron a aplicarlos.
Las soluciones antivirus de entonces
¿Qué sucedía con las soluciones antivirus mientras tanto? El problema de los virus empezó no tanto como un diluvio, sino más bien como un goteo: los nuevos virus aparecían con lentitud, uno a la vez. En realidad, durante algunos años hubo quienes consideraron que la aparición de virus no era más que un mito. Los primeros programas antivirus eran utilidades diseñadas para detectar y eliminar virus individuales específicos o, a medida que iban incrementándose el número de programas maliciosos, un puñado de virus.
Luego, a medida que el goteo se transformaba en un flujo constante en 1989, se lanzaron los paquetes antivirus. La esencia de estos programas era el escaneado a solicitud, diseñado para encontrar en el disco la docena y pico de virus existentes en ese momento. Algunos eran capaces de realizar tareas de limpieza, eliminando los códigos infectados. Otros también incluían un checksummer o método de suma de control, diseñado para registrar el archivo original en un disco limpio, de manera que cualquier daño posterior sea obvio, aún (en teoría) si este archivo llegara a ser modificado por nuevos tipos de virus.
Para empezar, los programas antivirus sólo se elaboraban a solicitud. El número de nuevos virus en un principio crecía con lentitud. Además, su índice de diseminación era, comparado a los estándares actuales, lento. Entonces, la clave era poder realizar análisis regulares del sistema y ser capaces de eliminar cualquier elemento detectado en una organización o en un ordenador particular. Para ello, un disco de sistema limpio constituía una herramienta invalorable: con un arranque limpio, se podía asegurar de que no había virus en la memoria que interfirieran con el escaneado y las operaciones de limpieza4. En muchos casos, las compañías ni siquiera instalaban programas antivirus en equipos individuales, al menos no en un principio (esto fue cambiando una vez que las compañías sufrían un ataque viral). En general, el administrador realizaba barridos regulares del sistema y filtraba los discos floppy en una sola máquina, antes de utilizarlos.
El ciclo normal de actualización de los programas antivirus era trimestral. Aunque algunos desarrolladores de antivirus ofrecían actualizaciones mensuales, no se las solía considerar necesarias, y los usuarios que necesitaban niveles máximos de seguridad pagaban una prima por una mayor frecuencia de actualizaciones. Las actualizaciones se entregaban, como es de suponer, en medios físicos como… discos floppy.
Aumentan las amenazas, evolucionan los métodos de detección
Sin embargo, a fines de 1990, el número de virus llegó a los 300. Frente a esta amenaza, los desarrolladores de programas antivirus empezaron a implementar la protección en tiempo real. Esto significaba el desarrollo de programas TSR (Terminate and Stay Resident) que, al igual que los virus exitosos del momento, monitoreaban el sistema, interceptaban discos y accesos a archivos, verificando la presencia de virus conocidos.
También empezaron a buscar la forma de detectar virus de manera proactiva, sin necesidad de una signatura específica, recurriendo al análisis heurístico. Los investigadores antivirus iban adquiriendo experiencia sobre las técnicas usadas por programas maliciosos y las empleaban para crear una lista de características sospechosas, asignando un puntaje a cada una El escáner analizaba el código buscando estas características; si el puntaje superaba una marca predefinida, se identificaba el archivo como un probable virus.
La creciente amenaza que representaban los virus polimorfos obligaron a los programadores de antivirus a complementar el análisis de signaturas con otros métodos que permitieran que un escáner pudiera “ver a través” de la(s) capa(s) de codificación. Estos métodos incluían el uso de máscaras reducidas, análisis de codificaciones, análisis estadísticos y técnicas de emulación. También se utilizaban códigos de emulación para mejorar la detección heurística, posibilitando así el análisis dinámico de códigos.
Los primeros bloqueadores de conductas peligrosas
Una solución alternativa al agudo incremento cuantitativo fue el análisis de comportamiento. Mientras que los tradicionales análisis antivirus registraban signaturas de códigos maliciosos en una base de datos que se cruzaba con códigos verificados durante el análisis, los bloqueadores de comportamiento recurrían a un programa de comportamiento para decidir si el comportamiento detectado era malicioso o no: si un programa hacía algo que rebasaba un rango predeterminado de acciones aceptables, se lo bloqueaba.
La principal ventaja de un bloqueador de comportamiento, según sus defensores, era que podía distinguir entre programas “buenos” y “malos”, sin necesidad de que un investigador profesional antivirus analizara el código. Puesto que ya no había necesidad de un análisis permanente de cada amenaza específica, tampoco era necesario mantener actualizadas las signaturas antivirus. Así, los usuarios se encontraban protegidos de antemano ante nuevas amenazas, sin tener que recurrir a las tradicionales actualizaciones antivirus.
La desventaja, por supuesto, residía en la incertidumbre que se creaba entre las acciones claramente maliciosas y aquellas legítimas. Lo malicioso en un programa específicamente creado para causar daño, podía ser positivo en un programa legítimo. Por ejemplo, la escritura de bajo perfil en discos realizada por un virus, gusano o troyano, quizás con el fin de eliminar datos de un disco duro, también podía ser utilizada de manera legítima por el sistema operativo. ¿Y cómo se despliega un bloqueador de comportamiento en un servidor de archivos para saber si una modificación (o eliminación) en el documento es legítima (por parte del usuario), o si es el resultado de la actividad maliciosa de un programa? Después de todo, un virus o un gusano no es más que un programa que se autoreproduce. Aparte de esto, puede hacer lo que cualquier otro programa normal es capaz de hacer. Por este motivo, los programas antivirus más populares continuaban basándose, en gran manera, en la detección de programas maliciosos conocidos.
Sin embargo, el análisis de comportamiento no desapareció. Más bien, muchas modernas soluciones de seguridad combinan el uso del análisis de comportamiento con otros métodos de detección, bloqueo y eliminación de códigos maliciosos.
El creciente número de amenazas era sólo uno de los problemas. El desarrollo de códigos furtivos y polimorfos, como se señala arriba, destaca el hecho de que los virus se encontraban en continua evolución.
Aunque había copias de virus muy mal elaboradas, los autores más avezados eran capaces de elaborar códigos muy efectivos, expandiendo sus fronteras para ponerse un paso por delante de los investigadores antivirus. Entre ellos se encontraba el autor del virus conocido como “Dark Avenger”, responsable, entre otras cosas, del desarrollo de “infectadores rápidos”, capaces de infectar cualquier tipo de acceso a archivos, y de la idea del deterioro gradual de datos (los virus Dark Avenger y Nomenklatura). Dark Avanger fue responsable del módulo Self-Mutating Engine (conocido como MtE), capaz de convertir un virus regular en uno polimorfo5. Su última creación fue un virus llamado Commander Bomber, cuyo código se distribuía a través del programa anfitrión, dificultando en gran manera el escaneado a cualquier velocidad.
Intercambio de virus y herramientas de creación de virus
Varios otros avances pusieron en dificultades a los desarrolladores antivirus durante la primera mitad de los años 90. Primero fue el foro de intercambio de virus (VX). Los foros se utilizaban desde un principio como mecanismos distribuidores de virus. Antes de que Internet se hiciera tan popular, se utilizaba mucho estos foros para descargar programas: Infectar archivos y colocarlos en los foros para su descarga era una forma efectiva para esparcir infecciones. VX fue un desarrollo avanzado. La idea era simple: el foro VX alojaba colecciones de virus, y sólo se podía acceder a éstas si se contribuía con un virus. Por supuesto, esto no sólo motivó a los desarrolladores de virus, sino que también causó una amplia diseminación de distintos virus que de otra manera no hubiera sido posible. En un desarrollo paralelo en ese momento, tanto en Europa como en los Estados Unidos se ofrecían a la venta colecciones de virus.
Otra tendencia preocupante fue el surgimiento de paquetes para la elaboración de virus. Como el nombre sugiere, estaban diseñados para brindar la capacidad de “crear su propio virus” a quienes carecían de los suficientes conocimientos o habilidades técnicas como para escribir sus propios códigos. Dichos paquetes ofrecían una interfaz del usuario que posibilitaba la selección de características para los virus de entre listas de opciones. Desafortunadamente para los autores de estos paquetes, los virus creados de esta manera tenían una “huella dactilar” característica que permitía a los investigadores antivirus detectarlos mediante una sola signatura.
Los macrovirus
Un momento crucial en el desarrollo de virus se dio en julio de 1995, con la aparición del primer macrovirus, llamado Concept. Los macrovirus dominarían el panorama de amenazas durante los cuatro años siguientes.
El autor de Concept explotaba el hecho de que los usuarios intercambiaban datos con más frecuencia que programas. El autor utilizaba instrucciones de WordBasic6 para modificar la plantilla NORMAL.DOT, incorporando así el código viral, bajo la forma de varios macros automáticos en cada uno de los documentos que el usuario iba creando. Como resultado, cada usuario que recibía el documento infectado se convertía en su víctima. Este simple desarrollo, ya anticipado y temido por los investigadores antivirus mucho tiempo atrás, tendría consecuencias de largo alcance.
Primero, el enfoque de la comunidad de autores de virus cambió de los códigos ejecutables (archivos de programa y sectores de disco) a los códigos de datos. Previo a esto, los virus, por lo general, se elaboraban en códigos de ensamblaje, lo cual requería un cierto nivel de conocimiento. Por el contrario, los macrovirus, escritos en WordBasic y luego en VBA (Visual Basic for Applications) eran mucho más fáciles de crear. También eran más fáciles de copiar: Los macrovirus por lo general eran claramente visibles y se podían copiar, modificar y reaplicar con facilidad. De repente, el campo de los virus se abrió a un grupo mucho más amplio. Como resultado, el número de virus se incrementó de manera notable: de casi 6.000 en junio de 1995 a 7.500 a fin de ese año, y a más de 25.000 en diciembre de 1998.
Segundo, los macrovirus fueron los primeros virus en infectar (deliberadamente) archivos de datos. Puesto que era más común el intercambio de archivos de datos que de programas, esto ofrecía a los macrovirus un canal de replica mucho más efectivo que virus anteriores. Este problema se agravó con la aparición del correo electrónico como medio de comunicación y de intercambio de datos. El creciente uso de mensajes electrónicos entre los usuarios comunes y corrientes, la facilidad con que se podía adjuntar archivos a un mensaje electrónico, y el surgimiento del más amplio acceso a Internet fueron terreno fértil para la diseminación de los macrovirus.
Tercero, los macrovirus no estaban determinados ni por plataformas ni por sistemas operativos. Su fundamento eran las aplicaciones. Puesto que había versiones de Word para Windows 3.x, Windows 95, Windows NT y Macintosh, esto convertía a los sistemas en blancos susceptibles de ataques, o al menos se los utilizaba como transportadores eficaces. Para colmo, este problema muy pronto rebasó las fronteras de Word. Ya que VBA se aplicaba a todo el paquete de aplicaciones Office (Word, Excel, PowerPoint, Access y Project), estas aplicaciones se convirtieron en blanco de los macrovirus: ¡Incluso había macrovirus multiaplicación dirigidos a todas las aplicaciones de Office!
Como se mencionó líneas arriba, cada generación se apoya en las que la precedieron. Los autores de macrovirus aprovecharon desarrollos anteriores, como los códigos furtivos y los polimorfos, y los volvieron a aplicar en ese nuevo contexto.
Soluciones para servidores de correo y pasarelas de Internet
A medida que cambiaba el panorama de amenazas, también lo hacían las soluciones diseñadas para la protección de compañías contra ataques maliciosos. Antes de la aparición de los macrovirus, el centro de gravedad del análisis antivirus era el ordenador individual y, en menor escala, el servidor de archivos. Los macrovirus iniciaron un proceso en el que la red se amplió e incorporó servidores de correo y gateways para Internet. La razón es obvia. A medida que el correo electrónico se convertía en el mecanismo principal para la diseminación de virus, el análisis de los mensajes electrónicos se convirtió en un medio eficaz para bloquear toda amenaza antes de que llegara al ordenador del usuario. Por supuesto que no desapareció la necesidad de protección para el ordenador y para el servidor de archivos. Más bien se mantuvieron como armas esenciales en la lucha antivirus. Pero tenían que integrarse en una solución más amplia, de varios niveles de “defensa en profundidad”.
Los fabricantes de soluciones antivirus también comenzaron a desarrollar en mayor grado sus capacidades de detección proactiva, específicamente mediante la implementación de la detección genérica. La detección genérica se refiere a la detección y eliminación de múltiples amenazas mediante una sola signatura de virus. El punto de inicio para la detección genérica es que las amenazas exitosas suelen ser copiadas por terceros, o refinadas por los autores originales. El resultado es una avalancha de virus, gusanos o troyanos, distintos el uno del otro, pero pertenecientes a la misma familia. En muchos casos, el número de variantes puede contarse por decenas, o incluso centenas. La detección genérica brindó un método avanzado para la detección de amenazas nuevas y desconocidas sin tener que recurrir a nuevas signaturas.
El nacimiento del spam
El creciente uso del correo electrónico como una herramienta fundamental en el ambiente empresarial propició el surgimiento de otro problema para las empresas: el correo basura, correo no deseado, UCE (Unsolicited Bulk E-mail) o spam. A medida que más compañías se apoyaban en el correo electrónico, se fueron convirtiendo en tentadores blancos para quienes buscaban nuevas formas de anunciar productos y servicios. Estos anuncios publicitarios cubrían una amplia gama, desde productos y servicios legítimos, hasta aquellos obscenos, ilegales o bien no solicitados.
El surgimiento y crecimiento del correo spam trajo consigo varios problemas, como la pérdida de ancho de banda y de tiempo laboral, puesto que el personal se distraía con mensajes no relacionados con su trabajo, así como potenciales problemas legales y de recursos humanos ligados a contenidos obscenos, sexistas, racistas u otros contenidos indeseables. Por supuesto que se presentaban algunas zonas difusas: lo que para una persona era un mensaje spam, para otra era información valiosa y bienvenida.
Este periodo no sólo fue testigo del desarrollo del filtrado de contenidos, realizado en primera instancia en el gateway de Internet, con el propósito de filtrar el correo spam y otros contenidos indeseables, sino que también lo fue de la colaboración entre fabricantes de soluciones antivirus que de manera cada vez más intensa concentraban sus esfuerzos en el filtrado de códigos maliciosos en el servidor de correo y en la pasarela (gateway) de Internet.
Envíos masivos de códigos nocivos
La aparición del virus Melissa en marzo de 1999 marcó otro gran hito respecto a las amenazas virales. Aparentemente, Melissa era otro macrovirus más. Sin embargo, y a diferencia de los macrovirus hasta entonces conocidos que esperaban la intervención del usuario para enviar los datos infectados, Melissa “secuestraba” el sistema de correo electrónico para distribuirse de manera proactiva7. Todo lo que se necesitaba del usuario era que pulsara dos veces en el adjunto infectado que venía en el mensaje electrónico. Luego, el virus recolectaba direcciones de correo electrónico de la lista de contactos de Outlook y se autoenviaba a estas direcciones. Los “envíos masivos” permitían a Melissa esparcirse más amplia y velozmente que cualquier otro macrovirus precedente. Peor aún, Melissa representaba una amenaza a la estabilidad de la infraestructura misma del correo electrónico como resultado del gran volumen de mensajes electrónicos creado por este virus. Tras la expansión inicial de Melissa (se colocó en uno de los foros sobre sexo), los sistemas corporativos de correo electrónico rápidamente se atascaron con mensajes electrónicos y muchos simplemente colapsaron ante la presión. No resulta sorprendente que Melissa haya impuesto una tendencia. Por muchos años más, casi todos los virus y gusanos predominantes seguirán amenazando tanto a usuarios corporativos como particulares con su capacidad de envíos masivos.
Melissa produjo un significativo cambio en la naturaleza de las amenazas virales. Los virus ya no tuvieron que esperar a que un incauto usuario distribuyera el archivo infectado. Al secuestrar al mismo sistema de correo, los virus ganaron el control de un mecanismo muy efectivo de réplica, logrando causar epidemias en cuestión de días o incluso horas.
De alguna manera, Melissa apuntaba a dos direcciones simultáneamente. Por una parte, tenía una orientación retrospectiva a la época de los macrovirus, y fue uno de los últimos (y el mayor) estallido de este tipo de virus. Por otra parte, se orientaba a un futuro que sería dominado por los gusanos, en particular, por el gusano de correo electrónico.
Los gusanos para correo electrónico
Un gusano es un programa capaz de autoreplicarse, es decir, es un virus que no necesita un anfitrión. En vez de esparcirse de un archivo a otro dentro del mismo ordenador, el gusano busca utilizar la conectividad a la red (o Internet) para esparcirse. Por lo tanto, puede tratarse, en este caso, de un solo gusano en cualquier equipo. El resurgimiento de los gusanos coincidió con la declinación de los macrovirus (como resultado de los cambios que Microsoft hizo en la manipulación de macros) y la vuelta al uso de archivos ejecutables para provocar estallidos virales.
Los gusanos de correo electrónico vinieron en distintas formas. Se expandieron como archivos ejecutables (como Happy99, el primer gusano de la era moderna), como archivos script adjuntos a mensajes electrónicos (Visual Basic Script o Java Script), o incluso como secuencias de instrucciones (scripts) incrustadas en mensajes HTML. El factor común entre ellos era el uso del correo electrónico para esparcirse, por lo general mediante técnicas de ingeniería social que inducían a los usuarios ingenuos a ejecutar los códigos maliciosos.
La ingeniería social se refiere a violaciones (no técnicas) de seguridad que dependen en gran manera de la interacción humana, engañando a los usuarios para transgredir las medidas normales de seguridad. En el contexto de los virus y gusanos, significaba adjuntar un virus o un gusano a un mensaje electrónico aparentemente inocente. Uno de los primeros ejemplos fue LoveLetter, con el tema “ILOVEYOU”, y con el contenido “Kindly check the attached LOVELETTER coming from me”. O (al igual que LoveLetter, SirCam, Tanatos, Netsky y muchos otros) podía incluir un adjunto con doble extensión, para ocultar la verdadera naturaleza del adjunto infectado: por defecto, Windows no muestra la segunda extensión (real). O tratarse de un mensaje electrónico elaborado de tal manera que parezca inocente… ¡o incluso muy beneficioso!
Los gusanos para Internet
Los gusanos de correo electrónico no eran el único tipo de gusano. 2001 fue testigo del retorno de los gusanos de Internet. CodeRed, que apareció en julio de 2001, era un gusano “sin archivo”. Diferenciándose por completo de anteriores prácticas virales, este código gusano existía sólo en la memoria RAM: no buscaba infectar archivos en un equipo cautivo. CodeRed se valía de una vulnerabilidad en el servidor Microsoft IIS (MS01-033 ‘Uncheck Buffer in Index Server ISAPI Extension Could Enable Web Server Compromise’) para atacar a los servidores de Windows 2000. Se expandía a través de transmisiones TCP/IP en el Puerto 80, se autoiniciaba en la memoria, sobrecargaba la memoria intermedia, y luego se autoenviaba, de la misma manera, a otros servidores vulnerables. CodeRed se desplazaba por Internet en cuestión de horas, mucho más rápido que cualquier otro código antes visto. Esta fue la primera vez, desde el gusano Morris, que un gusano explotaba una vulnerabilidad para expandirse. El éxito de CodeRed, empero, hacía ver claramente que no se trataría de un incidente aislado. De hecho, tan sólo unos meses después, en septiembre de 2001, el virus Nimda explotaba una vulnerabilidad en Internet Explorer (MS01-020, ‘Incorrect MIME header can cause Outlook to execute e-mail attachment’) dando lugar a otra epidemia viral.
Nimda infectaba archivos, pero, a diferencia de previas amenazas de envíos masivos, no dependía de que el usuario activara un archivo EXE infectado adjunto a un mensaje electrónico. En lugar de ello, usaba la vulnerabilidad del navegador de Internet para iniciarse de manera automática en sistemas vulnerables. Esta vulnerabilidad ya contaba con seis meses, pero un gran número de sistemas permanecían sin el parche, quedando vulnerables a ataques. Esto ayudó a Nimda a infectar sistemas en todo el mundo en cuestión de pocas horas.
Los exploits
En los años siguientes a la aparición de CodeRed y Nimda, recurrir a vulnerabilidades en los sistemas se hizo práctica común, pues los autores de programas maliciosos se valían de la ayuda que les daban las vulnerabilidades detectadas en aplicaciones y sistemas operativos populares. Previamente, tales métodos de ataque habían sido asociados a las actividades de los piratas informáticos, en vez de relacionarlos con los autores de virus. La combinación de técnicas “tradicionales” de elaboración de virus con ataques piratas marcó otro importante hito en el desarrollo de programas maliciosos.
Algunas amenazas han evitado el uso de técnicas “tradicionales” de virus. Lovesan, Welchia y Sasser, por ejemplo, eran pura y llanamente gusanos Internet. No había el componente de envíos masivos y no se necesitaba que la víctima ejecutara un programa infectado. En lugar de ello, estas amenazas se diseminaban directamente por Internet, de un ordenador a otro, aprovechando distintas vulnerabilidades. Lovesan explotó la vulnerabilidad MS03-026 (‘Buffer Overrun In RPC Interface Could Allow Code Execution’). Welchia explotaba la misma vulnerabilidad y también la MS03-007 (‘Unchecked Buffer In Windows Component Could Cause Server Compromise’). Sasser explotaba la vulnerabilidad MS04-011 (a buffer overflow in the Windows LSASS.EXE service).
Nimda impuso otra tendencia al combinar la explotación de una vulnerabilidad con otros métodos de ataques. Además de los envíos masivos, también adjuntaba códigos de explotación viral (en forma de JavaScript infectado) a ficheros HTML. Si el equipo infectado era un servidor, el usuario llegaba a infectarse mediante Internet al acceder a páginas Web infectadas. Nimda coronó sus esfuerzos por diseminarse a través de las redes corporativas, para lo cual analizaba la red en busca de recursos accesibles dejando sus copias en el camino, con el fin de que usuarios incautos las ejecutaran. En los ordenadores infectados, el virus también convertía los dispositivos (drivers) locales en accesos compartidos open shares, permitiendo el acceso remoto a cualquier usuario malicioso. Nimda también utilizaba la vulnerabilidad MS00-078 (‘Web Server Folder Traversal’) en servidores Microsoft IIS con el fin de infectar servidores vulnerables mediante la descarga de una copia suya desde ordenadores ya infectados de la red. La estrategia del ataque multifacético de Nimda ocasionó que muchos lo consideraran como una amenaza “compuesta”.
Muchas amenazas “exitosas” posteriores (exitosas desde la perspectiva del autor) utilizaron mecanismos de ataque múltiples y aprovecharon las vulnerabilidades para evitar al usuario y lanzar los códigos de manera automática, reduciendo así de forma dramática el tiempo crítico (lead time) entre la aparición de una nueva amenaza y la explosión epidémica. Las amenazas se expandían con una rapidez nunca antes vista, logrando abarcar el planeta en pocas horas, circulando por la infraestructura de correo electrónico de las empresas y explotando el creciente número de vulnerabilidades como trampolín de entrada a las compañías.
Las respuestas al aumento de la velocidad de propagación
La diseminación de nuevas amenazas a “velocidad de Internet” y el creciente número de epidemias mundiales, enfatizaron más que nunca la velocidad a la que los fabricantes de soluciones antivirus respondían a estas nuevas amenazas. En los “buenos viejos tiempos”, para la mayoría de los clientes, eran suficientes actualizaciones trimestrales. Posteriormente, las actualizaciones se estandarizaron. Entonces, ante la amenaza planteada por los gusanos de correo electrónico y de Internet, las mayoría de los fabricantes de soluciones antivirus optaron por actualizaciones semanales de signaturas. Hoy en día, muchos ofrecen actualizaciones diarias8 . La rapidez en la respuesta a nuevas amenazas también se convirtió en factor determinante en las pruebas antivirus independientes .
Además, como respuesta a las técnicas de ingeniería social empleadas por los autores de programas maliciosos, muchas empresas empezaron a bloquear, de manera rutinaria, ciertos tipos de archivos al nivel del gateway de Internet con el fin de prevenir que los adjuntos EXE, PIF, SCR y otros, llegaran a sus usuarios9.
No obstante, muchos seguían preocupados por el tiempo transcurrido entre la aparición de una nueva vulnerabilidad y los medios para bloquearla, periodo durante el cual podía expandirse furtivamente una nueva amenaza. Algunos cuestionaban la habilidad de las tradicionales soluciones antivirus en base a signaturas para contrarrestar la creciente complejidad de los códigos maliciosos10. De hecho, los principales desarrolladores de soluciones antivirus empezaron a ampliar el abanico de protección que ofrecían.
Los cortafuegos personales
Una forma de hacerlo era añadiendo la capacidad de los cortafuegos personales. Los cortafuegos personales monitorean y neutralizan el tráfico no deseado. Un cortafuegos personal, como el mismo nombre sugiere (y en contraste con el tradicional cortafuegos en el gateway), se instala en el ordenador o en el servidor. Funciona como un “controlador de tráfico” en el ordenador, verificando el tráfico entrante y saliente del ordenador, permitiendo o neutralizando conexiones en base a políticas predeterminadas. Los cortafuegos personales tienen dos características sobresalientes. Por una parte, permiten el filtrado de aplicaciones. Es decir, permiten fijar reglas para las aplicaciones más usadas como los navegadores de Internet, ICQ, programas de mensajería instantánea y otros. Los cortafuegos personales también permiten el filtrado de paquetes: analizan las transferencias de datos (encabezados, protocolos utilizados, puertos, direcciones IP, etc.) y filtran paquetes siguiendo políticas predeterminadas.
Los sistemas de prevención de intrusos (IPS)
Algunos desarrolladores de soluciones de seguridad complementan las tecnologías “tradicionales” con sistemas de prevención de intrusos (IPS). Los sistemas IPS basados en anfitriones, están diseñados para proteger ordenadores y servidores. Por lo general recurren al análisis de comportamiento para detectar códigos maliciosos. Realizan esta tarea haciendo un seguimiento de todas las llamadas realizadas en el sistema y comparándolas con políticas basadas en comportamientos “normales”. Estas políticas pueden ser bastante granulares ya que se puede aplicar el comportamiento a aplicaciones específicas. De esta manera, actividades como la activación de puertos en el sistema, el escaneado de puertos, los intentos para aumentar los privilegios en el sistema y la inyección de códigos en procesos en ejecución pueden ser identificados como comportamientos anormales y neutralizados. Algunos sistemas IPS complementan el análisis de comportamiento mediante el uso de signaturas de códigos hostiles conocidos.
Los sistemas IPS basados en redes, desplegados en línea en la red, filtran códigos maliciosos en los paquetes, detectan el uso anormal del ancho de banda o tráfico irregular (paquetes malformados). Los sistemas IPS basados en redes son de particular utilidad para detectar ataques de denegación de servicio (DoS), o el tráfico generado por gusanos de redes.
El análisis de comportamientos
Varios fabricantes de soluciones antivirus también combinan las tecnologías actuales con el análisis de comportamiento, lo que les permite brindar un monitoreo en tiempo real de toda actividad en las aplicaciones, bloqueando cualquier acción sospechosa e incluso son capaces de revertir los cambios realizados en el sistema por programas maliciosos.
El objetivo de todas estas “nuevas” tecnologías es neutralizar los ataques diseñados para robar información confidencial, los gusanos de red y los códigos maliciosos que buscan convertir los equipos cautivos en “zombis” que luego se emplearán en ataques de correo spam.
La ventaja de ambas tecnologías es que ofrecen protección genérica contra ataques de códigos maliciosos desconocidos, en vez de depender de signaturas de amenazas conocidas. El potencial problema es el riesgo de falsas alarmas. Para minimizar este riesgo, la mayoría de estas tecnologías incluye un “modo de aprendizaje” de alerta que permite que el mismo producto construya una imagen de lo que sería un comportamiento “normal” en un ambiente determinado. Sin embargo, requieren de una cuidadosa configuración, lo que crea una gran carga administrativa que supera a la de la tradicional protección antivirus. En el caso del sistema IPS, también requiere de actualizaciones (aunque no las diarias o semanales actualizaciones de signaturas requeridas por las ‘tradicionales’ tecnologías antivirus) para detectar nuevos métodos de ataques.
Del vandalismo cibernético al delito cibernético
Desde el año 2003, el número de epidemias mundiales ha ido decayendo, lo que ha motivado un cambio en los autores de programas maliciosos. Hasta hace pocos años, los virus y otros programas maliciosos solían ser actos aislados de vandalismo informático, o expresiones antisociales de sus autores aprovechando los modernos medios tecnológicos. La mayoría de los virus se limitaban a infectar a otros discos o programas. El ‘daño’ se definía en términos de pérdida de información causada por el virus (no muy frecuente) o de deterioro a la información almacenada en los discos afectados.
Sin embargo, esto ha ido cambiando en el transcurso de los últimos años. Actualmente nos enfrentamos a los códigos maliciosos, o crimeware, creados con fines de lucro ilegal. Los delincuentes informáticos se han dado cuenta del potencialmente lucrativo negocio de los códigos maliciosos en un mundo ‘conectado’ en el que gran parte de las amenazas actuales se elaboran ‘a pedido’.
Ha habido un evidente cambio en las tácticas utilizadas por los autores de códigos maliciosos. La caída experimentada por el número de epidemias mundiales es señal de un cambio en el uso de ataques masivos a víctimas a través de todo el mundo. Tras el pico alcanzado en 2003, el número de epidemias mundiales ha ido cayendo de manera sostenida. Esto no significa que ya no haya epidemias, sino que ya no son mundiales. Sucede más bien que los ataques se están volviendo selectivos.
Esto se debe, en parte, a que las autoridades competentes en muchos países han ido acumulando y consolidando valiosa experiencia en rastrear a los ciberpiratas. También se debe al hecho de que los investigadores antivirus han ganado muchos años de experiencia en el tratamiento de epidemias a gran escala. Las respuestas rápidas a nuevas amenazas, en forma de definiciones de virus, son sólo la punta visible del iceberg. Equipos de investigadores antivirus a lo largo y ancho del mundo han desarrollado una ‘antena de alerta temprana’ que les permite anticipar actividades maliciosas en Internet. Y cuando sucede el ataque, se pueden rastrear y bloquear los servidores usados para recolectar datos confidenciales tomados de equipos cautivos, mitigando así los efectos del ataque.
Existe una tercera razón, aunque intrínsecamente relacionada a los motivos de los ciberpiratas. Ya que gran parte del ‘crimeware’ está diseñado para robar información confidencial desde los equipos de las víctimas, que posteriormente es utilizada para ganar dinero de manera ilegal, se deduce que se tiene que procesar y usar estos datos robados. Si los equipos cautivos suman millones, esto no sólo posibilita su detección, sino que implica además una gigantesca operación logística de parte de los ciberdelincuentes. Entonces, por esta razón también, tiene más sentido que los autores de códigos maliciosos seleccionen sus ataques.
Esto significa seleccionar ordenadores de mil en mil, a pequeña escala, mediante operaciones tipo ‘comando’. O puede significar elaborar un código para atacar a una sola víctima, o a un reducido número de víctimas.
Tales ataques a menudo se valen de troyanos. En los últimos años, se ha evidenciado un aumento masivo en el número de troyanos: se han convertido en el ‘arma favorita’ de los autores de códigos maliciosos. Por supuesto, los troyanos vienen en diferentes formas, cada uno específicamente desarrollado para realizar una función determinada en el ordenador cautivo. Entre ellos podemos citar a los troyanos puerta trasera (Backdoor Trojans), troyanos para robo de contraseñas (Phishing Trojans), troyanos inoculadores (Trojan-Droppers), troyanos de descarga (Trojan Downloaders) y troyanos intermediarios (Trojan-Proxies).
Se pueden usar para recolectar información confidencial (nombre de usuario, contraseña, PIN, etc.) o pueden volverse “reclutas” de un “ejército zombi” para lanzar ataques de distribución de servicio denegada, conocidos como ataques DDoS (Distributed-Denial-of-Service), contra una organización elegida como blanco. Se han utilizado estos ataques para extorsionar dinero a las organizaciones: un ataque DDoS de ‘demostración’ ofrece a la víctima una “muestra” de lo que sucederá si no pagan. Asimismo, los equipos cautivos pueden convertirse en intermediarios o proxies para la distribución de correo electrónico no deseado o spam. También se ha constatado un incremento en el número de gusanos o troyanos extorsionadores o ‘ransomware’, empleados para extorsionar dinero de usuarios particulares. Estos programas codifican los datos del usuario y crean un archivo “readme” que solicita al usuario la transferencia de dinero al autor del programa usando alguno de los distintos servicios de pago en línea.
Sucede a menudo que los equipos cautivos se combinan en redes, mediante canales IRC o sitios Internet en los cuales el autor ha habilitado una funcionalidad adicional. Por lo general, estas ‘redes zombi’ se controlan a través de un servidor único de control y comando. Esto significa que se los puede anular una vez que se detecta su ubicación. Sin embargo, recientemente se han evidenciado “redes zombi” más complejas que recurren a un modelo P2P (peer-to-peer, o ‘persona a persona’). El más conocido de estos modelos, Zhelatin (alias ‘Storm Worm’), apareció en enero de 2007 y desde entonces ha continuado construyéndose. El código malicioso tipo puerta trasera MayDay, que apareció en septiembre de 2007, también adoptó este modelo. La persistencia de Zhelatin descansa en la característica de que es distribuido, no hay ningún servidor central de control, y por ende no se puede eliminar la ‘red zombi’.
La tendencia a dejar de lado las epidemias mundiales por ataques de bajo perfil ha coincidido con un cambio muy significativo: una relativa baja en el uso del correo masivo para distribuir códigos maliciosos. Hasta hace pocos años, la mayoría de las epidemias involucraba a gusanos que capturaban el sistema de correo para autodistribuirse de manera proactiva, recolectando contactos adicionales desde ordenadores cautivos a medida que se diseminaban. Este fue el método utilizado por gusanos como LoveLetter, Klez, Tanatos (Bugbear), Sobig, Mimail, Sober y Mydoom para causar epidemias a nivel mundial. Actualmente, un número creciente de programas maliciosos se distribuyen deliberadamente a través de envíos de correo no deseado. Esto permite al autor controlar la distribución de su código a una población selecta de ordenadores, en vez de permitir que se disperse sin control alguno.
Por esta misma razón, el programa malicioso ‘bundle’ que se alojaba en ordenadores cautivos, ahora suele incluir un troyano de descarga. Como su nombre sugiere, estos troyanos están diseñados para descargar códigos maliciosos desde determinados sitios Web. Se utilizan no sólo para controlar la diseminación de códigos maliciosos, sino también para actualizaciones automáticas a través de Internet. También se utilizan, de manera cada vez más intensa, para instalar programas no virulentos espía ‘spyware’ o pornográficos ‘pornware’, sin que el usuario se entere de ello.
Los ataques “phishing”
Los códigos maliciosos no son el único método al que recurren los ciberdelincuentes para capturar información confidencial susceptible de ser utilizada con ilegales fines de lucro. El robo de identidades, conocido como Phishing (deliberada deformación del término inglés fishing, que significa pesca o pescar), es una forma específica de ciberdelincuencia que consiste en inducir a los usuarios a que revelen sus datos personales (nombre de usuario, contraseñas, PIN y otra información de acceso), para luego usarlos con la intención de obtener dinero con falsos pretextos. Es fraudulento pues utiliza el robo de datos para posteriormente robar dinero. Los programas phisher dependen en gran manera de la ingeniería social. Estos programas tienen la capacidad de crear réplicas casi perfectas de los sitios Internet de instituciones financieras. Luego envían un mensaje spam que imita a la correspondencia genuina de la verdadera institución financiera. Por lo general, los programas maliciosos phisher usan logos legítimos, un correcto estilo institucional e incluso hacen referencia a los nombres reales de los gerentes de la institución financiera. También imitan los encabezados de los mensajes electrónicos para que parezcan provenir de la institución legítima. En general, estos mensajes informan a los clientes que el banco ha cambiado su estructura informática y que está solicitando a todos sus clientes que reconfirmen sus datos de usuario. A veces, estos mensajes citan fallas en la red, o incluso ataques pirata como excusas para solicitar a sus clientes que reconfirmen sus datos personales.
Estos falsos mensajes distribuidos por los programas phisher tienen un factor en común: son la carnada para inducir al cliente a activar el vínculo que viene incluido en el mensaje. Si el desafortunado usuario cae en el engaño, corre el grave peligro de que se divulgue su información confidencial, lo que puede dar lugar a que los ciberdelincuentes accedan a su cuenta bancaria. El vínculo lleva al usuario directamente a un sitio falso que imita al verdadero sitio Internet del banco de una manera muy precisa. El sitio en cuestión contiene un formulario que se supone que el cliente debe completar: al hacerlo, el incauto usuario está entregando toda su información a los ciberdelincuentes quienes luego podrán acceder a la cuenta en línea del usuario para robar su dinero.
Los ciberpiratas apuestan muy alto, tanto que rehúsan a deshacerse de los equipos cautivos bajo su control. Por otra parte, se ha vuelto común que los autores de programas maliciosos saboteen los programas de seguridad, cerrando los procesos activos, eliminando códigos o bloqueando las actualizaciones antivirus. Algunos autores incluso eliminan programas maliciosos que hacen competencia a sus propios engendros. El troyano Backdoor.Win32.Agent.uu (alias ‘SpamThru’) incluso llegó a usar una copia pirateada de un programa antivirus11 para encontrar y eliminar otros programas maliciosos existentes en los ordenadores cautivos.
Un camuflaje más sofisticado
Además, en los últimos 12 meses se ha incrementado el uso de paquetes raíz o rootkits para camuflar la presencia de códigos maliciosos y de programas espía en los ordenadores cautivos. El término rootkit proviene del ambiente Unix en el cual se usaba para describir las herramientas usadas para tener acceso privilegiado mientras se permanecía invisible al administrador del sistema. Hoy en día se utiliza para referirse a técnicas de camuflaje empleadas por los autores de programas maliciosos con el propósito de ocultar los cambios que realizan en el ordenador cautivo. Por lo general, el autor de programas maliciosos logra acceder al sistema descifrando una contraseña o explotando alguna vulnerabilidad en una aplicación que luego utiliza como “palanca” para obtener acceso a otra información del sistema, hasta ganar acceso al nivel del administrador del equipo. A menudo se usan los rootkits para camuflar la presencia de troyanos, ocultando las modificaciones en los registros, los procesos del troyano y otras actividades en el sistema.
Programas nocivos para dispositivos móviles
Hasta ese entonces, el principal objetivo de los autores de programas maliciosos eran los ordenadores de escritorio y portátiles. Sin embargo, desde la aparición de Cabir en junio de 2004, ha habido un constante flujo de códigos maliciosos dirigidos de manera específica a dispositivos móviles.
El uso de dispositivos móviles en el entorno corporativo continúa incrementándose, a la par de las tecnologías inalámbricas de todo tipo. Estos dispositivos son bastante sofisticados: ejecutan servicios IP, brindan acceso a Internet y ofrecen conectividad a redes. Comparando estos dispositivos con un ordenador portátil, este último los aventaja en muy pocas cosas.
Y ahí está el problema. Hoy en día las compañías operan en un ‘espacio abierto’, con sus empleados conectados, quienes se convierten en blanco fácil de ataques, donde sea que estén trabajando: en la oficina, en casa o viajando. Los dispositivos móviles son intrínsecamente menos seguros, pues operan lejos del alcance de la seguridad tradicional de una red. Y al contener cada vez más y más información corporativa confidencial, los dispositivos y redes inalámbricas se convierten en cotizado blanco para los autores de códigos maliciosos. La historia del desarrollo de software muestra de manera clara que una y otra vez se ha privilegiado la facilidad de acceso por sobre la seguridad. Y puesto que los dispositivos móviles permanecen fuera de la red tradicional de seguridad de la red, se convierten en el eslabón más débil del sistema de seguridad corporativo.
El primer gusano para teléfonos móviles, Cabir, apareció en junio de 2004. Desde aquel entonces, Cabir se ha expandido a más de 40 países. Cabir se expande a través de Bluetooth. Este es el método más común para la transmisión inalámbrica de datos, por lo que no debe sorprender que se haya convertido en el medio preferido de infección de muchos elaboradores de virus. Un significativo número de servicios basados en Bluetooth permanecen al descubierto: abiertos a infecciones y a los delincuentes cibernéticos.
En muy poco tiempo hemos sido testigos de la aparición de virus, gusanos y troyanos para dispositivos móviles; las amenazas similares para ordenadores necesitaron 20 años para desarrollarse.
Hoy aparecen alrededor de 20 nuevas amenazas para dispositivos móviles cada semana. Muchas de ellas son bastante simples, pero es obvio que los autores de programas maliciosos están conscientes del potencial a largo plazo que representan estos dispositivos en términos de ganancias ilegales. El primer troyano espía para el sistema operativo Symbian apareció en abril de 2006. Flexispy es un troyano comercial que controla los teléfonos inteligentes o smartphones y envía la información de llamadas y de SMS al autor o ‘amo’ del troyano. Pronto se constató que su autor estaba vendiendo su creación por 50$. También aparecieron programas maliciosos similares para el sistema operativo Windows Mobile, actualmente el segundo sistema más popular para dispositivos móviles.
La mayoría de las amenazas contra dispositivos móviles hasta ahora conocidas requieren de la interacción del usuario (aceptar la transferencia del archivo y aceptar ejecutarlo). Por lo tanto, a primera vista puede parecer sorprendente la manera en que se han expandido. Esto es así hasta que se considera el éxito de los gusanos para ordenadores que dependen de similar interacción de parte del usuario. La clave es la ingeniería social, a menudo recurriendo a invitaciones a través de fotos pornográficas, descargas de películas, servicios gratuitos u ofertas para ganar mucho dinero en poco tiempo.
Sucede lo mismo en los teléfonos móviles. Por ejemplo, el gusano Comwar recurre a MMS (Multimedia Messaging Service) para autoenviarse a los contactos listados en el directorio, a un costo de unos 0,35€ por mensaje. Investigaciones realizadas demostraron que muchos usuarios están dispuestos a aceptar archivos transmitidos a sus aparatos a través de Bluetooth, especialmente aquellos con contenido sexual.
Hay distintos efectos de las amenazas a dispositivos móviles. El teléfono puede dejar de funcionar mientras el gusano esté instalado: el troyano Skuller, distribuido por descarga desde una variedad de sitios Web para dispositivos móviles, reemplaza los iconos del sistema con un icono de calavera y provoca la inaccesibilidad al servicio a través del vínculo. El troyano Mosquit envía mensajes SMS (Short Messaging Service) a números telefónicos de pago. Los efectos de los programas maliciosos ‘crimeware’ como Brador, Flexspy, o uno de los troyanos móviles, permiten al autor o ‘amo’ del programa malicioso robar la información confidencial guardada en un dispositivo móvil. En este contexto, vale la pena hacer notar que los usuarios rara vez codifican los datos que guardan en sus aparatos móviles, y muchos ni siquiera usan una contraseña segura.
Mientras los ciberpiratas siguen experimentando con la tecnología móvil; ya hemos sido testigos de algunos desarrollos interesantes. Entre ellos mencionamos a Lasco, una combinación híbrida de virus con gusano; Cxover, que infecta archivos en dispositivos móviles y ordenadores; RedBrowser, un troyano dirigido a teléfonos móviles con plataforma Java (J2ME), es decir, que no son smartphones.
Aunque es evidente que los dispositivos móviles están muy lejos de ser inmunes a ataques piratas, resulta difícil predecir cuándo el goteo de prueba se convertirá en un diluvio. Esto dependerá en gran manera del uso que se les de. Una vez que el número de smartphones, y su empleo para realizar negocios en línea, alcancen la “masa crítica”, los ciberpiratas dirigirán sus ataques contra ellos, tal como lo hacen con cualquier sistema de uso común. Los ciberdelincuentes de hoy usan los datos guardados en ordenadores para fines de lucro ilegales. Mañana tratarán de capturar los datos guardados en los dispositivos móviles con el mismo propósito.
Es por esto que los principales fabricantes de programas antivirus han desarrollado soluciones diseñadas para proteger los dispositivos móviles, tanto programas instalados en el dispositivo mismo, como programas destinados al uso por parte de los proveedores de servicios móviles.
Los desafíos actuales
Desde la aparición de los primeros virus para ordenadores, las amenazas contra compañías y usuarios particulares han experimentado inesperados cambios. En aquellos primeros días, nadie habría podido anticipar la gran cantidad, o la gran variedad de los modernos programas maliciosos. Cada oleada sucesiva del desarrollo de programas maliciosos trajo consigo nuevos desafíos y cambios en las soluciones disponibles, el desarrollo de nuevas soluciones o la adaptación de tecnologías ajenas al mundo antivirus. Así que el panorama de amenazas no sólo es radicalmente diferente al de hace 20 años, sino que las mismas soluciones de seguridad también lo son respecto a las de la época referida. En particular, hemos notado un cambio en la motivación que impulsa a los autores de programas maliciosos, desde el cibervandalismo al uso de códigos maliciosos con fines de lucro ilegales. Esto ha resaltado como nunca antes la importancia de brindar no sólo una protección oportuna contra las 200 o más amenazas que aparecen a diario, sino también en el diseño de soluciones capaces de bloquear amenazas nuevas y desconocidas sin la necesidad de contar con nuevas signaturas. Las primeras soluciones antivirus parecían unidimensionales en comparación a las modernas soluciones holísticas desarrolladas por los principales proveedores de programas de seguridad informática. Asimismo, las cambiantes prácticas empresariales, y la desaparición de los tradicionales perímetros de las redes significa que las soluciones de seguridad tienen que ser capaces de proteger a la organización y su personal donde sea que éstos se encuentren y cualquiera que sea el negocio en el que estén.
1 Dadas las limitaciones arriba mencionadas, es perdonable pensar que los virus del sector de arranque se extinguieron. Y sí que casi desaparecieron. Sin embargo, en enero de 2.007 nos enteramos de la aparición de dos virus Junkie, uno en Rusia, y el otro en los Países Bajos; y en septiembre de 2.007, ordenadores portátiles infectados con el virus Angelina fueron enviados a un vendedor danés
2 El término inglés ‘in the wild’ (circulando por Internet) se usó por primera vez cuando Joe Wells creó The Wildlist, como un medio para rastrear infecciones en el mundo real, en abril de 1.993
3 El Dr Joseph Popp, supuesto autor del troyano, fue posteriormente extraditado al Reino Unido. Sin embargo, fue declarado incompetente para presentarse a juicio por el comportamiento demostrado en la corte (posteriormente, una corte italiana lo declaró culpable in absentia)
4 Aunque un número reducido de virus, como Exebug y Purcyst, modificaban la configuración CMOS con el propósito de evitar que el equipo arrancara limpiamente desde un disco floppy
5 Esto dio inicio a una tendencia. En los años siguientes aparecieron otros motores polimorfos, incluyendo los motores ‘Trident Polymorphic Engine’ y ‘Nuke Encryption Device’
6 El lenguaje macro incorporado desde las primeras versiones de Word para Windows
7 Melissa no fue el primer virus que intentó usar el correo electrónico para autoenvíos masivos. En 1998 el virus RedTeam incorporaba un código que se autoenviaba a través de Internet. Sin embargo, este virus estaba dirigido sólo a Eudora y no logró expandirse significativamente
8 Hoy en día, un desarrollador de soluciones antivirus, Kaspersky Lab, brinda actualizaciones de signaturas a la hora
9 Esta fue una característica importante para AV-Test GmbH
10 En 2.001, Gartner comentaba en su artículo Signature-Based Virus Detection at the Desktop is Dying: ‘Los programas antivirus en base a signaturas para ordenadores individuales utilizados por la mayoría de las compañías ofrecen hoy un valor marginal, y ese valor está en constante devaluación. Gartner sostiene que las compañías deberían empezar a aumentar y eventualmente sustituir las técnicas en base a signaturas por técnicas más sólidas. Las compañías que no lo hagan serán víctimas de los programas maliciosos llevados por la próxima oleada de servicios de Internet’
11 El programa antivirus descargado fue Kaspersky® Anti-Virus
Ante amenazas cambiantes, soluciones cambiantes: una historia de los virus y los antivirus