CONCEPTOS VIRICOS
Esta es una recopilación de los términos mas usados cuando intentemos seguir un curso de virus o cuando se hable de ellos etc...
Activación:
El "efecto" del virus. La mayoría de los virus de hecho no tienen ningún efecto, y se limitan a reproducirse (utilizando a veces técnicas de protección). 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 función del sistema, por el numero de infecciones, y un largo etcétera.
Anti-Debugging:
Un conjunto de pequeñas técnicas destinadas a dificultar al máximo posible el debugging de un virus (o un programa). No son infalibles, aunque pueden dar algún que otro dolor de cabeza al que se ponga a estudiar el virus. (también usadas en juegos y programas).
Anti-Dissasembly:
Un grupo de técnicas que tienen por objeto impedir que se desensamble el virus mediante el uso de algún desensamblador, incluyendo en aquel, código para "confundirlo". (también usadas en juegos y programas)
Background:
Se habla de background cuando un programa (o un virus), se esta ejecutando "paralelamente" al programa ejecutándose : 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 programa que es el encargado de Bootear (en discos de sistema) o del mensaje "Non-system disk or disk error" (en discos sin sistema). Además, si se trata de un disco duro, el primer sector del disco contiene una tabla de partición, que a su vez contiene los sectores en que se encuentran los boot sectors de cada una de las particiones del disco, además de otra información referente a ellas.
Bug:
Error en un programa, que produce que este funcione mal. También se aplica a los virus. (Un bug en un virus podría hacer, por ejemplo, que este infectara mal los EXEs y los destruyera, etc.)
Carrier:
Así 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 información de configuración (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. (También sirve para estudiar virus).
Directory Stealth:
Una técnica 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 semistealth)
Disinfect-On-The-Fly:
Una técnica 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 código fuente en base a un ejecutable.
Disparador:
Se llama disparador a la parte del código 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 algún medio (abierto, leído, 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 contraposición a Dir-Stealth. Un virus que implementa distintas técnicas para pasar desapercibido, técnicas mas avanzadas que el ocultamiento del size en el DIR.
Full Stealth:
Un virus en el cual las técnicas 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 montón 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 básico del tema.Header EXE:
Una estructura que se encuentra al principio de todos los EXE, y mediante la manipulación de la cual los virus son capaces de infectarlo. Contiene información 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 técnica 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 simultáneamente de Boot y de file. Suelen ser mas complejos que sus contrapartidos solo de file o solo de boot, y la interacción entre la parte de boot y la de file suele ser compleja, y dar mejores resultados en el funcionamiento del virus.
New Header EXE:
Ampliación del header de los EXE comunes en los EXE de Windows.
No-Residente:
(a)Un virus en el que el proceso de infección es llevado a cabo cuando el virus es corrido. Son menos efectivos que los residentes, y su funcionamiento impide realizar técnicas de stealth. (Aun así son considerados respetables, no como los overwriting, pues aun pueden tener un cierto grado de éxito en su dispersión).
Overwriting:
Un virus que al infectar destruye al programa infectado. Este tipo de virus no tiene mucha proyección, 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 técnica de ocultamiento que apunta a que sea imposible descubrir al virus mediante scanning, variando de tal forma el código de infección a infección que es imposible extraer una string. Esto se hace encriptando el código 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 ahí, queda en el background, hasta que es llamado a la superficie y allí infecta.
Root:
Directorio Raiz, el primer directorio
Sector:
Uno de los "pedazos" en que los discos estan divididos. Para el BIOS los sectores son "físicos" y se los referencia mediante 3 coordenadas; lado, pista, sector (lado 0, pista 0, sector 1, p.ej). El DOS utiliza sectores lógicos, 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 configuración del sistema (Por ejemplo la cantidad de sectores del disco rígido, o la fecha del sistema, etc.).
SFT:
System File Table. Una tabla con información referente a un file abierto. Se utiliza para todo tipo de propósitos en los virus, ya que la información que contiene es muy variada y muy valiosa.
Stealth:
Genéricamente, se llama stealth a un virus que utiliza alguna técnica para no ser notado. Existen varias de estas técnicas.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 rutinas de infección. Al hacer virus polimorficos, se trata justamente de que no exista una cadena común entre infección e infección.
Toolkit:
Una librería para incluir en un virus, y conferirle a este la potencia de alguna técnica avanzada como polimorfismo o tunneling. (Nótese que no existen ni podrán existir toolkits de stealth ya que este tipo de técnicas 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 técnica de protección, de tipo anti-anti-virus, que consiste básicamente 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 código ejecutable capaz de reproducirse a si mismo a través de sistemas y computadoras. Se los clasifica primariamente por el tipo de reproducción (Boot Sector, File, Cluster), y luego por la utilización de técnicas de ocultamiento y protección (Stealth, Polimorfico, etc.).
Virus de boot:
Un tipo de virus. Se reproduce poniéndose 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 últimamente 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 directorio del archivo. Solo existe UN virus de este tipo, el celebre Dir-2.