sábado, 11 de mayo de 2013

Virus en Unix

La mayoría de los virus que conocemos son para DOS. Pero ¿que pasa con otros sistemas operativos como el UNIX?


A menudo, trato con sistemas en DOS que han sido atacados por virus informáticos. En estos casos es muy común escuchar frases del tipo "Vamos a migrar a plataforma Unix para que esto no vuelva a suceder" o "Si hubiéramos optado por el sistema operativo Unix esto no hubiera sucedido". Es común creer que no existen virus o troyanos en el Sistema Operativo Unix, pero ¿Cuánto hay de verdad en esta afirmación? Eso es lo que vamos a tratar de desentrañar en este artículo.

Introducción

Para quienes no conocen mucho del sistema operativo Unix, podemos introducirlos en el tema señalando que Unix se ha transformado en el sistema operativo estándar para ambientes multiusuarios y heterogéneos debido a su flexibilidad en comunicaciones, portabilidad a diferentes arquitecturas y capacidad de integración. Si bien el Unix nació hace unos unos 20 años con propósitos educacionales y de ingeniería, la demanda de las empresas de soluciones independientes de los proveedores propiciaron el advenimiento del Unix al área comercial y el auge de los "sistemas abiertos". El Unix se extendió sobre todo en empresas medianas que necesitaban sistemas multiusuarios y no tenían la posibilidad de adquirir un mainframe.

Estructura de los archivos Unix

Contrariamente a lo que comunmente se cree, la estructura de los programas ejecutables en los sistemas Unix los hacen susceptibles a ser atacados por virus informáticos. Los archivos ejecutables de Unix tienen tres secciones que los virus pueden atacar: el header (cabecera), el segmento de texto y el segmento de datos. De hecho los virus pueden "colarse" en Unix por su característica de requerir paginación.

El requerimiento de paginación se usa en la mayoría de los sistemas Unix, y es sencillamente el requerimiento que los programas ejecutables se ajusten a algún múltiplo del tamaño de la página, generalmente 1024 bytes. Para que un archivo sea múltiplo de 1024, se le agregan nulos al final del segmento de texto. Ese es el lugar donde un virus puede insertarse muy fácilmente. Además si un virus se copia en esta zona, el tamaño del archivo permanecerá inalterado.

Queda claro también que el espacio al que se deben limitar estos virus es muy pequeño, lo que requiere virus muy compactos.

Esta es tan solo una camino para crear virus en Unix, es probable que existan muchos más, vamos a ver otro.

Otra potencial amenaza

Si bien antiguamente los ejecutables de Unix contenían todo el código e inicializaban los datos por proceso, las nuevas versiones agregan una posibilidad distinta llamada "Bibliotecas Compartidas".

Estas "bibliotecas compartidas" funcionan así. El Unix guarda un índice de las rutinas que el programa utiliza, y las carga a medida que este las necesita, y esta biblioteca puede ser utilizada por distintos programas. Si bien esta nueva característica reporta muchas ventajas como evitar la redundancia en disco, lleva a ejecutables mas chicos y reduce el swapeo a disco; también ofrece una muy buena oportunidad para los creadores de virus. Aunque todavía no existe aún ningún virus que aproveche esta característica, las "bibliotecas compartidas" darían la posibilidad de infectar el ambiente Unix sin necesidad de atacar a cada archivo en particular.

Con solo colocar código corrupto en una biblioteca compartida, dicha biblioteca activará el virus cada vez que esta sea cargada en los diferentes programas.

Algunos ejemplos

Queda claro que la supuesta inviolabilidad del Unix a los virus informáticos es solo un mito. De hecho han existido ataques de virus, troyanos y gusanos a sistemas Unix, vamos a ver algunos de los más famosos:

Virus AT&T:

En 1988 Tomm Duff, un investigador de los laboratorios de AT&T Bell experimentó de que formas un virus podía atacar el sistema operativo Unix. Duff colocó una copia de un virus benigno en un programa llamado echo. Este programa fue colocado en un directorio binario con acceso a escritura a todos los usuarios. El virus ocupaba 634 bytes y corría en cualquier versión de Unix y en cualquier modelo de computadora. En una semana, 466 programas, en 46 máquinas ya estaban infectados. A sus supervisores no le gustó su investigación y el experimento finalizó.

El virus enviaba un mail señalando que había creado un agujero en la seguridad, ya que el efecto del virus era otorgar los atributos de super-usuario a todos los que corrieran el programa. (1)

Virus Shell Script:

Este virus fue creado por Doug McIlroy, un compañero de trabajo de Tomm Duff. Es un script del shell de sólo seis líneas, que cuando se ejecuta busca otros scripts de shell y se agrega a ellos.

Gusano de Internet:

Mal llamado virus de Internet fue detectado en Noviembre de 1988. Compuesto por unas 3200 líneas de código en lenguaje C atacó cerca de 6.000 sistemas Unix en Estados Unidos y otros lugares del mundo. Existe abundante información sobre el gusano de Internet, y su explicación en detalle requeriría un artículo en si mismo. De todas formas podemos decir que los bugs utilizados por este gusano en el servicio de mail ya fueron corregidos, por lo que la versión original ya no funciona.(2)

Virus VMAGIC

Este es el virus de Unix mas recientemente detectado que yo tenga noticia. Fue detectado en Julio de 1993 y es un infector de archivos COFF. El tamaño del virus es de 798 bytes. Corre en todos los modelos de computadora, aunque debería modificarse el fuente para que corra correctamente en máquinas con procesadores Intel. Este virus corre solo en un host, y no se copia a si mismo en redes. (3)

Conclusiones

Considero que el sistema operativo Unix es a todas las luces mucho mas seguro que el sistema operativo DOS. Su estructura jerárquica, y el escaso tráfico de ejecutables sin duda dificulta proliferación de ataques de virus informáticos, pero no es un sistema imbatible en aspectos de seguridad. A tal punto que algunas empresas se han dedicado a crear toolkits de seguridad específicos para este sistema operativo. La abismal diferencia en cantidad de virus informáticos, troyanos, gusanos, etc. existentes entre ambos ambientes se debe mucho más a que la mayoría de los creadores de virus conocen mucho mejor el ambiente DOS. Estoy seguro que, en la medida en que los sistemas Unix se hagan más accesibles a una cantidad mayor de usuarios, veremos aparecer más y más virus informáticos sobre plataforma Unix.

Notas:

(1) Tom Duff expuso sobre el mecanismo que había utilizado en la conferencia USENIX en 1989, y se han publicado algunos artículos sobre este tema en la revista Computing System (Primavera de 1989)

(2) Si se desea obtener más información sobre el gusano de Internet pueden consultarse la siguiente bibliografía: "The Internet Worm Program: An Analysis", por Eugene H. Spafford, Purdue Technical Report, Noviembre de 1988 o bien "With Microscope and Tweezers: An Analysis of the Internet Virus of November 1988", por Mark W. Eichin y Jon A. Rochlis, Massachusetts Institute of Technology, Febrero de 1989

(3) Si se desea ampliar información sobre este virus puede consultarse "The Computer Virus Catalog", editado por la Universidad de Hamburgo.

Fernando Blanco Dopazo es Analista de Sistemas (graduado en ORT), y se ha especializado en seguridad informática. Actualmente trabaja en una renombrada consultora internacional, desempeñándose como auditor de sistemas bancarios.

Por Fernando Blanco Dopazo.

tomado de: http://hecate.com.ar/vr/vr22/unix.htm

No hay comentarios:

Publicar un comentario