lunes, 2 de febrero de 2009

Tipos de Virus y Caracteristicas

Clasificación de los virus
La clasificación correcta de los virus siempre resulta variada según a quien se le pregunte. Podemos agruparlos por la entidad que parasitan (sectores de arranque o archivos ejecutables), por su grado de dispersión a nivel mundial, por su comportamiento, por su agresividad, por sus técnicas de ataque o por como se oculta, etc. Nuestra clasificación muestra como actúa cada uno de los diferentes tipos según su comportamiento. En algunos casos un virus puede incluirse en más de un tipo (un multipartito resulta ser sigiloso).
Caballos de Troya
Los caballos de troya no llegan a ser realmente virus porque no tienen la capacidad de autoreproducirse. Se esconden dentro del código de archivos ejecutables y no ejecutables pasando inadvertidos por los controles de muchos antivirus. Posee subrutinas que permitirán que se ejecute en el momento oportuno. Existen diferentes caballos de troya que se centrarán en distintos puntos de ataque. Su objetivo será el de robar las contraseñas que el usuario tenga en sus archivos o las contraseñas para el acceso a redes, incluyendo a Internet. Después de que el virus obtenga la contraseña que deseaba, la enviará por correo electrónico a la dirección que tenga registrada como la de la persona que lo envió a realizar esa tarea. Hoy en día se usan estos métodos para el robo de contraseñas para el acceso a Internet de usuarios hogareños. Un caballo de troya que infecta la red de una empresa representa un gran riesgo para la seguridad, ya que está facilitando enormemente el acceso de los intrusos. Muchos caballos de troya utilizados para espionaje industrial están programados para autodestruirse una vez que cumplan el objetivo para el que fueron programados, destruyendo toda la evidencia.
Camaleones
Son una variedad de similar a los Caballos de Troya, pero actúan como otros programas comerciales, en los que el usuario confía, mientras que en realidad están haciendo algún tipo de daño. Cuando están correctamente programados, los camaleones pueden realizar todas las funciones de los programas legítimos a los que sustituyen (actúan como programas de demostración de productos, los cuales son simulaciones de programas reales). Un software camaleón podría, por ejemplo, emular un programa de acceso a sistemas remotos (rlogin, telnet) realizando todas las acciones que ellos realizan, pero como tarea adicional (y oculta a los usuarios) va almacenando en algún archivo los diferentes logins y passwords para que posteriormente puedan ser recuperados y utilizados ilegalmente por el creador del virus camaleón.
Virus polimorfos o mutantes
Los virus polimorfos poseen la capacidad de encriptar el cuerpo del virus para que no pueda ser detectado fácilmente por un antivirus. Solo deja disponibles unas cuantas rutinas que se encargaran de desencriptar el virus para poder propagarse. Una vez desencriptado el virus intentará alojarse en algún archivo de la computadora.
En este punto tenemos un virus que presenta otra forma distinta a la primera, su modo desencriptado, en el que puede infectar y hacer de las suyas libremente. Pero para que el virus presente su característica de cambio de formas debe poseer algunas rutinas especiales. Si mantuviera siempre su estructura, esté encriptado o no, cualquier antivirus podría reconocer ese patrón.
Para eso incluye un generador de códigos al que se conoce como engine o motor de mutación. Este engine utiliza un generador numérico aleatorio que, combinado con un algoritmo matemático, modifica la firma del virus. Gracias a este engine de mutación el virus podrá crear una rutina de desencripción que será diferente cada vez que se ejecute.
Los métodos básicos de detección no pueden dar con este tipo de virus. Muchas veces para virus polimorfos particulares existen programas que se dedican especialmente a localizarlos y eliminarlos. Algunos softwares que se pueden baja gratuitamente de Internet se dedican solamente a erradicar los últimos virus que han aparecido y que también son los más peligrosos. No los fabrican empresas comerciales sino grupos de hackers que quieren protegerse de otros grupos opuestos. En este ambiente el presentar este tipo de soluciones es muchas veces una forma de demostrar quien es superior o quien domina mejor las técnicas de programación.
Las últimas versiones de los programas antivirus ya cuentan con detectores de este tipo de virus.
Virus sigiloso o stealth
El virus sigiloso posee un módulo de defensa bastante sofisticado. Este intentará permanecer oculto tapando todas las modificaciones que haga y observando cómo el sistema operativo trabaja con los archivos y con el sector de booteo. Subvirtiendo algunas líneas de código el virus logra apuntar el flujo de ejecución hacia donde se encuentra la zona que infectada.
Es difícil que un antivirus se de cuenta de estas modificaciones por lo que será imperativo que el virus se encuentre ejecutándose en memoria en el momento justo en que el antivirus corre. Los antivirus de hoy en día cuentan con la técnica de verificación de integridad para detectar los cambios realizados en las entidades ejecutables.
El virus Brain de MS-DOS es un ejemplo de este tipo de virus. Se aloja en el sector de arranque de los disquetes e intercepta cualquier operación de entrada / salida que se intente hacer a esa zona. Una vez hecho esto redirigía la operación a otra zona del disquete donde había copiado previamente el verdadero sector de booteo.
Este tipo de virus también tiene la capacidad de engañar al sistema operativo. Un virus se adiciona a un archivo y en consecuencia, el tamaño de este aumenta. Está es una clara señal de que un virus lo infectó. La técnica stealth de ocultamiento de tamaño captura las interrupciones del sistema operativo que solicitan ver los atributos del archivo y, el virus le devuelve la información que poseía el archivo antes de ser infectado y no las reales. Algo similar pasa con la técnica stealth de lectura. Cuando el SO solicita leer una posición del archivo, el virus devuelve los valores que debería tener ahí y no los que tiene actualmente.
Este tipo de virus es muy fácil de vencer. La mayoría de los programas antivirus estándar los detectan y eliminan.
Virus lentos
Los virus de tipo lento hacen honor a su nombre infectando solamente los archivos que el usuario hace ejecutar por el SO, simplemente siguen la corriente y aprovechan cada una de las cosas que se ejecutan.
Por ejemplo, un virus lento únicamente podrá infectar el sector de arranque de un disquete cuando se use el comando FORMAT o SYS para escribir algo en dicho sector. De los archivos que pretende infectar realiza una copia que infecta, dejando al original intacto.
Su eliminación resulta bastante complicada. Cuando el verificador de integridad encuentra nuevos archivos avisa al usuario, que por lo general no presta demasiada atención y decide agregarlo al registro del verificador. Así, esa técnica resultaría inútil.
La mayoría de las herramientas creadas para luchar contra este tipo de virus son programas residentes en memoria que vigilan constantemente la creación de cualquier archivo y validan cada uno de los pasos que se dan en dicho proceso. Otro método es el que se conoce como Decoy launching. Se crean varios archivos .EXE y .COM cuyo contenido conoce el antivirus. Los ejecuta y revisa para ver si se han modificado sin su conocimiento.
Retro-virus o Virus antivirus
Un retro-virus intenta como método de defensa atacar directamente al programa antivirus incluido en la computadora.
Para los programadores de virus esta no es una información difícil de obtener ya que pueden conseguir cualquier copia de antivirus que hay en el mercado. Con un poco de tiempo pueden descubrir cuáles son los puntos débiles del programa y buscar una buena forma de aprovecharse de ello.
Generalmente los retro-virus buscan el archivo de definición de virus y lo eliminan, imposibilitando al antivirus la identificación de sus enemigos. Suelen hacer lo mismo con el registro del comprobador de integridad.
Otros retro-virus detectan al programa antivirus en memoria y tratan de ocultarse o inician una rutina destructiva antes de que el antivirus logre encontrarlos. Algunos incluso modifican el entorno de tal manera que termina por afectar el funcionamiento del antivirus.
Virus multipartitos
Los virus multipartitos atacan a los sectores de arranque y a los ficheros ejecutables. Su nombre está dado porque infectan las computadoras de varias formas. No se limitan a infectar un tipo de archivo ni una zona de la unidad de disco rígido. Cuando se ejecuta una aplicación infectada con uno de estos virus, éste infecta el sector de arranque. La próxima vez que arranque la computadora, el virus atacará a cualquier programa que se ejecute.
Virus voraces
Estos virus alteran el contenido de los archivos de forma indiscriminada. Generalmente uno de estos virus sustituirá el programa ejecutable por su propio código. Son muy peligrosos porque se dedican a destruir completamente los datos que puedan encontrar.
Bombas de tiempo
Son virus convencionales y pueden tener una o más de las características de los demás tipos de virus pero la diferencia está dada por el trigger de su módulo de ataque que se disparará en una fecha determinada. No siempre pretenden crear un daño específico. Por lo general muestran mensajes en la pantalla en alguna fecha que representa un evento importante para el programador. El virus Michel Angelo sí causa un daño grande eliminando toda la información de la tabla de particiones el día 6 de marzo.
Conejo
Cuando los ordenadores de tipo medio estaban extendidos especialmente en ambientes universitarios, funcionaban como multiusuario, múltiples usuarios se conectaban simultáneamente a ellos mediante terminales con un nivel de prioridad. El ordenador ejecutaba los programas de cada usuario dependiendo de su prioridad y tiempo de espera. Si se estaba ejecutando un programa y llegaba otro de prioridad superior, atendía al recién llegado y al acabar continuaba con lo que hacia con anterioridad. Como por regla general, los estudiantes tenían prioridad mínima, a alguno de ellos se le ocurrió la idea de crear este virus. El programa se colocaba en la cola de espera y cuando llegaba su turno se ejecutaba haciendo una copia de sí mismo, agregándola también en la cola de espera. Los procesos a ser ejecutados iban multiplicándose hasta consumir toda la memoria de la computadora central interrumpiendo todos los procesamientos.
Macro-virus
Los macro-virus representan una de las amenazas más importantes para una red. Actualmente son los virus que más se están extendiendo a través de Internet. Representan una amenaza tanto para las redes informáticas como para los ordenadores independientes. Su máximo peligro está en que son completamente independientes del sistema operativo o de la plataforma. Es más, ni siquiera son programas ejecutables.
Los macro-virus son pequeños programas escritos en el lenguaje propio (conocido como lenguaje script o macro-lenguaje) propio de un programa. Así nos podemos encontrar con macro-virus para editores de texto, hojas de cálculo y utilidades especializadas en la manipulación de imágenes.
En Octubre de 1996 había menos de 100 tipos de macro-virus. En Mayo de 1997 el número había aumentado a 700.
Sus autores los escriben para que se extiendan dentro de los documentos que crea el programa infectado. De esta forma se pueden propagar a otros ordenadores siempre que los usuarios intercambien documentos. Este tipo de virus alteran de tal forma la información de los documentos infectados que su recuperación resulta imposible. Tan solo se ejecutan en aquellas plataformas que tengan la aplicación para la que fueron creados y que comprenda el lenguaje con el que fueron programados. Este método hace que este tipo de virus no dependa de ningún sistema operativo.
El lenguaje de programación interno de ciertas aplicaciones se ha convertido en una poderosa herramienta de trabajo. Pueden borrar archivos, modificar sus nombres y (como no) modificar el contenido de los ficheros ya existentes. Los macro-virus escritos en dichos lenguajes pueden efectuar las mismas acciones.
Al día de hoy, la mayoría de virus conocidos se han escrito en WordBasic de Microsoft, o incluso en la última versión de Visual Basic para Aplicaciones (VBA), también de Microsoft. WordBasic es el lenguaje de programación interno de Word para Windows (utilizado a partir de la versión 6.0) y Word 6.0 para Macintosh. Como VBA se ejecuta cada vez que un usuario utiliza cualquier programa de Microsoft Office, los macro-virus escritos en dicho lenguaje de programación representan un riesgo muy serio. En otras palabras, un macro-virus escrito en VBA puede infectar un documento de Excel, de Access o de PowerPoint. Como estas aplicaciones adquieren más y más importancia cada día, la presencia de los macro-virus parece que está asegurada.
Microsoft Word es una de las aplicaciones preferidas para los macro-virus. Y lo es por varias razones:

