Virus informático. Los virus. Un virus es un programa diseñado para dañar sistemas informáticos (Computadoras), alterando su forma de trabajar o dañando información almacenada en el disco duro. Por supuesto, sin el conocimiento o permiso del afectado. En términos más técnicos, un virus se define como una porción de código de programación cuyo objetivo es implementarse a si mismo en un archivo ejecutable y multiplicarse sistemáticamente de un archivo a otro. Además de esta función primaria de "invasión" o "reproducción", los virus están diseñados para realizar una acción concreta en los sistemas informáticos. Esta acción puede ir desde la simple aparición de un mensaje en la pantalla, hasta la destrucción de toda la información contenida en el sistema. Características de los virus. Estos programas tienen algunas características especiales: son muy pequeños, en muy pocas líneas contienen instrucciones, parámetros, contadores de tiempo o de numero de copias, mensajes, etc.; casi nunca incluyen el nombre del autor, ni el registro o copyright, ni la fecha de creación; se producen a si mismos y toman el control de la computadora o modifican otros programas. Están escritos generalmente en lenguaje ensamblador, pero muchos de ellos han sido elaborados utilizando, alguno de los lenguajes más populares como, C, C++, Pascal, Turbo C o Turbo Pascal. Historia: A continuación se presenta una breve cronología de lo que ha sido los orígenes de los virus: 1949: Se da el primer indicio de Definición de virus. John Von Neumann (considerado el Julio Verne de la informática), expone su "Teoría y organización de un autómata complicado". Nadie podía sospechar de la repercusión de dicho artículo. 1959: En los laboratorios AT&T Bell, se inventa el juego "Guerra Nuclear" (Core Wars) o guerra de núcleos de ferrita. Consistía en una batalla entre los códigos de dos programadores, en la que cada jugador desarrollaba un programa cuya misión era la de acaparar la máxima memoria posible mediante la reproducción de sí mismo. 1970: El Creeper es difundido por la red ARPANET. El virus mostraba el mensaje "SOY CREEPER...ATRAPAME SI PUEDES!". Ese mismo año es creado su antídoto: el antivirus Reaper cuya misión era buscar y destruir al Creeper. 1974: El virus Rabbit hacía una copia de si mismo y lo situaba dos veces en la cola de ejecución del ASP de IBM lo que causaba un bloqueo del sistema. 1980: La red ARPANET es infectada por un "gusano" y queda 72 horas fuera de servicio. La infección fue originada por Robert Tappan Morris, un joven estudiante de informática de 23 años aunque según él fue un accidente. 1983: El juego Core Wars, con adeptos en el MIT, salió a la luz pública en un discurso de Ken Thompson. Dewdney explica los términos de este juego. Ese mismo año aparece el término virus tal como lo entendemos 1 hoy. 1985: Dewdney intenta enmendar su error publicando otro artículo "Juegos de Computadora virus, gusanos y otras plagas de la Guerra Nuclear atentan contra la memoria de los ordenadores". 1987: Se da el primer caso de contagio masivo de computadoras a través del MacMag Virus también llamado Peace Virus sobre computadoras Macintosh. Este virus fue creado por Richard Brandow y Drew Davison y lo incluyeron en un disco de juegos que repartieron en una reunión de un club de usuarios. Uno de los asistentes, Marc Canter, consultor de Aldus Corporation, se llevó el disco a Chicago y contaminó la computadora en el que realizaba pruebas con el nuevo software Aldus Freehand. El virus contaminó el disco maestro que fue enviado a la empresa fabricante que comercializó su producto infectado por el virus. Se descubre la primera versión del virus "Viernes 13" en los ordenadores de la Universidad Hebrea de Jerusalén. 1988: El virus Brain creado por los hermanos Basit y Alvi Amjad de Pakistan aparece en Estados Unidos. CLASIFICACIÓN: Dependiendo del lugar donde se alojan, la técnica de replicación o la plataforma en la cual trabajan, podemos diferenciar en distintos tipos de virus. VIRUS DE SECTOR DE ARRANQUE (BOOT) Utilizan el sector de arranque, el cual contiene la información sobre el tipo de disco, es decir, numero de pistas, sectores, caras, tamaño de la FAT, sector de comienzo, etc. A todo esto hay que sumarle un pequeño programa de arranque que verifica si el disco puede arrancar el sistema operativo. Los virus de Boot utilizan este sector de arranque para ubicarse, guardando el sector original en otra parte del disco. En muchas ocasiones el virus marca los sectores donde guarda el Boot original como defectuosos; de esta forma impiden que sean borrados. En el caso de discos duros pueden utilizar también la tabla de particiones como ubicación. Suelen quedar residentes en memoria al hacer cualquier operación en un disco infectado, a la espera de replicarse. Como ejemplo representativos esta el Brain. VIRUS DE ARCHIVOS Infectan archivos y tradicionalmente los tipos ejecutables COM y EXE han sido los mas afectados, aunque es estos momentos son los archivos (DOC, XLS, SAM...) los que están de moda gracias a los virus de macro (descritos mas adelante). Normalmente insertan el código del virus al principio o al final del archivo, manteniendo intacto el programa infectado. Cuando se ejecuta, el virus puede hacerse residente en memoria y luego devuelve el control al programa original para que se continúe de modo normal. El Viernes 13 es un ejemplar representativo de este grupo. Dentro de la categoría de virus de archivos podemos encontrar más subdivisiones, como los siguientes: • Virus de acción directa: Son aquellos que no quedan residentes en memoria y que se replican en el momento de ejecutarse un archivo infectado. • Virus de sobreescritura: Corrompen el archivo donde se ubican al sobreescribirlo. • Virus de compañía: Aprovechan una característica del DOS, gracias a la cual si llamamos un archivo para ejecutarlo sin indicar la extensión el sistema operativo buscara en primer lugar el tipo COM. Este 2 tipo de virus no modifica el programa original, sino que cuando encuentra un archivo tipo EXE crea otro de igual nombre conteniendo el virus con extensión COM. De manera que cuando tecleamos el nombre ejecutaremos en primer lugar el virus, y posteriormente este pasara el control a la aplicación original. VIRUS DE MACRO Es una familia de virus de reciente aparición y gran expansión. Estos están programas usando el lenguaje de macros WordBasic, gracias al cual pueden infectar y replicarse a través de archivos MS−Word (DOC). En la actualidad esta técnica se ha extendido a otras aplicaciones como Excel y a otros lenguajes de macros, como es el caso de los archivos SAM del procesador de textos de Lotus. Se ha de destacar, de este tipo de virus, que son multiplataformas en cuanto a sistemas operativos, ya que dependen únicamente de la aplicación. Hoy en día son el tipo de virus que están teniendo un mayor auge debido a que son fáciles de programar y de distribuir a través de Internet. Aun no existe una concienciación del peligro que puede representar un simple documento de texto. VIRUS BAT Este tipo de virus empleando ordenes DOS en archivos de proceso por lotes consiguen replicarse y efectuar efectos dañinos como cualquier otro tipo de virus. En ocasiones, los archivos de proceso por lotes son utilizados como lanzaderas para colocar en memoria virus comunes. Para ello se copian a sí mismo como archivos COM y se ejecutan. Aprovechar ordenes como @ECHO OFF y REM traducidas a código maquina son <<comodines>> y no producen ningún efecto que altere el funcionamiento del virus VIRUS DEL MIRC Vienen a formar parte de la nueva generación Internet y demuestra que la Red abre nuevas forma de infección. Consiste en un script para el cliente de IRC Mirc. Cuando alguien accede a un canal de IRC, donde se encuentre alguna persona infectada, recibe por DCC un archivo llamado script.ini. FUNCONAMIENTO: LOS VIRUS PARASITOS. Infectan ficheros ejecutables o programas de la computadora. No modifican el contenido del programa huésped, pero se adhieren al huésped de tal forma que el código del virus se ejecuta en primer lugar. Estos virus pueden ser: • De acción directa. • Residentes. • Un virus de acción directa selecciona uno o más programas para infectar cada vez que se ejecuta. Un virus residente se oculta en la memoria del ordenador e infecta un programa determinado, cuando se ejecuta dicho programa. LOS VIRUS DEL SECTOR DE ARRANQUE INICIAL. Estos virus residen en la primera parte del disco duro o flexible, conocida como sector de arranque inicial, y sustituyen los programas que almacenan información sobre el contenido del disco o los programas que arrancan el ordenador. Estos virus suelen difundirse mediante el intercambio físico de discos flexibles. 3 LOS VIRUS MULTIPARTITOS Estos virus combinan las capacidades de los virus parásitos y de sector de arranque inicial, y pueden infectar tanto ficheros como sectores de arranque inicial. LOS VIRUS ACOMPAÑANTES Los virus acompañantes no modifican los ficheros, sino que crean un nuevo programa con el mismo nombre que un programa legítimo y engañan al sistema operativo para que lo ejecute. LOS VIRUS DE VÍNCULO Estos modifican la forma en que el sistema operativo encuentra los programas, y lo engañan para que ejecute primero el virus y luego el programa deseado. Un virus de vínculo puede infectar todo un directorio de un ordenador, y cualquier programa ejecutable al que se acceda en dicho directorio ejecutará el virus. VIRUS DE MACRO Son un tipo de virus que ha cobrado mucha importancia en el mundo de la informática, lo curioso es que no se transmiten por ficheros ejecutables, sino mediante los ficheros de extensión .DOC de Microsoft Word, estos virus son capaces de cambiar la configuración de Windows, borrar ficheros de nuestro disco duro, enviar por correo cualquier archivo sin que nos demos cuenta, e incluso infectar nuestro disco duro con un virus de fichero. Estos virus no son muy complicados de diseñar como los virus convencionales. Están codificados en forma de macros del Word y por tanto puede entrar en acción nada más cargar un documento. El Word contiene una especie de lenguaje de programación llamado WordBasic y es con este lenguaje como se diseñan. VIRUS E−MAIL Un concepto sobre este tipo de virus debe quedar claro, no existen tales virus, no puede haber un virus de correo electrónico porque precisamente el correo no es auto ejecutable. Puede ser que recibamos un programa infectado con un virus pero solo pasará a tener efecto cuando lo ejecutemos. Pero debemos ejecutarlo ya desde nuestro ordenador, así que todos esos rumores de que hay correos que con sólo abrirlos nos pueden destruir toda la información de nuestro disco duro, todo eso es mentira. Uno de los correos de este tipo más famoso era el Good Times. CABALLOS DE TROYA Un caballo de Troya aparenta ser algo interesante e inocuo, por ejemplo un juego, pero cuando se ejecuta puede tener efectos dañinos. BOMBAS LOGICAS Una bomba lógica libera su carga activa cuando se cumple una condición determinada, como cuando se alcanza una fecha u hora determinada o cuando se teclea una combinación de letras. GUSANOS Un gusano se limita a reproducirse, pero puede ocupar memoria de la computadora y hacer que sus procesos vayan más lentos. 4 LOS ANTIVIRUS INFORMATICOS Un antivirus es cualquier metodología, programa o sistema para prevenir la activación de los virus, su propagación y contagio dentro de un sistema y su inmediata eliminación y la reconstrucción de archivos o de áreas afectadas por los virus informáticos. Los antivirus permiten la detección y eliminación de virus. Un virus es identificado mediante una cadena del antivirus que busca, encuentra y elimina los distintos virus informáticos. El software antivirus contrarresta de varias maneras los efectos de los virus informáticos para detectarlos. La mayoría de las soluciones se basan en tres componentes para la detección: exploración de acceso, exploración requerida, y suma de comprobación. La exploración de acceso: Inicia automáticamente una exploración de virus, cuando se accede a un archivo, es decir al introducir un disco, copiar archivos, ejecutar un programa, etc. La exploración requerida: El usuario inicia la exploración de virus. Las exploraciones se pueden ejecutar inmediatamente, en un directorio o volumen determinado. La suma de comprobación o comprobación de integridad: Método por el que un producto antivirus determina si se ha modificado un archivo. Como el código vírico se une físicamente a otro archivo, se puede determinar tal modificación guardando la información del archivo antes de la infección. La suma de comprobación es generalmente exacta y no necesita actualizaciones. Sin embargo la suma de comprobación no proporciona ni el nombre, ni el tipo de virus. Los programas antivirus se componen fundamentalmente de dos partes: un programa que rastrea (SCAN), si en los dispositivos de almacenamiento se encuentra alojado algún virus, y otro programa que desinfecta (CLEAN) a la computadora del virus detectado. TIPOS DE ANTIVIRUS 5 Antivirus Detectores o Rastreadores: Son aquellos antivirus que usan técnicas de búsqueda y detección explorando o rastreando todo el sistema en busca de un virus. Estos programas se utilizan para detectar virus que pueden estar en la memoria, en el sector de arranque del disco duro, en la zona de partición del disco y en algunos programas. Dependiendo de la forma de analizar los archivos los podemos clasificar a su vez en antivirus de patrón y heurístico. Antivirus de Patrón: Realizan el análisis de los archivos por medio de la búsqueda en el archivo de una cualidad particular de los virus. Existen antivirus específicos para un determinado virus, conociendo su forma de atacar y actuar. Antivirus Heurístico: Este antivirus busca situaciones sospechosas en los programas, simulando la ejecución y observando el comportamiento del programa. Limpiadores o Eliminadores: Una vez desactivada la estructura del virus procede a eliminar o erradicar el virus de un archivo, del sector de arranque de un disco, en la zona de partición de un disco y en algunos programas. Estos antivirus deben tener una base de datos con información de cada virus para saber que método de desinfección deben usar para eliminar el virus. Dependiendo de los efectos de la especie viral procederá a reconstruir las partes afectadas por el virus informático. 6 Protectores o Inmunizadores: Es un programa para prevenir la contaminación de virus, estos programas no son muy usados porque utilizan mucha memoria y disminuyen la velocidad de la ejecución de algunos programas y hasta del computador. Residentes: Permanecen en memoria para el reconocimiento de un virus desde que es ejecutado. Cada vez que cargamos un programa, el antivirus lo analiza para verificar si el archivo esta infectado o no, con algún virus informático. TECNICAS DE LOS ANTIVIRUS Escaneo de Firmas: La mayoría de los programas antivirus utilizan esta técnica. Revisan los programas para localizar una secuencia de instrucciones que son únicas de los virus. Chequeo de Integridad: Utilizan el Chequeo de Redundancia Cíclica (CRC), es decir toman las instrucciones de un programa como si fuesen datos y se hace un cálculo, se graban en un archivo los resultados, y luego se revisa si el programa fue modificado o alterado. Monitoreo: Interceptan o bloquean instrucciones sospechosas o riesgosas, por ejemplo cuando un programa pide cargarse en memoria y permanecer residente, alterar el área de arranque o modificar un archivo de algún programa. Esta técnica funciona residente en memoria supervisando continuamente cuando se ejecuta un programa, entonces intercepta los llamados a funciones sospechosas. 7 Análisis Heurístico: Analiza cada programa sospechoso sin ejecutar sus instrucciones, lo que hace es desensamblar el código de máquina para saber que haría el programa si se ejecuta. Avisa al usuario si el programa tiene instrucciones para hacer algo raro en un programa normal, pero que es común en los virus, puede revisar varios o todos los programas de un disco, e indica que puede suceder algo raro cuando se ejecute el programa. 8