Virus informatico

Los virus informaticos son programas de computadora capaces de infectar otros programas, modificandolos para incluir una copia posiblemente evolucionada de si mismos.

Usualmente su codigo de programacion esta concebido de manera tal de afectar otros programas, y eventualmente disparar determinadas acciones entendidas como contrarias a los intereses operativos de terceros usuarios.

Se los llama asi en base a los virus biologicos, ya que alteran el funcionamiento de un huesped para su propagacion.

Desde el punto de vista tecnico, se trata de un trozo de codigo de programacion ingeniado para proveerle - usualmente de forma subrepticia - capacidades autorreplicantes y de vectorizacion.

Historia

El primer mecanismo de programacion con capacidad autorreplicante exponencial se denomino COREWARS, y se realizo con fines de investigacion durante el llamado Proyecto DARWIN de finales de la decada de 1950. El sentido de este conjunto de aplicaciones era evaluar el desarrollo del sistema de archivo para computo de tiempo compartido, el CTSS, mediante el uso rutinas de irrupcion en la memoria de la maquina que provocaran molestias (luego con un sentido ludico casual).

Para 1971 se utilizaban guiones de programacion que producian la transmision de los primeros gusanos informaticos en la ArpaNET (el CREEPER y su anticuerpo REAPER). A principios de la decada de 1980, los desarrolladores en Xerox PARC experimentaron con gisanos, disenados para transmitirse de maquina en maquina para realizar tareas administrativas utiles.

Originalmente la inyeccion de estos codigos de programacion debia realizarse manualmente, pero el advenimiento y masificacion del computo personal y sus sistema operativos compatibles hizo explotar la creacion de virus informaticos novedosos. Sus creador@s compartian cierto sentido de investigacion, aunque algun@s comenzaron a preparar variantes que constituian amenazas a la seguridad informatica.

Para principios de la decada de 1980 el metodo recurrente solia ser provocar la infeccion vectorizando los medios de almacenamiento portatiles, los discos flexibles. Para mediados de la decada de 1990 el foco cambio decididamente al vector telematico, gracias al uso de ingenieria social sobre los servicios de la red de datos internet.

Para inicios de la decada de 2000, con el computo comercial firmemente establecido, los virus Macro se difundieron enormemente.

Viralizacion

Explica la metodologia de diseno que hacen a los multiples mecanismos de funcionamiento para su propagacion.

Gusano

Un gusano informatico, consiste en un programa de software autocontenido capaz de transmitirse entre maquinas de en un ambiente de computo distribuido sin necesidad de contar con un programa huesped.

Los gusanos requieren para su funcionamiento un ambiente de computo cooperativo, pues como mecanismo transmision suelen hacer uso de caracteristicas y recursos del mismo, o bien explotan fallas o recurren a mecanismos de llana ingenieria social.

Si bien los gusanos disenados insidiosamente son capaces de saturar redes de datos (por ejemplo, RTM Worm obligo ya en 1988 a desactivar temporalmente Internet), originalmente se disenaban para "autoeliminar" su copia origen conforme una unica copia destino se verificaba trasladada a otro huesped en la red de datos.

Los servicios de redes de datos como la transferencia de ficheros, el correo electronico, y chat facilitaron la propagacion, asi como la velocidad de su vectorizacion subrepticia.

Virus

A diferencia del gusano, el virus no es autocontenido, lo que permite un funcionamiento menos complejo.

El modelo clasico descripto como virus informatico describe un codigo de programacion que debe cargarse en memoria para operar. Sin embargo, el mecanismo mas extendido toma la forma de un programa compilado para su ejecucion en una arquitectura de computo determinada, denominado cepa objeto. Esto implica que no puede ejecutarse independientemente, pues requiere que su "huesped" sea ejecutado para activarse.

La cepa objeto se ejecuta en un sistema compatible, lo que dispara la carga del codigo en memoria. En los casos bastante extendidos en los cuales la cepa objeto ofusca su origen para infectar subrepticiamente por medio de ingenieria social, se lo denomina "Caballo de Troya".