Microsoft Word está muy difundido, por lo que un macro-virus para esta aplicación tendrá un gran impacto. Además, Microsoft Word es un producto pensado para plataformas cruzadas, disponible para DOS, Windows 3. 1, Windows 95, Windows NT y Mac OS, con lo que se amplía enormemente la posibilidad de infección.

La plantilla Normal de Word (en las versiones de Windows se llama normal. dot ) contiene todas las macros que se pueden utilizar con Word. Para un macro-virus esta plantilla es suelo fértil en el cual puede incubar sus virus y copiarlos luego a otros documentos de Word o incluso al resto de aplicaciones de Microsoft.

Microsoft Word puede ejecutar automáticamente macros sin necesidad del consentimiento humano. Esta habilidad hace que el escritor de macro-virus asocie sus programas con algún tipo de macro legítima. Word usa macros para (entre otras cosas) abrir y cerrar documentos. E incluso para cerrar el propio programa.

Comparado con lo complicado que resulta escribir macros en ensamblador, escribir en el leguaje de programación de Word es un juego de niños. Las principales ventajas de WordBasic y VBA son que son lenguajes muy intuitivos.

Los usuarios suelen pegar sus documentos de Word a sus mensajes de correo electrónico, publicarlos en sitios FTP o bien mandarlos a una lista de mail. Como se puede figurar la cantidad de gente que se infectará con este tipo de documentos es enorme. Desgraciadamente, debido a la novedad de estos sistemas de transmisión, el creador de un macro-virus puede estar seguro de que su virus llegará a mucha gente.
Un macro-virus para Word también es capaz de sobreescribir las opciones Guardar, Guardar cómo y Nuevo del menú Archivo para asegurar su permanencia. La verdad es que sobreescribir estas opciones no representa ningún tipo de problema. Basta con copiar la macro al documento y copiarla a otra macro con las modificaciones deseadas. La naturaleza polimorfa de este tipo de virus es una de las razones por la que los profesionales los consideran tan peligrosos.
Word 7.0 para Windows 95 y NT y Microsoft Word 97 avisan automáticamente a sus usuarios cuando abren un documento y éste contiene macros. Además, Microsoft proporciona una herramienta de protección contra los virus llamada MVP válida para sus usuarios de Windows y Macintosh. Dicha herramienta instala una serie de macros que detectan cualquier macro sospechosa y avisa al usuario del peligro que conlleva abrir un documento determinado. Conviene que escanee todos los documentos de Word que reciba a través del correo electrónico antes de abrirlos por si están infectados. En las últimas versiones de Microsoft Word (a partir de la 7.0) hay un detalle que las hace menos susceptibles ante la infección de los macro-virus de Word. Y es que, al igual que las últimas versiones de programas como Excel, Access y PowerPoint, se ha cambiado el lenguaje de programación interno. Microsoft usa un lenguaje nuevo al que ha bautizado como Visual Basic para Aplicaciones 5.0 (VBA). Además, las nuevas versiones de Chamaleon (de NetManage), Photoshop (de Adobe) y AutoCAD (de AutoDesk) utilizan VBA.
Es una buena noticia saber que el cambio de lenguaje anulará la mayoría de los macro-virus de Word (siempre que no se esté trabajando en un modo compatible con las antiguas versiones de WordBasic). Sin embargo, la aparición de VBA 5.0 y su aceptación entre las aplicaciones indica que nos encontramos ante una nueva era de macrovirus. Y como VBA es un lenguaje que utilizan muchas aplicaciones será posible que un mismo macro-virus infecte a aplicaciones muy distintas entre sí.
Los pasos que se deben seguir para eliminar macro-virus son los siguientes:

