VIRUS Y ANTIVIRUS
INFORMÁTICO
LOS VIRUS
Los Virus informáticos son programas de ordenador que se
reproducen a sí mismos e interfieren con el hardware de una computadora o con
su sistema operativo (el software básico que controla la computadora). Los
virus están diseñados para reproducirse y evitar su detección. Como cualquier
otro programa informático, un virus debe ser ejecutado para que funcione: es
decir, el ordenador debe cargar el virus desde la memoria del ordenador y
seguir sus instrucciones. Estas instrucciones se conocen como carga activa del
virus. La carga activa puede trastornar o modificar archivos de datos,
presentar un determinado mensaje o provocar fallos en el sistema operativo.
Existen otros programas informáticos nocivos similares a los
virus, pero que no cumplen ambos requisitos de reproducirse y eludir su
detección. Estos programas se dividen en tres categorías: Caballos de Troya,
bombas lógicas y gusanos. Un caballo de Troya aparenta ser algo interesante e
inocuo, por ejemplo un juego, pero cuando se ejecuta puede tener efectos
dañinos. 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. Un gusano se limita a reproducirse, pero
puede ocupar memoria de la computadora y hacer que sus procesos vayan más
lentos.
Algunas de las características de estos agentes víricos:
SON PROGRAMAS DE COMPUTADORA: En informática programa es sinónimo de Software, es decir el
conjunto de instrucciones que ejecuta un ordenador o computadora.
ES DAÑINO: Un virus informático siempre causa
daños en el sistema que infecta, pero vale aclarar que el hacer daño no
significa que vaya a romper algo. El daño puede ser implícito cuando lo que se busca
es destruir o alterar información o pueden ser situaciones con efectos
negativos para la computadora, como consumo de memoria principal, tiempo de
procesador.
ES AUTO REPRODUCTOR: La característica más
importante de este tipo de programas es la de crear copias de sí mismos, cosa
que ningún otro programa convencional hace. Imaginemos que si todos tuvieran
esta capacidad podríamos instalar un procesador de textos y un par de días más
tarde tendríamos tres de ellos o más.
ES SUBREPTICIO: Esto significa que
utilizará varias técnicas para evitar que el usuario se dé cuenta de su
presencia. La primera medida es tener un tamaño reducido para poder disimularse
a primera vista. Puede llegar a manipular el resultado de una petición al
sistema operativo de mostrar el tamaño del archivo e incluso todos sus
atributos.
Las acciones de los virus son diversas, y en su mayoría
inofensivas, aunque algunas pueden provocar efectos molestos y, en ciertos,
casos un grave daño sobre la información, incluyendo pérdidas de datos. Hay
virus que ni siquiera están diseñados para activarse, por lo que sólo ocupan
espacio en disco, o en la memoria. Sin embargo, es recomendable y posible
evitarlos.
ESTRATEGIAS
DE INFECCIÓN USADAS POR LOS VIRUS
AÑADIDURA O EMPALME: El código del virus se agrega al final
del archivo a infectar, modificando las estructuras de arranque del archivo de
manera que el control del programa pase por el virus antes de ejecutar el
archivo. Esto permite que el virus ejecute sus tareas específicas y luego
entregue el control al programa. Esto genera un incremento en el tamaño del
archivo lo que permite su fácil detección.
INSERCIÓN: El código del virus se aloja en zonas de código no
utilizadas o en segmentos de datos para que el tamaño del archivo no varíe.
Para esto se requieren técnicas muy avanzadas de programación, por lo que no es
muy utilizado este método.
REORIENTACIÓN: Es una variante del anterior. Se
introduce el código principal del virus en zonas físicas del disco rígido que
se marcan como defectuosas y en los archivos se implantan pequeños trozos de
código que llaman al código principal al ejecutarse el archivo. La principal
ventaja es que al no importar el tamaño del archivo el cuerpo del virus puede
ser bastante importante y poseer mucha funcionalidad. Su eliminación es
bastante sencilla, ya que basta con reescribir los sectores marcados como
defectuosos.
POLIMORFISMO: Este es el método más avanzado de
contagio. La técnica consiste en insertar el código del virus en un archivo
ejecutable, pero para evitar el aumento de tamaño del archivo infectado, el
virus compacta parte de su código y del código del archivo anfitrión, de manera
que la suma de ambos sea igual al tamaño original del archivo. Al ejecutarse el
programa infectado, actúa primero el código del virus des compactando en
memoria las porciones necesarias. Una variante de esta técnica permite usar
métodos de encriptación dinámicos para evitar ser detectados por los antivirus.
SUSTITUCIÓN: Es el método más tosco. Consiste en sustituir el
código original del archivo por el del virus. Al ejecutar el archivo deseado,
lo único que se ejecuta es el virus, para disimular este proceder reporta algún
tipo de error con el archivo de forma que creamos que el problema es del
archivo.
VIRUS POR SUS ACCIONES O MODOS DE ACTIVACIÓN
BOMBAS: Se denomina así a los virus que ejecutan su acción dañina
como si fuesen una bomba. Esto significa que se activan segundos después de
verse el sistema infectado o después de un cierto tiempo (bombas de tiempo) o
al comprobarse cierto tipo de condición lógica del equipo (bombas lógicas).
Ejemplos de bombas de tiempo son los virus que se activan en una determinada
fecha u hora determinada. Ejemplos de bombas lógicas son los virus que se
activan cuando al disco rígido solo le queda el 10% sin uso, etc.
RETRO VIRUS: Son los virus que atacan directamente al antivirus que está
en la computadora. Generalmente lo que hace es que busca las tablas de las
definiciones de virus del antivirus y las destruye.
VIRUS LENTOS: Los virus de tipo lento hacen
honor a su nombre infectando solamente los archivos que el usuario hace
ejecutar por el sistema operativo, 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.
VIRUS VORACES: Alteran el contenido de
los archivos indiscriminadamente. Este tipo de virus lo que hace es que cambia
el archivo ejecutable por su propio archivo. Se dedican a destruir
completamente los datos que estén a su alcance.
SIGILOSOS O STEALTH: Este virus cuenta con un
módulo de defensa sofisticado. Trabaja a la par con el sistema operativo viendo
como este hace las cosas y tapando y ocultando todo lo que va editando a su
paso. Trabaja en el sector de arranque de la computadora y engaña al sistema
operativo haciéndole creer que los archivos infectados que se le verifica el
tamaño de bytes no han sufrido ningún aumento en tamaño.
POLIMORFOS O MUTANTES: Encripta todas sus
instrucciones para que no pueda ser detectado fácilmente. Solamente deja sin
encriptar aquellas instrucciones necesarias para ejecutar el virus. Este virus
cada vez que contagia algo cambia de forma para hacer de las suyas libremente.
Los antivirus normales hay veces que no detectan este tipo de virus y hay que
crear programas específicamente (como son las vacunas) para erradicar dichos
virus.
CAMALEONES: Son una variedad de virus similares a
los caballos de Troya que actúan como otros programas parecidos, 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 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.
REPRODUCTORES: Los reproductores (también
conocidos como conejos-rabbits) se reproducen en forma constante una vez que
son ejecutados hasta agotar totalmente (con su descendencia) el espacio de
disco o memoria del sistema.
La única función de este tipo de virus es crear clones y
lanzarlos a ejecutar para que ellos hagan lo mismo. El propósito es agotar los
recursos del sistema, especialmente en un entorno multiusuario interconectado,
hasta el punto que el sistema principal no puede continuar con el procesamiento
normal.
GUSANOS (WORMS): Los gusanos son programas
que constantemente viajan a través de un sistema informático interconectado, de
computadora en computadora, sin dañar necesariamente el hardware o el software
de los sistemas que visitan. La función principal es viajar en secreto a través
de equipos anfitriones recopilando cierto tipo de información programada (tal
como los archivos de passwords) para enviarla a un equipo determinado al cual
el creador del virus tiene acceso. Más allá de los problemas de espacio o tiempo
que puedan generar, los gusanos no están diseñados para perpetrar daños graves.
BACKDOORS: Son también conocidos como
herramientas de administración remotas ocultas. Son programas que permiten controlar remotamente la computadora infectada. Generalmente son distribuidos como
troyanos.
Cuando un virus de estos es ejecutado, se instala dentro del
sistema operativo, al cual monitorea sin ningún tipo de mensaje o consulta al
usuario. Incluso no se lo ve en la lista de programas activos. Los Backdoors
permiten al autor tomar total control de la computadora infectada y de esta
forma enviar, recibir archivos, borrar o modificarlos, mostrarle mensajes al
usuario, etc.
"VIRUS"
BUG-WARE: Son programas que en realidad no fueron pensados para ser
virus, sino para realizar funciones concretas dentro del sistema, pero debido a
una deficiente comprobación de errores por parte del programador, o por una
programación confusa que ha tornado desordenado al código final, provocan daños
al hardware o al software del sistema. Los usuarios finales, tienden a creer
que los daños producidos en sus sistemas son producto de la actividad de algún
virus, cuando en realidad son producidos por estos programas defectuosos. Los
programas bug-ware no son en absoluto virus informáticos, sino fragmentos de
código mal implementado, que debido a fallos lógicos, dañan el hardware o
inutilizan los datos del computador. En realidad son programas con errores,
pero funcionalmente el resultado es semejante al de los virus.VIRUS DE MIRC: Al igual que los bug-ware y los mail-bombers, no son considerados virus. Son una nueva generación de programas que infectan las computadoras, aprovechando las ventajas proporcionadas por Internet y los millones de usuarios conectados a cualquier canal IRC a través del programa Mirc y otros programas de chat. Consisten en un script para el cliente del programa de chateo. Cuando se accede a un canal de IRC, se recibe por DCC un archivo llamado "script.ini". Por defecto, el subdirectorio donde se descargan los archivos es el mismo donde está instalado el programa, esto causa que el "script.ini" original se sobre escriba con el "script.ini" maligno. Los autores de ese script acceden de ese modo a información privada de la computadora, como el archivo de claves, y pueden remotamente desconectar al usuario del canal IRC.
VIRUS FALSOS (HOAX): Un último grupo, que decididamente no puede ser considerado virus. Se trata de las cadenas de e-mails que generalmente anuncian la amenaza de algún virus "peligrosísimo" (que nunca existe, por supuesto) y que por temor, o con la intención de prevenir a otros, se envían y re-envían incesantemente. Esto produce un estado de pánico sin sentido y genera un molesto tráfico de información innecesaria.
¿CÓMO SABER SI TENEMOS UN VIRUS?
La mejor forma de detectar un virus es, obviamente con un antivirus, pero en ocasiones los antivirus pueden fallar en la detección. Puede ser que no detectemos nada y aún seguir con problemas. En esos casos "difíciles", entramos en terreno delicado y ya es conveniente la presencia de un técnico programador. Muchas veces las fallas atribuidas a virus son en realidad fallas de hardware y es muy importante que la persona que verifique el equipo tenga profundos conocimientos de arquitectura de equipos, software, virus, placas de hardware, conflictos de hardware, conflictos de programas entre sí y bugs o fallas conocidas de los programas o por lo menos de los programas más importantes. Las modificaciones del Setup, cambios de configuración de Windows, actualización de drivers, fallas de RAM, instalaciones abortadas, rutinas de programas con errores y aún oscilaciones en la línea de alimentación del equipo pueden generar errores y algunos de estos síntomas. Todos esos aspectos deben ser analizados y descartados para llegar a la conclusión que la falla proviene de un virus no detectado o un virus nuevo aún no incluido en las bases de datos de los antivirus más importantes.
Aquí se mencionan algunos de los síntomas posibles:
REDUCCIÓN DEL ESPACIO LIBRE EN LA MEMORIA RAM: Un virus, al entrar al sistema, se sitúa en la memoria RAM, ocupando una porción de ella. El tamaño útil y operativo de la memoria se reduce en la misma cuantía que tiene el código del virus. Siempre en el análisis de una posible infección es muy valioso contar con parámetros de comparación antes y después de la posible infección. Por razones prácticas casi nadie analiza detalladamente su computadora en condiciones normales y por ello casi nunca se cuentan con patrones antes de una infección, pero sí es posible analizar estos patrones al arrancar una computadora con la posible infección y analizar la memoria arrancando el sistema desde un disco libre de infección.
LAS OPERACIONES RUTINARIAS SE REALIZAN CON MÁS LENTITUD: obviamente los virus son programas, y como tales requieren de recursos del sistema para funcionar y su ejecución, más al ser repetitiva, llevan a un enlentecimiento global en las operaciones.
APARICIÓN DE PROGRAMAS RESIDENTES EN MEMORIA DESCONOCIDOS: El código viral, como ya dijimos, ocupa parte de la RAM y debe quedar "colgado" de la memoria para activarse cuando sea necesario. Esa porción de código que queda en RAM, se llama residente y con algún utilitario que analice la RAM puede ser descubierta. Aquí también es valioso comparar antes y después de la infección o arrancando desde un disco "limpio".
TIEMPOS DE CARGA MAYORES: Corresponde al enlentecimiento global del sistema, en el cual todas las operaciones se demoran más de lo habitual.
APARICIÓN DE MENSAJES DE ERROR NO COMUNES: En mayor o menor medida, todos los virus, al igual que programas residentes comunes, tienen una tendencia a "colisionar" con otras aplicaciones. Aplique aquí también el análisis pre / post-infección.
FALLOS EN LA EJECUCIÓN DE LOS PROGRAMAS: Programas que normalmente funcionaban bien, comienzan a fallar y generar errores durante la sesión.

