Métodos de propagación de los virus
Los virus informáticos pueden ser clasificados de acuerdo a su entorno y método de infección. El entorno es la aplicación o sistema operativo que cualquier virus necesita para infectar archivos dentro de estos sistemas. Los métodos de infección son técnicas utilizadas para inyectar código de virus en un archivo.
La mayoría de los virus puede encontrarse en alguno de los siguientes entornos:
• Sistemas de archivos
• Sectores de arranque
• Entornos macro
• Anfitriones script
Los virus de archivo utilizan el sistema de archivos de un determinado sistema operativo (o de más de uno) para propagarse. Los virus pueden dividirse en las siguientes categorías:
• Virus que infectan archivos ejecutable (este es el grupo más grande de virus de archivo)
• Virus que crean duplicados de archivos (virus acompañantes)
• Virus que crean copias de sí mismos en varios directorios
• Virus que utilizan características de los sistemas de archivos (virus de vínculo)
Los virus de sector de arranque se escriben a sí mismos ya sea en el sector de arranque o en el registro de inicio maestro, o reemplazan el sector de arranque activo. Estos virus fueron difundidos en los 1990s, pero casi han desaparecido desde la introducción de los procesadores de 32-bit como estándar y la disminución de los discos flexibles. Aunque es técnicamente posible escribir virus de sector de arranque para CDs y USB flash ROMs, aún no se han detectado tales virus.
Muchos procesadores de texto, aplicaciones contables, de edición y proyectos tienen scripts macros incorporados que automatizan secuencias utilizadas con frecuencia. Estos lenguajes macro a menudo son complejos e incluyen una gran variedad de instrucciones. Los virus macrose escriben en lenguajes macro e infectan aplicaciones con macros incorporados. Los virus macro se propagan aprovechando las propiedades del lenguaje macro a fin de transferirse desde un archivo infectado a otro archivo.
Métodos de infección
Los grupos de virus enumerados arriba se pueden subdividir de acuerdo a la técnica que un virus utiliza para infectar objetos.
Virus de archivo
Los virus de archivos utilizan los siguientes métodos de infección:
• Sobreescritura
• Parasítico
• Acompañante
• Vínculos
• Módulos de objeto (OBJ, por las siglas en inglés de object modules)
• Librerías de compilación (LIB)
• Código fuente de aplicación
Sobreescritura
Este es el método de infección más simple: El virus reemplaza al código del archivo infectado con el suyo propio, borrando el código original. El archivo se vuelve inservible y no puede ser restaurado. Estos virus son de fácil detección debido a que el sistema operativo y las aplicaciones afectadas dejarán de funcionar poco después de la infección.
Parasítico
Los virus parasíticos modifican el código del archivo infectado. El archivo infectado permanece parcial o totalmente funcional.Los virus parasíticos están agrupados de acuerdo a la sección del archivo en la que escriben su código:
• Anexado al comienzo: el código malicioso es escrito al comienzo del archivo
• Anexado al final: el código malicioso es escrito al final del archivo
• Inserto: el código malicioso es insertado a la mitad del archivo
Los virus de archivo insertos utilizan una variedad de métodos para escribir código en el medio del archivo: o mueven partes del archivo original al final, o copian su propio código en las secciones vacías del archivo objetivo. Éstos son denominados a veces virus de cavidad.
Virus anexados al comienzo
Los virus anexados al comienzo escriben su código para apuntar a archivos de dos formas. En el primer escenario, el virus mueve el código del comienzo del archivo objetivo al final y escriben su propio código en este espacio. En el segundo escenario el virus adiciona el código del archivo objetivo a su propio código.
En ambos casos, cada vez que el archivo infectado es ejecutado, el código del virus se ejecuta primero. A fin de mantener la integridad de la aplicación, puede que el virus limpie el archivo infectado, lo vuelva a ejecutar, espera a que el archivo se ejecute y una vez que se termine este proceso, el virus se copiará a sí mismo nuevamente al inicio del archivo. Algunos virus utilizan archivos temporales para almacenar versiones limpias de los archivos infectados. Algunos virus restaurarán el código de la aplicación en la memoria y reiniciarán las direcciones necesarias en el cuerpo, duplicando de este modo el trabajo del sistema operativo.
Virus anexados al final
La mayoría de los virus caen en esta categoría. Los virus anexados al final se escriben a sí mismo al final de los archivos infectados. Sin embargo, estos virus por lo general modifican los archivos (cambian el punto de entrada en el encabezado del archivo) para asegurarse de que los instrucciones contenidos en el código del virus sean ejecutados antes que los instrucciones de objeto infectados.
Virus insertados
Los creadores de virus utilizan una variedad de métodos para insertar virus en la mitad del archivo. Los métodos más simples son mover parte del código del archivo al final del archivo o hacer el código original a un lado para crear un espacio para el virus.
Los virus insertos incluyen los llamados virus de cavidad; éstos escriben su código en las secciones de los archivos que se sabe que están vacías.
Por ejemplo, los virus de cavidad pueden copiarse a sí mismos en las partes no utilizadas de encabezados de archivos exe, en los vacíos que se encuentran entre secciones de archivos exe o en áreas de texto de compiladores conocidos. Algunos virus de cavidad sólo infectarán archivos donde un determinado bloque contenga cierto byte; el bloque elegido será sobrescrito con el código del virus.
Por último, algunos virus insertos están mal escritos y simplemente sobrescriben secciones de código que son esenciales para que el archivo infectado funcione. Esto causa que el archivo quede corrompido de forma irrevocable.
Virus que ocultan su punto de entrada (Entry point obscuring - EPOs)
Existe un pequeño grupo de virus parasíticos que incluyen tanto virus anexos al comienzo y al final que no modifican la dirección del punto de entrada en los encabezados de los archivos ejecutables. Los virus EPO escriben el punteo de rutina en el cuerpo del virus, en el medio del archivo infectado. El código del virus se ejecuta entonces solamente si se llama a la rutina que contiene el virus ejecutable. Si esta rutina se utiliza rara vez, (ej., una notificación de error poco común) un virus EPO puede permanecer inactivo por mucho tiempo.
Los creadores de virus necesitan escoger el punto de entrada con cuidado: un punto de entrada mal escogido puede, corromper el archivo anfitrión o causar que el virus permanezca inactivo el tiempo suficiente como para ser borrado.
Los creadores de virus utilizan distintos métodos para encontrar puntos de entrada útiles:
• Buscar marcos y sobrescribirlos con el punto de inicio infectado
• Desmantelar el código del archivo anfitrión
• O cambiar las direcciones de las funciones de importación
Virus acompañantes
Los virus acompañantes no modifican al archivo anfitrión. En su lugar, crean un archivo duplicado que contiene el virus. Cuando se ejecuta el archivo infectado, la copia que contiene el virus se ejecutará primero.
En esta categoría se incluyen virus que cambian de nombre al archivo anfitrión, graban el nuevo nombre para futuras referencias y después sobrescriben el archivo original. Por ejemplo, un virus podría cambiar el nombre de notepad.exe a notepad.exd y escribir su propio código al archivo con el nombre original. Cada vez que el usuario de la máquina víctima ejecute notepad.exe, se ejecutará el código del virus, ejecutándose posteriormente el archivo original Notepad, notepad.exd.
Existen otros tipos de virus acompañantes que utilizan técnicas de infección originales o aprovechan vulnerabilidades en sistemas operativos específicos. Por ejemplo los virus acompañantes de ruta colocan sus copias en el directorio del sistema Windows, aprovechando el hecho de que este directorio está de primero en la lista de RUTAS; el sistema comenzará desde este directorio cuando ejecuta Windows. Muchos gusanos y troyanos contemporáneos utilizan tales técnicas de auto ejecución.
Otras técnicas de infección
Algunos virus no utilizan archivos ejecutables para infectar un ordenador, sino que simplemente se copian a sí mismos a un rango de carpetas con la esperanza de que tarde o temprano sean ejecutados por el usuario. Algunos creadores de virus nombran a sus virus como install.exe o winstart.bat para persuadir al usuario a ejecutar el archivo que contiene el virus.
Otros virus se copian a sí mismos en archivos comprimidos tales como ARJ, ZIP y RAR, mientras que otros escriben el instrucción para ejecutar un archivo infectado en un archivo BAT.
Los virus de vínculo tampoco modifican los archivos anfitriones. Sin embargo, obligan al sistema operativo a ejecutar el código del virus, modificando los campos apropiados en el sistema de archivos.
Virus de sector de arranque
Los virus de arranque son conocidos por infectar el sector de arranque de los discos flexibles y el sector de arranque del sector de arranque principal (MBR, por sus siglas en inglés, Master Boot Record) del disco duro.
Los virus de arranque actúan sobre la base de algoritmos utilizados para iniciar el sistema operativo cuando el ordenador se enciende o es reiniciado. Una vez que los chequeos de memoria, discos, etc. han concluido, el programa de inicio del sistema lee/ busca el primer sector físico del disco de inicio (A:, C: o el CD-ROM, dependiendo de los parámetros configurados/ instalados en la configuración BIOS y le pasa el control a este sector.
Al infectar un disco, los virus de inicio sustituyen el código por el de un programa que adquiere control cuando se inicia el sistema. A fin de infectar al sistema, el virus obligará al sistema a leer la memoria y entregar el control, no al programa de inicio original, sino al código del virus.
Los discos flexibles solamente pueden ser infectados de una forma. El virus escribe su código en lugar del código original del sector de arranque del disco. Los discos duros pueden ser infectados de tres formas: el virus escribe su código en lugar del código MBR; el código del sector de arranque del disco de inicio o modifica la dirección del sector de libros activos en la tabla de partición del disco, en el MBR del disco duro.
En la amplia mayoría de los casos, al infectar un disco, el virus moverá el sector de arranque original (o MBR) a otro sector del disco, a menudo el primero que encuentre vacío. Si el virus es más largo que el sector, entonces el sector infectado contendrá la primera parte del código del virus y el remanente del código será colocado en otros sectores, por lo general los tres primeros.
Virus macro
Los virus macro más difundidos son para las aplicaciones de Microsoft Office (Word, Excel y PowerPoint) las cuales guardan información en formato OLE2 (Enlace e Incrustación de Objetos, en inglés Object Linking and Embedding). Los virus para otras aplicaciones son relativamente poco comunes.
La ubicación real de un virus con un archivo de MS Office depende del formato de archivo, el cual en el caso de los productos Microsoft es extremadamente complejo. Todos los documentos de WORD, Office 97 o tabla de Excel están compuestos de una secuencia de bloques de datos (cada uno de los cuales tiene su propio formato) que son unidos/ enlazados/ unidos por datos de servicio. Debido a la complejidad de los archivos de Word, Excel y Office 97, es más fácil utilizar un diagrama para mostrar la ubicación de un virus macro en tales tipos de archivo:
Al trabajar con documentos y tablas, MS Office realiza varias acciones diferentes: la aplicación abre el documento, lo salva, lo imprime, lo cierra, etc. MS Word buscará y ejecutará/lanzará los macros incorporados apropiados. Por ejemplo, utilizando el instrucción Archivo/Guardar llamará al macro ArchivoGuardar, el instrucción Archivo/Guardarcomo llamará al macro ArchivoGuardarcomo, y así sucesivamente, siempre asumiendo que tales macros estén definidos/ configurados.
También existen auto macros, que serán llamados automáticamente en determinadas situaciones. Por ejemplo, cuando se abre un documento, MS Word comprobará la presencia del macro AutoAbrir en el documento. Si se encuentra el macro, Word lo ejecutará. Cuando un documento está cerrado, Word ejecutará el macro de AutoCierre, cuando Word sea iniciado, la aplicación ejecutará el Macro AutoEjec, etc. Estos macros son ejecutados de forma automática, sin ninguna acción por parte del usuario, así como los macros/ funciones que están asociados ya sea por una clave particular, o con un tiempo o fecha específico.
Como regla, los virus macro que infectan los archivos MS Office utilizan una de las técnicas antes descritas. El virus contendrá un auto macro (función automática); uno de los macros estándares del sistema (asociado con un ítem del menú) será redefinido; o, el virus macro será llamado de forma automática al apretarse una determinada tecla o combinación de teclas. Una vez que el virus macro hubiera adquirido el control, transferirá su código a otros archivos, usualmente los que estén siendo editados en el momento. En menos ocasiones, los virus buscarán en los discos otros archivos.
Virus de Script
Los virus script son un subgrupo de virus de archivo, escritos en una variedad de lenguajes script (VBS, JavaScript, BAT, PHP, etc.). Ellos infectan otros scripts, ej. archivos de instrucción y servicios de Windows o Linux, o forman parte de virus multi-componentes. Los virus script pueden infectar otros formatos de archivo, tales como HTML, si el formato de archivo permite la ejecución de scripts.
Via Kaspersky Labs
No hay comentarios :