Activar la protección antivirus si está desactivada.

Abrir el Word directamente, sin ningún documento.

Ir al menú Herramientas, y elegir Opciones....

En la pestaña General, activar la casilla donde dice Protección antivirus en macro.

Abrir el documento infectado teniendo en cuenta que, cuando se presente la ventana de Advertencia, se debe elegir la opción Abrir sin Macros para no infectarse.

Una vez abierto el documento, elegir, dentro del menú Herramientas, la opción Macro y dentro de ella, la que dice Editor de Visual Basic, o directamente, presionar la combinación de teclas ALT+F11. Donde, en la parte izquierda de la pantalla, se podrá observar un cuadro que dice "Proyecto - ..." y el nombre del archivo abierto, en este caso Normal.

Se debe desplegar cada uno de los ítems de ese cuadro para ver el código de las macros. Al hacer doble click sobre algunos de estos elementos, se abrirá una nueva ventana con código.

Se debe marcar el texto que aparece en la nueva ventana, y eliminarlo como se haría con cualquier texto. Al hacer esto, se estarán eliminando las macros que contiene el documento, lo que eliminará completamente el Macrovirus.
Estos pasos deben repetirse por todos los elementos que se encuentren en el cuadro Proyectos.
Gusanos
Un gusano se puede decir que es un set de programas, que tiene la capacidad de desparramar un segmento de el o su propio cuerpo a otras computadoras conectadas a una red.
Hay dos tipos de Gusanos:

