- ¿Qué son?
- Virus
- Tipos de virus
- Bug-Ware
- Macro
- MailBomb
- Mirc
- Multi-Partes
- Sector de Arranque
- VBS
- Web
- Técnicas
Pero sabemos que son, lo primero que haremos será diferenciar algunos términos que nos pueden conducir a error.
Para ver el gráfico seleccione la opción "Descargar" del menú superior
Así comprenderemos mejor el temario expuesto en este WEB.
Términos
- Gusano o Worm Son programas que tratan de reproducirse a si mismo, no produciendo efectos destructivos sino el fin de dicho programa es el de colapsar el sistema o ancho de banda, replicándose a si mismo.
- Caballo de Troya o Camaleones Son programas que permanecen en el sistema, no ocasionando acciones destructivas sino todo lo contrario suele capturar datos generalmente password enviándolos a otro sitio, o dejar indefenso el ordenador donde se ejecuta, abriendo agujeros en la seguridad del sistema, con la siguiente profanación de nuestros datos.
El caballo de troya incluye el código maligno en el programa benigno, mientras que los camaleones crean uno nuevo programa y se añade el código maligno.
- Joke Program Simplemente tienen un payload (imagen o sucesión de estas) y suelen destruir datos.
- Bombas Lógicas o de Tiempo Programas que se activan al producirse un acontecimiento determinado. la condición suele ser una fecha (Bombas de Tiempo), una combinación de teclas, o un estilo técnico Bombas Lógicas), etc… Si no se produce la condición permanece oculto al usuario.
- Retro Virus Este programa busca cualquier antivirus, localiza un bug (fallo) dentro del antivirus y normalmente lo destruye
Para ver el gráfico seleccione la opción "Descargar" del menú superior
Virus Son una combinación de gusanos, caballos de troya, joke programs, retros y bombas lógicas. Suelen ser muy DESTRUCTIVOS."La vida de un virus"
Otras definiciones
Aquí tenemos otras definiciones de lo que son los virus. Por personas relacionadas del sector. Como vemos todas las definiciones pueden ser correctas, aun así la mejor definición seria una mezcla entre todas las aquí expuestas.
- Es un segmento de código de programación que se implanta a si mismo en un archivo ejecutable y se multiplica sistemáticamente de un archivo a otro.
- Pequeño segmento de código ejecutable escrito en ensamblador o lenguaje de macro, capaz de tomar el control de la maquina o aplicación en algún momento y auto replicarse, alojándose en un soporte diferente al que se encontraba originalmente.
- Programa que puede infectar otros programas modificándolos para incluir una versión de si mismo.
- Son programas de ordenador. Su principal cualidad es la de poder auto replicarse o auto reproducirse. Intentan ocultar su presencia hasta el momento de su explosión y alteran el comportamiento y rendimiento del ordenador.
- Los virus son programas capaces de auto reproducirse copiándose en otro programa al que infectan, todo ello sin conocimiento del usuario. Los virus tienen la misión que le ha encomendado su programador, con lo que seria difícil decir que los virus tienen una misión común. Lo único que tienen de parecido es que deben pasar desapercibidos el máximo tiempo posible para poder cumplir su misión. Si son detectado el usuario puede eliminar el virus y controlar el contagio.
- Pequeño programa cuyo objetivo es perjudicar el funcionamiento de una computadora por medio de las instrucciones con que fue programado. Por lo general se adhiere a un programa benigno y de allá se activa y reproduce a otros programas.
- Los Virus Informáticos o Electrónicos o Computacionales son aquellos programas que se esconden en los dispositivos de almacenamiento y si en estos se encuentran otros programas o datos son contaminados en ese momento por aquellos. Ningún programa de Virus puede funcionar por si sólo, requiere de otros programas para poderlos corromper. Su otra característica es la capacidad que tienen de auto duplicación, haciendo copias iguales de sí mismos, entrando furtivamente y provocando anomalías en las computadoras al desarrollar su función destructora. Se les ha dado el nombre de Virus por la analogía que tiene su comportamiento con el de los Virus Biológicos.
- Un Virus Informático no es mas que un programa parásito auto reproductor, generalmente de efectos destructivos, que necesita de otros programas para su reproducción. Su nombre es totalmente correcto, ya que su funcionamiento es similar al de los virus orgánicos, de 1 pasa a 2, de 2 a 4, de 4 a 8 y así hasta llegar a la epidemia. Al contrario que los Virus orgánicos, los Virus Informáticos no sufren mutaciones en su comportamiento por si solos, aunque si pueden cambiar su código en cada infección, sin alterar su funcionamiento, para evitar su fácil detección. A estos virus, debido a su técnica de ocultación, se les denomina Virus Polimórficos y cambian según un código de Encriptación variable.
- Un virus informático es simplemente un programa, al igual que los utilizados en un ordenador, como WordPerfect, Lotus, o Windows. La gran diferencia es que los programas mencionados son invocados explícitamente por el usuario, para ejecutar una tarea como escribir una carta o efectuar cálculos, mientras que los virus se ejecutan solos, sin pedirle permiso al usuario. Su propósito no es ayudar al usuario en la resolución de una tarea.
Un Virus es un programa que en poco más de uno o dos Kbytes consiguen realizar acciones inimaginables; desde mostrar diversos mensajes o gráficos en pantalla hasta formatear el disco duro o hacernos perder todos los datos en él guardados.
- Un virus de computadora, por definición, es un programa -o código- que se replica añadiendo una copia de si mismo a otro archivo ejecutable. Un virus es particularmente da debido a que, sin detección o protección antivirus, el usuario no se percata que su sistema esta siendo invadido hasta que ve los resultados que pueden ir desde anuncios inocuos hasta la perdida total del sistema.
Existen una variedad de virus en función de su forma de actuar o de su forma de infectar clasificados de la siguiente manera.
Acompañante
Estos virus basan su principio en que MS-DOS, ejecuta el primer archivo COM y EXE del mismo directorio. El virus crea un archivo COM con el mismo nombre y en el mismo lugar que el EXE a infectar.
Después de ejecutar el nuevo archivo COM creado por el virus y cede el control al archivo EXE.
Archivo
Los virus que infectan archivos del tipo *.EXE, *.DRV, *.DLL, *.BIN, *.OVL, *.SYS e incluso BAT. Este tipo de virus se añade al principio o al final del archivo. Estos se activan cada vez que el archivo infectado es ejecutado, ejecutando primero su código vírico y luego devuelve el control al programa infectado pudiendo permanecer residente en la memoria durante mucho tiempo después de que hayan sido activados.
Este tipo de virus de dividen el dos: Virus de Acción Directa que son aquellos que no se quedan residentes en memoria y se replican en el momento de ejecutar el fichero infectado y los virus de Sobrescritura que corrompen el fichero donde se ubican al sobrescribirlo.
Bug-ware es el termino dado a programas informáticos legales diseñados para realizar funciones concretas. Debido a una inadecuada comprobación de errores o a una programación confusa causan daños al hardware o al software del sistema.
Muchas veces los usuarios finales aducen esos daños a la actividad de virus informáticos. Los programas bug-ware no son en absoluto virus informáticos, simplemente son fragmentos de código mal implementado, que debido a fallos lógicos, dañan el hardware o inutilizan los datos del computador
El término "bug" fue asociado a interferencias y malfuncionamiento desde mucho tiempo antes de que existieran los ordenadores modernos, siendo Thomas Edison uno de los primeros en acuñar este significado. Si bien fue una mujer, Grace Murray Hopper, quién en 1945 documentó el primer "bug" informático.
"bug", traducido literalmente del inglés como "bicho", adquiere otro significado cuando hablamos de informática. Esta otra acepción se refiere a elementos y circunstancias en el software o hardware, involuntarios e indeseados, que provocan un malfuncionamiento. A lo largo de los años este término se ha popularizado y hoy día se utiliza comúnmente para referirse a los errores en los programas informáticos. La relación con la seguridad informática es directa, ya que muchas de las vulnerabilidades que día a día vemos en Hispasec están asociadas a "bugs".
Grace Murray Hopper (1906-1992), graduada en matemáticas y física por el Vassar College, y doctora en matemáticas por la universidad de Yale, ha pasado a la historia por ser una innovadora programadora durante las primeras generaciones de ordenadores.
En 1943, durante la segunda guerra mundial, decidió incorporarse a la marina estadounidense. Fue destinada al laboratorio de cálculo Howard Aiken en la Universidad de Harvard, donde trabajó como programadora en el Mark I.
El 9 de septiembre de 1945 el grupo de trabajo de Aiken y Grace se encontraba en la sala del Mark II intentando averiguar porqué el ordenador no funcionaba adecuadamente. Tras un examen concienzudo lograron detectar que la culpable era una polilla de dos pulgadas que se había colado entre los contactos de unos de los relés del Mark II. Más tarde, Grace registraría el incidente en el cuaderno de bitácoras, pegó la polilla que causó el problema y anotó debajo la frase "First actual case of bug being found".
Puede verse una foto de la anotación original del primer "bug"
Para ver el gráfico seleccione la opción "Descargar" del menú superior
A partir de entonces, cada vez que algún ordenador daba problemas ellos decían que tenía "bugs" (bichos o insectos). Años más tarde Grace también acuñaría el término "debug" para referirse a la depuración de programas.
Además de los fines militares, única razón de ser de los primeros ordenadores, cuentan que Grace fue de las primeras personas en buscar utilidades civiles a la informática. Entre sus muchos méritos destaca la creación del lenguaje Flowmatic, el desarrollo del primer compilador, o su trabajo en la primera versión del lenguaje COBOL.
Grace continuó con sus avances en computación y tuvo numerosos reconocimientos a lo largo de su carrera. Entre otros, recibió el premio Hombre del Año en las Ciencias de Cómputos por la Data Processing Management Association. Fue la primera mujer nombrada Distinguished fellow of the British Computer Society, y la primera y única mujer almirante en la marina de los Estados Unidos hasta la fecha.
De acuerdo con la Internacional Security Association, los virus macro forman el 80% de todos los virus y son los que más rápidamente han crecido en toda la historia de los ordenadores en los últimos 5 años. A diferencia de otros tipos de virus, los virus macro no son exclusivos de ningún sistema operativo y se diseminan fácilmente a través de archivos adjuntos de e-mail, disquetes, bajadas de Internet, transferencia de archivos y aplicaciones compartidas.
Para ver el gráfico seleccione la opción "Descargar" del menú superior
Los virus macro son, sin embargo, aplicaciones específicas. Infectan las utilidades macro que acompañan ciertas aplicaciones como el Microsoft Word y Excel, lo que significa que un Word virus macro puede infectar un documento Excel y viceversa.
En cambio, los virus macro viajan entre archivos en las aplicaciones y pueden, eventualmente, infectar miles de archivos.
Los virus macro son escritos en Visual Basic y son muy fáciles de crear. Pueden infectar diferentes puntos de un archivo en uso, por ejemplo, cuando éste se abre, se graba, se cierra o se borra. Lo primero que hacen es modificar la plantilla maestra (normal.dot) para ejecutar varias macros insertadas por el virus, así cada documento que abramos o creemos, se incluirán las macros "víricas".
Con la posibilidad de contener un virus convencional, cambiar un ejecutable o DLL e insertarlo en el sistema.
Casi virus ¿o no? Esta clase de virus todavía no esta catalogado como tal pero, os voy a poner un ejemplo de lo que hacen, y haber que opinarías del este tipo de programas si son o no.
Por lo general todos son iguales, escribes un texto que quieras una dirección de e-mail (victima) introduces el numero de copias y ya esta.
El programa crea tantos mensajes como el numero de copias indicado antes, seguidamente empezara a enviar mensajes hasta saturar el correo de la victima.
No se considera virus tal cual, pero son idénticos y tienen muchas características comunes.
- Virus del MircSon la nueva generación de infección, aprovechan la ventajas proporcionadas por la Red y de los millones de usuarios conectados a cualquier IRC a través del Mirc. Consiste en un script para el cliente de IRC Mirc. Cuando se accede a un canal de IRC, recibe por DCC un archivo llamado "script.ini". Por defecto, el subdirectorio donde se descargan los archivos es el mismo donde esta instalado el programa, esto causa que el "script.ini" original se sobrescrito por el "script.ini" maligno.
Bueno después de lo dicho nos preguntaremos ¿y para en que nos afecta a nosotros? Pues muy fácil, los autores pueden desconectarte del IRC o acceder a información privada,(archivo de claves o el "etc/passwd" de Linux).
Los virus multi-parte pueden infectar tanto el sector de arranque como los archivos ejecutables, suelen ser una combinación de todos los tipos existentes de virus, su poder de destrucción es muy superior a los demás y de alto riesgo para nuestros datos, su tamaño es mas grande a cambio de tener muchas mas opciones de propagarse e infección de cualquier sistema.
Este tipo de virus infecta el sector de arranque de un disquete y se esparce en el disco duro del usuario, el cual también puede infectar el sector de arranque del disco duro (MBR). Una vez que el MBR o sector de arranque esté infectado, el virus intenta infectar cada disquete que se inserte en el sistema ,ya sea una CD-R, una unidad ZIP o cualquier sistema de almacenamiento de datos.
Los virus de arranque trabajan de la siguiente manera: se ocultan en el primer sector de un disco y se cargan en la memoria antes de que los archivos del sistema se carguen. Esto les permite tomar total control de las interrupciones del DOS y así, pueden diseminarse y causar daño.
Estos virus, generalmente reemplazan los contenidos del MBR o sector de arranque con su propio contenido y mueven el sector a otra área en el disco. La erradicación de un virus de arranque puede hacerse inicializando la máquina desde un disquete sin infectar, o encontrando el sector de arranque original y reemplazándolo en el lugar correcto del disco.
VBSDebido al auge de Internet los creadores de virus han encontrado una forma de propagación masiva y espectacular de sus creaciones a través mensajes de correo electrónico, que contienen archivos Visual Basic Scripts, anexados, los cuales tienen la extensión .VBS
El antiguo D.O.S. empleaba archivos .BAT (Batch), que eran un conjunto de instrucciones o comandos en lotes. Con el advenimiento de Windows 95/98/NT/Me/2000/XP, este tipo de archivos dejó de ser empleado y fue reemplazado por los Visual Basic Scripts.
Un Visual Basic Script es un conjunto de instrucciones lógicas, ordenadas secuencialmente para realizar una determinada acción al iniciar un sistema operativo, al hacer un Login en un Servidor de Red, o al ejecutar una aplicación, almacenadas bajo un nombre de archivo y extensión adecuada.
Los Scripts pueden ser interpretados y ejecutados por el Sistema Operativo Windows, Novell, etc. o por una aplicación mIRC, pIRC, AutoCad, etc.
Los virus pueden ser desarrollados en cualquier lenguaje y tener determinados objetivos de daño y algunos simplemente usan las instrucciones Visual Basic Scripts, como medios de propagación. Asimismo, un VBS puede contener instrucciones que afecten a los sistemas. También es posible editar instrucciones en la Libreta de Notas (NotePad) y guardar el archivo con la extensión .VBS.
Actualmente existen 2 medios de mayor difusión de virus en VBS:
1. Infección de canales IRC (el chat convoca a una enorme cantidad de "victimas")
El IRC (Internet Relay Chat) es un protocolo desarrollado para permitir la comunicación entre usuarios de Internet en "tiempo real', haciendo uso de software especiales, llamados "clientes IRC" (tales como el mIRC, pIRCh, Microsoft Chat).
Mediante un software de chat, el usuario puede conectarse a uno o mas canales IRC, pero es necesario que primero se conecte a un servidor chat, el cual a su vez, está conectado a otros servidores similares, los cuales conforman una red IRC. Los programas "clientes IRC" facilitan al usuario las operaciones de conexión, haciendo uso del comando /JOIN, para poder conectarse a uno o mas canales.
Las conversaciones pueden ser públicas (todo el canal visualiza lo que el usuario digita) o privadas (comunicación entre 2 personas).
Para "cargar" una sesión de chat los usuarios deben registrarse en un servidor chat, elegir un canal y un apodo (nickname). Todo esto se hace mediante un denominado "bachero", que emplea comandos propios del protocolo IRC, permitiendo ejecutar estas operaciones de manera intuitiva y proporcionando al usuario un entorno grafico amigable.
Como atacan los gusanos (VBS/Worms)
Todos los gusanos del Chat, siguen el mismo principio de infección. Usando el comando SEND file, envían automáticamente una copia del SCRIPT.INI a todas las personas conectadas al canal chat, además de otras instrucciones dentro de un Visual Basic Script. Este script que contiene el código viral sobre-escribe al original, en el sistema remoto del usuario, logrando infectarlo, así como a todos los usuarios conectados a la vez, en ese mismo canal.
Este tipo de propagación de archivos infectados, se debe a la vulnerabilidad de las versiones de mIRC anteriores a la 5.31 y todas las versiones de PIRCH, antes de PIRCH98.
2. Re-envío de mensajes de la libreta de direcciones Microsoft Outlook.
Office 95/97/2000/XP, respectivamente, integran sus programas MS Word, Excel, Outlook y Power Point, haciendo uso del lenguaje Visual Basic for Aplications, que permiten invocar la ejecución de determinadas instrucciones. En MS Word y Excel, el usuario tiene acceso a un Editor de Visual Basic. Aunque también pueden editar instrucciones y comandos con el NotePad y archivarlo con la extensión .VBS
Virus como el W97M/Melissa o el VBS/Loveletter, al ser escritos en Visual Basic for Aplications, tienen un fácil y poderoso acceso a los recursos de otros usuarios de MS Office. El mas afectado es la libreta de direcciones de MS Outlook, el cual es controlado por las instrucciones del VBS y recibe la orden de re-enviar el mensaje con el archivo anexado, en formato VBS, a todos los nombres de la libreta de direcciones del sistema de usuario infectado.
Estas infecciones también se reproducen entre todos los usuarios de una red, una vez que uno de sus usuarios ha sido infectado.
Los applets de JAVA y los controles Active X, son unos lenguajes nuevos orientados a Internet, pero las nuevas tecnologías abren un mundo nuevo a explotar por los creadores de virus.
De momento no son muy utilizados pero a partir del 2000, superaran en numero a los virus de macro.
ACTIVE X vs JAVA
¿Cuales son los síntomas mas comunes cuando tenemos un virus?
- Reducción del espacio libre en la memoria o disco duro. Un virus, cuando entra en un ordenador, debe situarse obligatoriamente en la memoria RAM , y por ello ocupa una porción de ella. Por tanto, el tamaño útil operativo de la memoria se reduce en la misma cuantía que tiene el código del virus.
- Aparición de mensajes de error no comunes.
- Fallos en la ejecución de programas.
- Frecuentes caídas del sistema
- Tiempos de carga mayores.
- Las operaciones rutinarias se realizan con mas lentitud.
- Aparición de programas residentes en memoria desconocidos.
- Actividad y comportamientos inusuales de la pantalla. Muchos de los virus eligen el sistema de vídeo para notificar al usuario su presencia en el ordenador. Cualquier desajuste de la pantalla, o de los caracteres de esta nos puede notificar la presencia de un virus.
- El disco duro aparece con sectores en mal estado Algunos virus usan sectores del disco para camuflarse, lo que hace que aparezcan como dañados o inoperativos.
- Cambios en las características de los ficheros ejecutables Casi todos los virus de fichero, aumentan el tamaño de un fichero ejecutable cuando lo infectan. También puede pasar, si el virus no ha sido programado por un experto, que cambien la fecha del fichero a la fecha de infección.
- Aparición de anomalías en el teclado Existen algunos virus que definen ciertas teclas que al ser pulsadas, realizan acciones perniciosas en el ordenador. También suele ser común el cambio de la configuración de las teclas, por la del país donde se programo el virus.
Detallamos las técnicas mas utilizadas por los virus para ocultarse, reproducirse y camuflarse de los antivirus.
OCULTACIÓNMecanismos de Stealth Éste es el nombre genérico con el que se conoce a las técnicas de ocultar un virus. Varios son los grados de stealth, y en ellos se engloban argucias tan diversas como la originalidad y nivel del autor permiten. A un nivel básico basta saber que en general capturan determinadas interrupciones del PC para ocultar la presencia de un virus, como mantener la fecha original del archivo, evitar que se muestren los errores de escritura cuando el virus escribe en discos protegidos, restar el tamaño del virus a los archivos infectados cuando se hace un DIR o modificar directamente la FAT, etc.
- Mantener la fecha original del archivo
- Restaura el tamaño original de los archivos infectados
- Modifica directamente la FAT
- Modifican la tabla de Vectores de Interrupcion
- Se instalan en los buffers del DOS
- Soportan la reinicializacion del sistema por teclado
- Se instalan por encima de los 649 KB normales del DOS
- Evita que se muestren mensajes de error, cuando el virus intenta escriir sobre discos protegidos.
Técnicas de stealth avanzadas pretenden incluso hacer invisible al virus frente a un antivirus. En esta categoría encontramos los virus que modifican la tabla de vectores de interrupción (IVT), los que se instalan en alguno de los buffers de DOS, los que se instalan por encima de los 640KB e incluso los hay que soportan la reinicialización del sistema por teclado.
Esta técnica muy utilizada, consigue que el virus se encripte de manera diferente cada vez que se infecta el fichero, para intentar pasar desapercibido ante los antivirus PROTECCIÓN ANTIVIRUSAnti-debuggers
Un debugger es un programa que permite descompilar programas ejecutables y mostrar parte de su código en lenguaje original.
Los virus usan técnicas para evitar ser desensamblados y así impedir su análisis para la fabricación del antivirus correspondiente.Armouring
Mediante esta técnica el virus impide que se examinen los archivos que él mismo ha infectado. Para conocer más datos sobre cada uno de ellos, éstos deben ser abiertos (para su estudio) como ficheros que son, utilizando programas especiales (Debuger) que permiten descubrir cada una de las líneas del código (lenguaje de programación en el que están escritos). Pues bien, en un virus que utilice la técnica de Armouring no se podrá leer el código.
CAMUFLAJE
Mecanismos Polimorficos Es una técnica para impedir ser detectados, es la de variar el método de encriptación de copia en copia. Esto obliga a los antivirus a usar técnicas heurísticas ya que como el virus cambia en cada infección es imposible localizarlo buscándolo por cadenas de código. Esto se consigue utilizando un algoritmo de encriptación que pone las cosas muy difíciles a los antivirus. No obstante no se puede codificar todo el código del virus, siempre debe quedar una parte sin mutar que toma el control y esa es la parte más vulnerable al antivirus.
La forma más utilizada para la codificación es la operación lógica XOR. Esto es debido que esta operación es reversible:
2 XOR 5 = 3 3 XOR 2 = 5
En este caso la clave es el número 9, pero utilizando una clave distinta en cada infección se obtiene una codificación también distinta.
Otra forma también muy utilizada consiste en sumar un numero fijo a cada byte del código vírico.
EVASIÓNTécnica de Tunneling
Con esta técnica, intentar burlar los módulos residentes de los antivirus mediante punteros directos a los vectores de interrupción.
Requiere una programación compleja, hay que colocar el procesador en modo paso a paso. En este modo de funcionamiento, tras ejecutarse cada instrucción se produce la interrupción 1.
Se coloca una ISR (Interrupt Service Routine) para dicha interrupción y se ejecutan instrucciones comprobando cada vez si se ha llegado a donde se quería hasta recorrer toda la cadena de ISRs que halla colocando el parche al final de la cadena. RESIDENTESTSR
Los virus utilizan esta técnica para permanecer residente en memoria y así mantener el control sobre todas las actividades del sistema y contaminar todo lo que encuentren a su paso.
El virus permanece en memoria mientras el ordenador permanezca encendido.
Por eso una de las primeras cosas que hace al llegar a la memoria es contaminar los ficheros de arranque del sistema para asegurarse de que cuando se vuelva a arrancar el ordenador volverá a ser cargado en memoria.
Mathielle Plourde Castillo