Los virus en linux existen pero solo tienen éxito si linux esta mal instalado.



On Jueves 14 Mayo 2009 10:47:20 Luccia Victoria Muruaga escribió:
> Gente vi todo el debate sobre los virus y bueno como no estaba informada
> del tema me puse a indagar aqui les dejo un articulo que si bien es
> larguito esta muy bueno ... ademas esta puesto como pa tontos (por eso lo
> entendi jajaja) ... bueno espero que les guste ... les paso el link asi ven
> el informe completito porque solo saque lo de linux ...
> http://www.e-ghost.deusto.es/docs/articulo.virus.html En Linux no hay
> virus... ¡Falso! Objetivos y técnicas:
>     Scripts: sh, Perl
>
> Los lenguajes interpretados han sido una constante en todo sistema UNIX.
> Actualmente los más utilizados son los scripts de shell y Perl. Programar
> un virus en estos lenguajes es un juego de niños, aquí tenemos un ejemplo
> de un virus de shell sencillo:
>
>
>       #!/bin/sh
> for FICHERO in *
> do
>   tail -4 $0 >> $FICHERO
> done
>
>
>
> ¿Qué hace? Va copiando sus 4 últimas líneas (tail -4 $0) al final de cada
> fichero en este directorio (">>" es append, o añadir al final). Como
> podemos ver, es un virus bastante tonto, infecta tanto ejecutables como
> ficheros de datos, y puede dejarlos inutilizados, pero con unas pocas
> decenas de líneas más, podría hacerse algo más presentable.
>
>
> La sencillez de estos virus es su ventaja para sus programadores, pero
> también su debilidad: son tremendamente fáciles de detectar a simple vista,
> engordan el tamaño del fichero infectado considerablemente y realentizan su
> ejecución más allá de lo inperceptible por un usuario normal.
>
>     Binarios
>     a.out
>
> Es un formato realmente simple, casi tanto como los COM de DOS. Actualmente
> este tipo de ejecutables está en desuso, pero todavía quedan sistemas con
> a.out's (a pesar de que el compilador genere un fichero llamado "a.out",
> eso no implica que tenga este formato, casi con seguridad se tratará de un
> ELF).
>
> Infeccion de ejecutables a.out:
>
>
> Se puede optar por aumentar el tamaño de la sección de código (.text) y
> desplazar el resto del archivo, o tratar de encontrar una cavidad (cavity)
> para instalar el virus allí. El virus, además, deberá modificar la cabecera
> para reflejar los cambios (diferente tamaño de secciones, diferente entry
> point...).
>
>     ELF
>
> El formato ELF es el más utilizado hoy en día en los ejecutables para UNIX.
> Es un formato muy flexible y bastante bien diseñado.
>
> Infeccion de ejecutables ELF:
>
>
> Las investigaciones más serias en este campo vienen de la mano de Silvio
> Cesare. Ha publicado ya numerosos artículos acerca de este tema, y todos
> sus virus han sido programados en C, para poder ser compilados en cualquier
> sistema UNIX. El método que utiliza es el siguiente:
>
>
>
>   Incrementar un campo en la cabecera del ELF (p_shoff) que indica el
>   desplazamiento u offset donde se encuentra la tabla de cabecera de
> secciones (Section header table).
>
>   Hallar la cabecera de programa del segmento de codigo y:
>
>     Incrementar la variable que indica el tamaño que ocupa el código
>     físicamente (p_filesz).
>
>     Incrementar la variable que indica el tamaño que ocupa el código
>     cuando se carga en memoria (p_memsz).
>
>   Para cada cabecera de programa cuyo segmento esta despues del de
>   codigo (que es donde hemos introducido el virus):
>
>     Incrementar el offset del segmento en el fichero (p_offset).
>
>   Para cada cabecera de seccion cuya seccion este despues de nuestra
>   insercion:
>
>     Incrementar sh_offset, para tener en cuenta el nuevo codigo
>
>   Insertar el virus en si en el fichero
>
>
>
> Esto puede parecer un lío para más de uno, en simples palabras lo que
> se trata es de hacer el tamaño del segmento de código más grande para
> hacer espacio para el virus. Luego hay que actualizar todos los valores
> para que el código nuevo se cargue, y cambiar el entry point para que
> apunte al virus.
>
> Este método de infección funciona perfectamente, pero no es el único.
> Wintermute presento en el hackmeeting de 2000 un nuevo virus para Linux,
> el Lotek, que realizaba una infección aprovechando una cavidad (cavity)
> en la sección ".note".
>
>
> Recientemente el ex-VXer Bumblebee ha publicado un virus para Linux con
> residencia per-process en RING-3 y unas cuantas técnicas aprendidas en
> entornos win32. Muchas de las estructuras de win32 tienen su paralelismo
> en Linux, por lo que gran cantidad de técnicas pueden portarse fácilmente
> a los virus de Linux.
>
>     Ficheros de fuentes
>
> Hay algunos intentos de infectar ficheros fuente en lugar de binarios. Se
> puede realizar un enfoque desde el punto de vista de ensamblador "inline" o
> embebido dentro del código, o bien un ejecutable que genere fuente como
> salida.
>
>     Packages: .deb, .rpm, .mdk
>
> Un punto todavía poco explotado es el de los paquetes de software de las
> diferentes distribuciones de Linux. Mucha gente utiliza paquetes para
> instalar programas de manera sencilla y ordenada, y en ocasiones esos
> paquetes son descargados por un usuario sin privilegios desde un navegador,
> para ser instalados posteriormente por "root". En ese intervalo de tiempo
> en el que permanecen en el directorio del usuario sin privilegios podrían
> ser infectados y luego, al ser instalados por "root", acceder a todo el
> sistema.
>
>
> Un paquete generalmente tiene comprobaciones mediante MD5, pero pueden
> recalcularse, por lo que este puede ser un punto flaco importante en
> nuestras distribuciones Linux. Ya, pero Linux es seguro, ¿no?
>     Linux es seguro
>
> Sí, Linux es bastante seguro. De hecho un virus deberá utilizar algun
> despiste de configuración en el sistema para poder colarse hasta tener
> acceso a todas sus partes.
>
>
> Está claro que actualmente usar Linux es el mejor antivirus que existe. No
> he visto a nadie que haya sufrido un virus en Linux y eso que conozco a
> mucha gente que usa Linux masivamente. Es posible que con el tiempo esta
> situación vaya cambiando y Linux sea otro escenario donde se libren las
> batallas entre programadores de virus y de antivirus. Por el momento, salvo
> experimentos de laboratorio, estamos a salvo.
>
>     ¿Cómo podemos hacer una escalada de privilegios?
>     Exploits
>
> Un exploit es un programa que aprovecha un fallo en el sistema para
> conseguir algo no permitido de él. Si un virus incluye ese código dentro
> del suyo, podría conseguir acceder a zonas no permitidas y hacerse con el
> control del sistema.
>
>
> Este enfoque ha sido utilizado en varios virus para Linux, como el staog
> por Quantum/VLAD, pero implica la extinción del virus en cuanto el fallo
> que explota el exploit sea subsanado. Algunos virus intentan aprovecharse
> del exploit, y si no tiene éxito, eliminan el código del exploit del resto
> de infecciones.
>
>
> Este enfoque es más propio de entornos menos dinámicos en cuanto a
> correcciones de fallos en programas, como Windows (poca gente actualiza
> periódicamente su navegador o su editor de textos). En entornos de
> desarrollo open source los fallos suelen ser detectados y subsanados más
> dinámicamente.
>
>     LKMs (Loadable Kernel Modules)
>
> Hemos dicho en la introducción que el núcleo de Linux es monolítico, pero
> tiene un sistema de carga y descarga de módulos que permiten un uso más
> eficiente de los controladores de dispositivos (drivers).
>
>
> Un módulo del kernel (o LKM) se ejecuta en RING-0, dentro del espacio
> reservado para el kernel, es decir, tiene un poder total sobre la máquina.
> Es posible programar LKMs que tengan mas poder o que engañen a "root", por
> lo que si un virus lograse cargar un módulo dentro del módulo, podría ser
> una pesadilla para el administrador de la máquina, y el único límite de
> acción serían las limitaciones físicas de los dispositivos.
>
>
> Con un LKM se puede hacer de todo: ocultar procesos, modificar tamaños de
> archivos, etc. por lo que puede que los futuros virus de Linux incluyan
> LKMs para sus propósitos.
>
>     Windows/Linux
>
> Muchos de los ordenadores personales que utilizan los usuarios de Linux,
> aunque a veces cueste reconocerlo, tienen una partición con Windows.
> Existen varias herramientas para acceder a particiones Linux desde Windows,
> explore2fs quizá sea la más conocida.
>
>
> Si un virus atacase un sistema Windows, consiguiese los privilegios
> suficientes como para acceder al disco duro y buscar un fichero clave
> dentro de la partición Linux, como pueda ser "init" (el proceso inicial del
> que se crean todos los demás procesos) o la shell que use "root", todas las
> protecciones de Linux como tal habrían sido inútiles. Aunque suene un poco
> fuerte: la inseguridad inherente de Windows actuaría como "Caballo de
> Troya" contra el sistema Linux.
>
>
> Existe otra herramienta bastante utilizada, VMWare, que permite tener
> varias máquinas virtuales corriendo Sistemas Operativos diferentes. Es
> también muy común tener Windows y Linux funcionando al mismo tiempo con
> VMWare. En lugar de tener que esperar a que el sistema rearranque con Linux
> como en el caso anterior, la infección podría hacerse directamente, ya que
> VMWare es fácilmente detectable (utiliza un RING que no es ni 0 ni 3).
>
>     fork() y crack
>
> Un virus desde una cuenta de usuario podría armarse de paciencia y crear un
> proceso con muy baja prioridad (para no interferir en el rendimiento normal
> del sistema) que intentase crackear las contraseñas por fuerza bruta.
>
>
> Imaginemos un sistema automatizado, en el que el administrador entra sólo
> cada semana a retocar 4 cosas, pero no hay una supervisión real. Un virus
> podría colarse desde una cuenta sin privilegios, y estar un par de semanas
> intentando crackear las contraseñas. Una vez conseguido esto, sólo queda
> dar el salto a "root" y de ahí a donde quiera (kernel, otros
> ordenadores...).
>
>     Entonces... ¿por qué no hay (casi) virus para Linux?
>     Perfil del usuario medio
>
> Actualmente el usuario medio de Linux tiene poco que ver con el usuario
> medio de Windows o Macintosh. Quizá mucha gente cayó con lo de "Enanito si,
> pero que pedazo de coj...", pero esto tendría poco éxito en un entorno de
> usuarios de Linux.
>
> La gente acostumbra a conocer el origen de sus programas, y examina su
> código fuente. No quiero decir que todos los usuarios de Linux lo hagan,
> pero hay un grupo importante de gente que lo hace y lo comenta al resto.
>
>
> Las llamadas "técnicas de ingeniería social", es decir, hacer uso de la
> candidez del usuario que recibe un virus o gusano, tienen muchas más
> dificultades con usuarios de Linux.
>
>     Filosofía del software
>
> Como acabo de comentar, que Linux sea de código abierto y haya una
> mentalidad clara en cuanto a ese tema, dificulta ocultar código en los
> programas.
>
>
> Ken Thompson dijo que ningún software creado por otro podía ser confiable,
> especialmente si había creado por él. Tal y como explicó en una conferencia
> en mitad de la década de los 80, Thompson había introducido un sistema de
> autoreplicación y "troyanización" en todo compilador C para UNIX que le
> permitió hasta entonces poder entrar como "root" en todo sistema hasta la
> fecha. Si alguien quiere saber cómo se las ingenió el bueno de Thompson,
> lo explicaré por email gustosamente, o bien esperáis al turno de preguntas
> O:-)
>
>     Pocos VXers linuxeros
>
> Todavía hay pocos escritores de virus que usan Linux habitualmente. Algunos
> han instalado Linux en una partición para hacer sus pruebas y conocen
> bastantes cosas de él, pero no tienen en absoluto la soltura que han
> conseguido durante años de uso de DOS y Windows.
>
>
> Supongo que esto cambiará con el tiempo, y pronto los VXers usarán Linux a
> diario. Cuando esto ocurra, yo creo que habrá una nueva hornada de virus
> para Linux programados desde la experiencia, no como un experimento de
> laboratorio.
>
>     ¿Y qué puede pasar en el futuro?
>
>       + Usuarios novatos+ Empresas usan Linux -> - Open Source+
> Configuraciones "click&play" -> - Robustez del sistema+ VXers linuxeros
>
>     Conclusión
>     Solución: una buena "salud" informática
>
> Es decir:
> actualizar las versiones de nuestros programas para evitar bugs.conseguir
> los programas de fuentes fidedignas.utilizar siempre que sea posible la
> versión en código fuente de los programas.no ejecutar todo lo que nos
> llegue por Internet...
>
>
> Todo ese tipo de cosas que, como espero que haya quedado claro ;-),
> utilizan los virus para colarse en nuestros sistemas
>
>
> Yo y solo io ... La mas genia ... Del mundo mundial ...
>
>
>       Yahoo! Cocina
> Recetas prácticas y comida saludable
> http://ar.mujer.yahoo.com/cocina/

-- 
Atte. Sergio R.Vicari
"Esclavo de mis sueños, libre en mis pasos"

_________________________________
Lista de correo - L U G Tucumán         
http://www.lugtucuman.org.ar

Responder a