Host Computer Worm: son contenidos totalmente en una computadora, se ejecutan y se copian a si mismo vía conexión de una red. Los Host Computer Worm, originalmente terminan cuando hicieron una copia de ellos mismos en otro host. Entonces, solo hay una copia del gusano corriendo en algún lugar de una red. También existen los Host Computer Worm, que hacen una copia de ellos mismos e infectan otras redes, es decir, que cada maquina guarda una copia de este Gusano.

Network Worms: consisten en un conjunto de partes (llamadas "segmentos"), cada una corre en una maquina distinta (y seguramente cada una realiza una tarea distinta) y usando la red para distintos propósitos de comunicación.
Propagar un segmento de una maquina a otra es uno de los propósitos. Los Network Worm tienen un segmento principal que coordina el trabajo de los otros segmentos, llamados también "octopuses".
El Famoso Internet Worm creado por Morrison en 1988 y que tantas máquinas infectó era del tipo Host Computer. Para conocer un Gusano, veamos detalladamente como funcionaba el que hizo Morrison.
El objetivo de ese virus era obtener una "shell" en la otra maquina. Para esto el gusano usaba tres técnicas distintas Sendmail, fingerd y rsh/rexec.
The Sendmail Attack. En el ataque por Sendmail, el gusano abría una conexión TCP con el sendmail de otra maquina (puerto SMTP). Mediante un error del Sendmail, el Gusano creaba un programa C que se compilaba en la máquina ya infectada y reemplazaba la shell común sh por una Worm.
The Fingerd Attack. En este ataque, intentaba infiltrarse por un bug en el daemon del finger (fingerd). Aparentemente era con este bug que el gusano se pudo desparramar con tanta libertad. Al parecer, los argumentos del daemon de finger eran leídos sin tener controles preestablecidos de los límites. El gusano, aprovechándose de eso, ejecutaba un comando y reemplazaba la shell común sh con el gusano. Así, cada vez que un usuario se logueara empezaba a funcionar el Gusano.
The Rsh/Rexec Attack. La tercera forma de entrar a un sistema por una Red, era utilizando la confianza de host. Para esto, necesitaba tener un nombre de usuario y contraseña. Por eso abría el /etc/passwd y probaba contraseñas conocidas. Combinaba nombre de usuario, con la descripción, etc. Cuando conseguía la password de algún usuario, buscaba el archivo .rhosts y usando los comandos de confianza rsh/rexec para obtener una cuenta en otra maquina de confianza y empezar el proceso de nuevo. Cuando el gusano se conectaba a un host satisfactoriamente, creaba un proceso (hijo) que continuaba con la infección, mientras que el primer proceso (padre) sigue buscando host para seguir infectando. Para conseguir host para infectar, el gusano usa distintas técnicas, como por ejemplo el netstat, o edita el /etc/hosts en busca de algún host, cada vez que encuentra uno, intenta infectarlo.
Los Nuevos Worm
Happy99. Fue descubierto en Junio de 1999. La primera vez que es ejecutado se ven fuegos artificiales y un cartel que dice "Happy 99". Este cartel es un fachada, ya que mientras se encarga de reemplazar algunos archivos. Cada mensaje que se manda por e-mail, crea un mensaje alternativo que tiene adjunto el Happy99.
Este gusano tiene una lista de cada e-mail al cual fue enviado una copia del Happy99.
Melissa Virus. El virus Melissa es un virus de Macro en Word, que infecta el sistema y manda 50 copias de sí mismo, utilizando el Microsoft Outlook. Muestra un mensaje que dice "Important Message from " y manda un e-mail adjuntando el archivo .doc. Aún, si la máquina no tuviera el Microsoft Outlook, este Troyano / Virus infecta la máquina.
Bubbleboy Worm. Este gusano nunca salió a la luz, sino que fue creado por una persona que quiso demostrar las falencias que tiene el sistema VBS Script. Lo importante de este virus es que es enviado por e-mail, pero puede infectar a la máquina sin la necesidad de abrir ningún archivo adjunto, ya que el gusano vienen incluido en el e-mail, por eso hace de este gusano muy peligroso. Simplemente al hacerle un click en el mensaje el virus se activa. Es por esto, que este virus solo infecta maquinas Windows 98 / 2000, con IE 5 y Outlook / Outlook Express.
La propagación del Bubbleboy depende de dos controles ActiveX particulares que fueron marcados como "seguros".

No hay comentarios:

Publicar un comentario