IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII o 11. CONCEPTOS VIRICOS o IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII Esta es una recopilacion de los terminos mas usados cuando intentemos seguir un curso de virus o cuando se hable de ellos etc... Activacion: El "efecto" del virus. La mayoria de los virus de hecho no tienen ^^^^^^^^^^^ ningun efecto, y se limitan a reproducirse (utilizando a veces tecnicas de proteccion). Este "efecto" puede ser destructivo, tonto, gracioso, o cualquier otra cosa. Puede dispararse por datos del sistema, como fecha u hora, por la llamada a una determinada funcion del sistema, por el numero de infecciones, y un largo etcetera. Anti-Debugging: Un conjunto de peque€as tecnicas destinadas a dificultar al ^^^^^^^^^^^^^^^ maximo posible el debugging de un virus (o un programa). No son infalibles, aunque pueden dar algun que otro dolor de cabeza al que se ponga a estudiar el virus. (tambien usadas en juegos y programas) Anti-Dissasembly: Un grupo de tecnicas que tienen por objeto impedir que se ^^^^^^^^^^^^^^^^^ desensamble el virus mediante el uso de algun desensamblador, incluyendo en aquel, codigo para "confundirlo". (tambien usadas en juegos y programas) Background: Se habla de background cuando un programa (o un virus), ^^^^^^^^^^^ se esta ejecutando "paralelamente" al programa ejecutandose : Por ejemplo al DOS. Boot Sector: El primer sector del disco. Contiene la BPB (Bios Parameter Block) ^^^^^^^^^^^^ una tabla referente al formato y tipo del disco, y un peque€o pro_ grama que es el encargado de Bootear (en discos de sistema) o del men_ saje "Non-system disk or disk error" (en discos sin sistema). Ademas, si se trata de un disco duro, el primer sector del disco contiene una tabla de particion, que a su vez contiene los sectores en que se encuentran los boot sectors de cada una de las particiones del disco, ademas de otra informacion referente a ellas. Bug: Error en un programa, que produce que este funcione mal. Tambien se ^^^^ aplica a los virus. (Un bug en un virus podria hacer, por ejemplo, que este infectara mal los EXEs y los destruyera, etc.) Carrier: Asi llamado el file ejecutable generado al ensamblar el source ^^^^^^^^ original de un virus. CMOS: Un tipo de memoria que sobrevive a los apagados de la maquina. Contiene ^^^^^ informacion de configuracion (ver Setup) como los tipos de disco, de monitor, etc. (Solo existe en ATs) Algunos virus (muy pocos) la cambian para invertir el orden de booteo (de A:;C: a C:;A:) e impedir que se bootee de un disco limpio. Debugger: Un programa para estudiar el funcionamiento de otros programas. ^^^^^^^^^ (Tambien sirve para estudiar virus). Directory Stealth: Una tecnica de ocultamiento que consiste en substraer el ^^^^^^^^^^^^^^^^^^ size del virus del size mostrado por el comando DIR de DOS. (A los virus que solo utilizan Dir-Stealth se los suele llamar semi_ stealth) Disinfect-On-The-Fly: Una tecnica de (file) stealth que consiste en ^^^^^^^^^^^^^^^^^^^^^ directamente desinfectar el file cuando se considera que este va a ser inspeccionado (por ejemplo cuando es abierto). Suele ir acompa€ada de Infection-On-Close (pues si no seria inefectivo). Disassembler: Programa para producir codigo fuente en base a un ejecutable. ^^^^^^^^^^^^^ Disparador: Se llama disparador a la parte del codigo del virus que se encarga ^^^^^^^^^^^ de evaluar si se cumplen o no las condiciones para que el virus se active. Fast Infector: Un tipo de virus que se distingue por la velocidad con la ^^^^^^^^^^^^^^ que se dispersa. Esto se logra infectando no solo cuando el file es corrido sino cada vez es accedido por algun medio (abierto, leido, etc.) FAT: File Allocation Table. El "mapa" mediante el cual el DOS mantiene ^^^^ registro de que clusters estan usados y a que file pertenecen, etc. File Stealth: En contraposicion a Dir-Stealth. Un virus que implementa ^^^^^^^^^^^^^ distintas tecnicas para pasar desapercibido, tecnicas mas avanza_ das que el ocultamiento del size en el DIR. Full Stealth: Un virus en el cual las tecnicas de stealth estan tan bien ^^^^^^^^^^^^^ implementadas e integradas que la existencia del virus pasa desapercibida cuando este esta activo en memoria. Se logra mediante la intercepcion de un monton de funciones del sistema, y hay stealth que son incluso indetectables a nivel de BIOS (via int 13h) Generador de virus: Un programa para hacer virus. Para utilizarlo solo se ^^^^^^^^^^^^^^^^^^^ necesita un conocimiento muy basico del tema. Header EXE: Una estructura que se encuentra al principio de todos los EXE, y ^^^^^^^^^^^ mediante la manipulacion de la cual los virus son capaces de infectarlo. Contiene informacion necesaria para correr el EXE. Hoste: (s) Programa parasitado por el virus, programa infectado. (Ver ^^^^^^ Overwriting y Parasitico) Infection-On-Close: Infectar al cerrar un archivo, en lugar de cuando este ^^^^^^^^^^^^^^^^^^^ es corrido. MCB: Memory Control Block. Una estructura de DOS para la alocacion de memoria, ^^^ que es manipulada por los virus para quedar residentes de una manera lo menos sospechosa posible. Los virus que utilizan esta tecnica para su alojamiento en memoria o bien disminuyen el size total reportado o bien son reconocibles por un ultimo bloque, perteneciente al "sistema" (en realidad del virus). Multipartito (o multiparticion): Un virus que es simultaneamente de Boot y de ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ file. Suelen ser mas complejos que sus contra_ partidos solo de file o solo de boot, y la interaccion entre la parte de boot y la de file suele ser compleja, y dar mejores resultados en el funcionamiento del virus. New Header EXE: Ampliacion del header de los EXE comunes en los EXE de ^^^^^^^^^^^^^^^ Windows. No-Residente: (a) Un virus en el que el proceso de infeccion es llevado ^^^^^^^^^^^^^ a cabo cuando el virus es corrido. Son menos efectivos que los residentes, y su funcionamiento impide realizar tecnicas de stealth. (Aun asi son considerados respetables, no como los overwriting, pues aun pueden tener un cierto grado de exito en su dispersion). Overwriting: Un virus que al infectar destruye al programa infectado. Este ^^^^^^^^^^^^ tipo de virus no tiene mucha proyeccion, y se lo considera muy primitivo. Parasitico: Un virus que conserva al programa infectado, para poder correrlo ^^^^^^^^^^^ luego como si no lo estuviera. Polimorfismo: Una tecnica de ocultamiento que apunta a que sea imposible ^^^^^^^^^^^^^ descubrir al virus mediante scanning, variando de tal forma el codigo de infeccion a infeccion que es imposible extraer una string. Esto se hace encriptando el codigo del virus y "variabilizando" la rutina de encripcion tanto como sea posible. Residente: (a) Un virus que, cuando es corrido, se carga en memoria y ^^^^^^^^^^ a partir de ahi, queda en el background, hasta que es llamado a la superficie y alli infecta. Root: Directorio Raiz, el primer directorio. ^^^^^ Sector: Uno de los "pedazos" en que los discos estan divididos. Para el BIOS ^^^^^^^ los sectores son "fisicos" y se los referencia mediante 3 coordenadas; lado, pista, sector (lado 0, pista 0, sector 1, p.ej). El DOS utiliza sectores logicos, que son referenciados mediante un numero. (Sector 0) Y existe la correspondencia (lado 0, pista 0, sector 1 == Sector 0). Setup: El famoso setup. Un programa cargado en la BIOS, desde donde se maneja ^^^^^^ la configuracion del sistema (Por ejemplo la cantidad de sectores del disco rigido, o la fecha del sistema, etc). SFT: System File Table. Una tabla con informacion referente a un file abierto. ^^^^ Se utiliza para todo tipo de propositos en los virus, ya que la informacion que contiene es muy variada y muy valiosa. Stealth: Genericamente, se llama stealth a un virus que utiliza alguna tecnica ^^^^^^^^ para no ser notado. Existen varias de estas tecnicas. String: Cadena que se utiliza para reconocer un file infectado. Es una PARTE ^^^^^^^ del virus, NO todo el virus. Generalmente se hacen strings de las ruti_ nas de infeccion. Al hacer virus polimorficos, se trata justamente de que no exista una cadena comun entre infeccion e infeccion. Toolkit: Una libreria para incluir en un virus, y conferirle a este la ^^^^^^^^ potencia de alguna tecnica avanzada como polimorfismo o tunneling. (Notese que no existen ni podran existir toolkits de stealth ya que este tipo de tecnicas estan muy ligadas al dise€o general del virus, y no pueden ser "aisladas" en un toolkit). Troyano: Programa especialmente hecho para causar da€o. Se los suele confundir ^^^^^^^^ con los virus, aunque no tienen NADA que ver, excepto el hecho de que los troyanos hacen da€o, y algunos virus hacen da€o. Tunneling: Una tecnica de proteccion, de tipo anti-anti-virus, que consiste ^^^^^^^^^^ basicamente en pasar "por debajo" de los antivirus residentes, que monitorean la actividad "rara". Se obtiene el address original de la int que se piensa puede estar monitoreada, y se usa este address para accederla. Virus: (s) Un codigo ejecutable capaz de reproducirse a si mismo a traves de ^^^^^^ sistemas y computadoras. Se los clasifica primariamente por el tipo de reproduccion (Boot Sector, File, Cluster), y luego por la utilizacion de tecnicas de ocultamiento y proteccion (Stealth, Polimorfico, etc). Virus de boot: Un tipo de virus. Se reproduce poniendose en el boot sector ^^^^^^^^^^^^^^ de los discos, y luego de haberse instalado en memoria, corre el boot sector original. Virus de file: Este tipo de virus se reproduce infectando los files del disco. ^^^^^^^^^^^^^^ Se dividen en infectores de COM, de SYS, y de EXE. (y ultimamen_ te de EXE de windows). Virus de cluster: Un tipo de virus relativamente nuevo y oscuro. Para infectar ^^^^^^^^^^^^^^^^^ no modifica el file, sino sencillamente la entrada de direc_ torio del archivo. Solo existe UN virus de este tipo, el celebre Dir-2. Bithunter