I LOVE YOU con comentarios.

Nota: Los nombres de funcion, nombres de fichero y demás texto que aparece en el código original del virus han sido modificados para evitar las falsas alarmas de los antivirus. Anteriormente algunos antivirus disparaban  una alarma al encuontrar una o varias palabras en este texto que tambien estan en el virus.


iloveyou.jpg (19983 bytes)El virus   I L O V E Y O U , es un sencillo script programado en VBScript, este virus se propaga por email (y parece ser que tambien lo hace en el irc). El propio virus lee la libreta de direcciones del Outlock y se reenvia a sí mismo. Los destinatarios del e-mail reciben el script en un file-attach, el mensaje lleva una sola linea que pide que ejecutes el script (es decir que el script no se jecuta automáticamente).

Este virus no aprovecha ningún fallo de seguridad, es el mismo usuario el que debe ejecutarlo. Para provocar la ejecucion, el fichero que se envía lleva el nombre   L O V E - L E T T E R - F O R - Y O U . T X T    en mayúsculas, mientras la extension vbs que lo identifica como un script va en minúsculas (aunque la mayor parte de los usuarios no identifican la extension vbs e incluso lo ejecutarían si llevase la extension exe, vease el caso del    hapy99.exe )

El virus se propaga por email y por IRC si tienes instalado el Outlock y el mIRC. La victima del virus puede ser cualquiera, aunque no tenga instalados estos programas ya que al abrir el fichero adjunto se provoca que se ejecute con el programa asociado a la extension vbs, que es el intérprete del script (igual que al abrir un doc que viene por email, se abre el Word).

El virus intentará que Internet Explorer descargue un fichero ejecutable y provocará que este programa se ejecute. Es decir que los daños causados no dependen en exclusiva de las acciones del script, ya que desconocemos lo que hace el ejecutable (se ha comentado que roba contraseñas y las envía por email).

El virus se registra para ser ejecutado siempre que se arranque windows, tambien se hacen multiples copias para que el usuario las ejecute (engañando al usuario por su nombre equívoco). Algunas de estas copias sustituyen ficheros existentes, de modo que el virus destruye el contenido original del fichero.

Lo que sigue, es el código fuente del script.

El virus comineza con la firma del autor (!), luego se declaran algunas variables y se prepara una variable (vbscopy) con una copia del código del virus. Luego se ejecuta la funcion main.

La funcion main obtiene el path de varios directorios (windows, system, temp) y crea varias copias del script en el ordenador, dos de las copias llevan nombres de camuflaje y la otra es una provocación para que el usuario la ejecute (MS Kernel32. vbs   Win32 DLL. vbs     LOVE - LETTER - FOR - YOU . TXT . vbs). A continuación se ejecutan las funciones   reg runs, html, spread to email, lista driv.

La funcion   reg runs registra dos de las copias del virus para que se ejecuten al arrancar el ordenador. A continuacion configura el Internet Explorer para que descargue el ficheros WIN - BUGSFIX. exe  (curiosamente lo puede descargar de cuatro lugares diferentes, como si no quisiera saturar un servidor, pero los cuatro lugares están en el mismo sevidor). El nombre del programa se ha elegido para provocar al usuario a que acepte la descarga del programa, además este programa se registra para que se ejecute en el próximo arranque. Parece ser que este programa a su vez creará otro programa de nombre Win FAT32. exe.  Se supone que estos dos programas son la parte más dañina del virus, ya que se ha comentado que éste roba todos  las contraseñas que encuentra (de momento, el script no roba nada, solo se propaga creando ficheros y destruyendo otros).

La funcion  lista driv recorre todas las unidades de disco, ejecuta  folder list que a su vez recorre todos los directorios ejecutando la funcion  infect files.   La funcion   infect files   infecta una cantidad ingente de ficheros, para ello busca ficheros con una extension de nombre conocido y los destruye sustituyendolos por el script del virus, para provocar al usuario a que ejecute el virus,  el fichero conserva el nombre y se le añade la extension .vbs (indispensable para que se ejecute al hacer doble click sobre el fichero). Todos los ficheros con extension vbs, vbe, js, jse, css, wsh, sct, hta,jpg, jpeg, mp3 y mp2 serán sustituidos por una copia del script. Además si se localiza el programa mIRC, se crea un script que reenviará el virus tambien por IRC.

A continuacion unas funciones auxiliares del script.

La funcion   spread to email  se encarga del propagar el virus por email. El script obtiene todas las direcciones de email de la libreta de direcciones de Outlock y envia a cada una de ellas un mensaje. El mensaje lleva el subject   I L O V E Y O U    y una sola linea de texto que pide que abras el mensaje adjunto. El mensaje adjunto -que es el script del virus- tiene el nombre LOVE - LETTER - FOR - YOU . TXT . vbs (el nombre del fichero y la extension txt en mayúsculas provocan que el usuario abra el fichero, la verdadera extension vbs en minúsculas pasa desapercibida). El virus usa el registro para controlar los usarios que ya han recibido el virus.

La funcion html crea una nueva version del virus, incluído en una página html. Internet Explorer pedirá permiso para ejecutar el script, pero la propia página html pide que contestes que sí.