INTRODUCCIÓN
Hoy resulta muy difícil imaginar un mundo sin computadoras. La idea de una sociedad totalmente informatizada, que muchos consideraban una mera fantasía, se ha transformado en pocos años en realidad, al mismo tiempo que la tecnología ha avanzado y ha podido ser aplicada a diversos ámbitos de la ciencia y de la vida cotidiana. Introducir una tarjeta magnética en un cajero automático y conseguir que éste nos de dinero resulta un buen ejemplo para ilustrar esta compleja dependencia a la que nos hemos acostumbrado.
En el año 1981, se fabricó la primera computadora personal, lo que supuso el inicio de una revolución tecnológica cuya magnitud sólo puede compararse a la invención de la rueda o de la máquina a vapor.
Sin embargo, en el año 1983, un estudiante de la Universidad de California del Sur identificado con el nombre de Fred Cohen, presentó un experimento sobre seguridad informática. Este personaje fue el iventor del primer virus informático.
A partir de ese momento, comenzó el dolor de cabeza para cualquier sistema.
VIRUS INFORMÁTICOS
Un virus es un programa o secuencia de instrucciones que un ordenador es capaz de interpretar y ejecutar, todo virus ha de ser programado y realizado por expertos informáticos.
Su misión principal es introducirse, lo más discretamente posible en un sistema informático y permanecer en un estado de latencia hasta que se cumple la condición necesaria para activarse.
Las posibles vías de transmisión de los virus son: los discos, el cable de una red y el cable telefónico.
Lo primero que hace un virus típico, cuando se ejecuta el programa infectado, es situar su propio código en una parte de la memoria permaneciendo residente en ella. Todo lo que ocurra a partir de este momento depende enteramente de la especie a la que pertenezca el virus en cuestión.
Generalmente los virus disponen de una rutina destructiva que se activará si se cumple una determinada condición. Por ejemplo el virus "880" se activa el día 11 de junio mostrando unos mensajes en la pantalla y sobre-escribiendo archivos ejecutables.
Los virus más simples se autorreplican en los ficheros ejecutables disponibles en los diferentes discos duros del sistema, incrementando ligeramente el tamaño de los mismos (incremento correspondiente al tamaño real del virus). Éstos ficheros ejecutables incluyen cualquier fichero cuya extensión sea exe .com .ovl .sys o .bin.
Otro tipo de virus son los llamados virus de Boot. Estos utilizaban los sectores de arranque y la tabla de particiones para ejecutarse y tomar el control cada vez que el ordenador arranque desde un disco contaminado.
Especies de 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 escala 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.
Formas de Contagio
Los principales métodos de contagio son la línea telefónica y el intercambio de software no adquirido legalmente.
Hay que tener en cuenta que Internet es una de las mayores fuentes de contagio, otra importante fuente de contagio son las BBS (Bulletin Board System, Bases de datos remotas de libre acceso).
Los virus funcionan, se reproducen y liberan sus cargas activas sólo cuando se ejecutan. Por eso, si un ordenador está simplemente conectado a una red informática infectada o se limita a cargar un programa infectado, no se infectará necesariamente. Normalmente, un usuario no ejecuta conscientemente un código informático potencialmente nocivo; sin embargo, los virus engañan frecuentemente al sistema operativo de la computadora o al usuario informático para que ejecute el programa viral.
Algunos virus tienen la capacidad de adherirse a programas legítimos. Esta adhesión puede producirse cuando se crea, abre o modifica el programa legítimo. Cuando se ejecuta dicho programa, lo mismo ocurre con el virus. Los virus también pueden residir en las partes del disco duro o flexible que cargan y ejecutan el sistema operativo cuando se arranca el ordenador, por lo que dichos virus se ejecutan automáticamente. En las redes informáticas, algunos virus se ocultan en el software que permite al usuario conectarse al sistema.
Formas de Prevención y Eliminación del Virus
Copias de seguridad: Realice copias de seguridad de sus datos. Éstas pueden realizarlas en el soporte que desee, disquetes, unidades de cinta, etc. Mantenga esas copias en un lugar diferente del ordenador y protegido de campos magnéticos, calor, polvo y personas no autorizadas.
Copias de programas originales: No instale los programas desde los disquetes originales. Haga copia de los discos y utilícelos para realizar las instalaciones.
No acepte copias de origen dudoso: Evite utilizar copias de origen dudoso, la mayoría de las infecciones provocadas por virus se deben a discos de origen desconocido.
Utilice contraseñas: Ponga una clave de acceso a su computadora para que sólo usted pueda acceder a ella.
Anti-virus: Tenga siempre instalado un anti-virus en su computadora, como medida general analice todos los discos que desee instalar. Si detecta algún virus elimine la instalación lo antes posible.
Actualice periódicamente su anti-virus: Un anti-virus que no está actualizado puede ser completamente inútil. Todos los anti-virus existentes en el mercado permanecen residentes en la computadora pata controlar todas las operaciones de ejecución y transferencia de ficheros analizando cada fichero para determinar si tiene virus, mientras el usuario realiza otras tareas.
Efectos de los Virus en las Computadoras
Cualquier virus es perjudicial para un sistema. Como mínimo produce una reducción de la velocidad de proceso al ocupar parte de la memoria principal. Estos efectos se pueden diferenciar en destructivos y no destructivos.
Efectos no destructivos:
Emisión de mensajes en pantalla: Es uno de los efectos más habituales de los virus. Simplemente causan la aparición de pequeños mensajes en la pantalla del sistema, en ocasiones se trata de mensajes humorísticos, de Copyright, etc. Ejemplo:
Soupy: "Get ready.." cause THERE´S A VIRUS IN YOUR SOUP!
Casino: "DISK DESTROYER. A SOUVENIR FROM MALTA".
Borrado a cambio de la pantalla: También es muy frecuente la visualización en pantalla de algún efecto generalmente para llamar la atención del usuario. Los efectos usualmente se producen en modo texto. En ocasiones la imagen se acompaña de efectos de sonido. Ejemplo:
Ambulance: Aparece una ambulancia moviéndose por la parte inferior de la pantalla al tiempo que suena una sirena.
Walker: Aparece un muñeco caminando de un lado a otro de la pantalla.
Efectos destructivos:
Efectos destructivos:
Desaparición de ficheros: Ciertos virus borran generalmente ficheros con extensión exe y com, por ejemplo una variante del Jerusalem-B se dedica a borrar todos los ficheros que se ejecutan.
Formateo de discos duros: El efecto más destructivo de todos es el formateo del disco duro. Generalmente el formateo se realiza sobre los primeros sectores del disco duro que es donde se encuentra la información relativa a todo el resto del disco.
CONCLUSIONES
Un virus es un programa pensado para poder reproducirse y replicarse por sí mismo, introduciéndose en otros programas ejecutables o en zonas reservadas del disco o la memoria. Sus efectos pueden no ser nocivos, pero en muchos casos hacen un daño importante en el ordenador donde actúan. Pueden permanecer inactivos sin causar daños tales como el formateo de los discos, la destrucción de ficheros, etc.
Tener siempre a mano un disco de arranque limpio. Este disco de arranque se crea formateando un disquete con FORMAT/S de forma que se incluyen ficheros de arranque IO.SYS, MSDOS.SYS y COMMAND.COM. Este disco permitirá arrancar el ordenador.
Algunas de las tácticas para combatirlos son:
El más evidente es la necesidad de prevenir la violación intencionada y maliciosa de una restricción de acceso, por parte de un usuario del sistema. Sin embargo, es de importancia más general la necesidad de asegurar que cada componente de un programa únicamente utiliza los recursos del mismo según los criterios que establezca el sistema operativo.
Para construir un sistema de protección se tiene que definir; por un lado, la estrategia de protección (de qué fallos hay que proteger al sistema) y por otro, los mecanismos de protección (cómo hacer que se consiga la protección definida por la estrategia).
0 comentarios:
Publicar un comentario