Una vez alojado en memoria, el microprograma es capaz de generar copias iguales o semejantes de si mismo en memoria o en otro codigo hospedado (idealmente otros ficheros ejecutables).

Estos programas modificados - si bien idealmente deberian conservar la posibilidad de realizar sus propias tareas predefinidas - son capaces tambien de redistribuir la carga viral subrepticiamente ("viralizacion por contagio"). Asi corruptos, estos programas podrian buscar otros para continuar replicando generacionalmente la infeccion, o bien llevar a cabo diferentes rutinas predeterminadas de accion ("accion infecciosa").

Los virus y gusanos pueden combatirse mediante software antivirus capaz de realizar busqueda de las firmas de los virus (la enorme mayoria de las veces publicadas por sus propios creador@s), o bien trazando analisis heuristicos con una base de datos de amenazas conocidas.

Vector Infeccioso

Una vez copiadas las rutinas virales en la memoria, estas definen un mecanismo de replica y ejecucion para el programa (equivalen asi a un pseudomecanismo biologico concebido para propiciar su descendencia).

  • Infector de sector de arranque: Mecanimso que consignan alojar una copia completa o parcial del codigo en el sector de arranque o en la Tabla Principal de Arranque sita en los medios de almacenamiento de masa de una computadora (disco rigido o diskettes). Esto les permite alojarse en memoria antes que el sistema operativo en si. De esta manera es posible tornar un medio de almacenamiento en vector de transmision entre maquinas compatibles.
  • Infector de interprete de comandos: Se encarga de tomar el control del interprete de comandos. De esta forma torna al sistema operativo en si como transmisor entre programas compatibles.
  • Infector Furtivo: Utiliza distintas tecnicas (segmentacion de memoria, compresion, alteracion de atributos) para ofuscar su existencia e incrementar su resistencia a ciertas formas de analisis antiviral.
  • Infector Polimorfico: Introduce alteraciones pseudoaleatorias con cada generacion de contegio, tendientes a ofuscar su presencia e intentar asegurar su supervivencia frente a software de analisis antiviral.

Los virus mas complejos de MS-DOS estaban representados por cepas capaces de seguir el tren infeccioso sector de arranque - interprete de comandos COMMAND.COM - Polimorfismo.

  • Virus Macro: Se trata de virus escritos en un lenguaje de macros. Estan pensados para infectar un sistema de computo a traves del uso de acciones llevadas a cabo con las herramientas integradas en aplicaciones de oficina.

Cabeza de Guerra

Consisten en las rutinas de programacion que delimitan la accion del virus sobre el sistema de computo.

Si bien todo programa consume recursos, y un software no deseado contituye una noxa, segun la carga viral programado podriamos distinguir varias capacidades, entre ellas:

  • Bomba Logica: Ejecutan su carga viral ante sucesos predeterminados en el sistema.
  • Bomba de Tiempo: Disparan eventos de accion viral en momento determinados (de acuerdo al reloj del sistema).
  • Vibrion: Gusano autorreplicante exponencial.

Estas pueden variar de acuerdo al efecto, en inertes, destructivas o doble efecto.

Ojiva de Efecto Inerte

Apela a mecanismos destinados a advertir la presencia y creacion, con un sentido bromista, jocoso, molesto. En el mejor de los casos puede apelar a accion autolimpiante.

Cepa objeto del Virus Gisela 2.0 para MS-DOS, de tipo Bomba de Tiempo Logica, con Cabeza de Guerra Inerte.

Ojiva Efecto Destructivo

Apela a mecanismos maliciosos destinados a la inutilizacion o borrado de datos de usuario.

  • Corruptor: Produce alteraciones minimas y eventualmente progresivas encargadas de destruir informacion almacenada.
  • Destructor de Tabla de Alocacion: Borra la tabla de arranque del sistema e inutiliza su sistema de archivo.
  • Formateador: Elimina una particion de disco con alevosia.
  • Criptovirus: modus operandi criminal tendiente a encriptar informacion ajena para solicitar rescate ("ransomware").

Ojiva de Doble Efecto

Puede contar con accion de advertencia o aterrorizante, y posteriormente accionar una rutina destructiva.