[Articulo] RootKits: ese gran desconocido

27/07/2004 - 20:30 por JM Tella Llop [MVP Windows] | Informe spam
ROOTKITS - Ese gran desconocido
-

Se habla mucho en la red sobre la infinidad de metodos existentes para colocar una trampa explosiva en un sistema con el fin de que los usuario no tengan ninguna idea de lo que sucede realmente.

Se habla de virus, troyanos, spyware, malware. Sin embargo estos conceptos estan centrados en "herramientas" que se ejecutan como programas normales aunque con malevolos resultados y se ocultan en los mismos lugares que podemos descubrir o que un tecnico o que otro programa puede ver con relativa facilidad.

Por desgracia los verdaderos atacantes estan ocultos y pueden ser mucho mas incisivos. Cuando un hacker posee conocimientos profundos de la arquitectura de un sistema operativo, la completa violacion de la integridad del sistema puede ser una operacion bastante trivial.

El presente articulo viene a colación de los ultimos gusanos que han inundado e inundad internet: blaster y sasser, Debido a una vulnerabilidad del sistema operativo, se podia tomar control de nuestra maquina desde cualquier otra maquina de internet de una manera manual con solo saber nuestra IP. Realmente tampoco era necesario saberla ya que se hacian grandes barridos de direcciones IP para pillar a los incautos.

Hay que resaltar que estas vulnerabilidades y los propios gusanos en si, salieron mas tarde o mejor dicho a continuacion que Microsoft deistribuyera los parches de seguridad. Los hacker suelen usar tecnicas de ingenieria inversa para analizar lo parches y saber a traves de su analisis en que era vulnerable el sistema operativo. Sabiendo lo anterior ya solo les queda el hacer un programa que explote dicha vulnerabilidad y a continuacion, otro submundo de ellos, crean gusanoscomo los anteriores para infectar la red. Debemos resaltar que esto solo es posible en aquellas maquinas en las que el usuario es lo bastante temerario como para incumplir dos premisas: no usar cortafuegos y no usar laos mecanismos de actualizaciones automaticas de los sistemas operativos. Por desgracia y frente a los ataques e infecciones masivas, podemos comprobar que los usuarios, en general, cumplen estas dos premisas.

Per vayamos un poco más: ¿y si los atacantes mezclan el conocimiento de explotar una vulnerabilidad de este estilo, junto con un conocimineto profundo del sistema operativo? Esto no es en absoluto descabellado, maxime cuando dichos atacantes son capaces mediante ingenieria inversa de un parche el obtener la explotacion de una vulnerabilidad en solamente unos dias. ¿que ocurriria si a traves de una de estas vulnerabilidades nos introdujesen un rootkit?


Rootkits

¿que puede llegar a ocurrir si incluso el codigo del sistema operativo cae bajo el control del atacante?

Esta es una vieja idea que proviene desde la epoca en que las plataformas unix-linux permiten que el propio usuario puede compilar (y normalmente "debe" hacerlo) el nucleo del sistema operativo para generar una imagen optima para su sistema.

Se asigna el nombre de "rootkit" a los paquetes de software que sustituyen a los troyanos por binarios utilizados frecuentemente por el propio sistema operativo porque implican el pero compromiso posible e los privilegios de la maquina atacada.

Los Rootkits de unix-linux se pueden agrupar en cuatro categorias:

1) Troyanos de versiones modificadas de comandos basicos como: login, netstat y ps, por ejemplo.
2) Puertas traseras tales como las inserciones inetd.
3) Herramientas de escucha de las interfaces de red (sniffers).
4) Limpiadores de los registros del sistema (limpiadores de logs).

Los rootkits de unix-linus son abundantes y podemos verificarlo dandonos un simple paseo por: http://packetstorm.widexs.nl/UNIX/p.../rootkits/ Tambien en /UNIX/misc en este mismo sitio podremos encotrar algunos paquetes "interesantes".

La version 5 de Linux Rootkit (LRK5) es una de las mas notables alardeandose de haber generado versiones de puertas traseras de algunas de las utilidades mas criticas de la shell (entra las que se incluyen el comando "su", un "ssh" troyanizado y varios "sniffers").

No se debe dejar pasar por alto que los precursores de los sistemas actuales (XP / W2003) proviene de NT/W2000 y adquirieron su propio rookit en 1999, "cortesía" del equipo de Greg Hoglund en http://www.rootkit.com o bien en http://www.phrack.org

Greg dejó boquiabierta a la comunidad windows al mostrar un prototipo de trabajo de un rootkit de windows que podia ocultar claves de registro y efectuar redirecciones de programas .EXE. Opciones que se pueden utilizar sin mas para convertir en troyanos a archivos ejecutables normales sin modificar su contenido. Todos los trucos realizados por el rootkit estaban basados en la tecnica de "funcion enganchada" -establecer un "hook"-. El sistema era trivial parcheando un nucleo de NT / W2000 / XP de tal forma que se usurpan las llamadas al sistema: por tanto, el rootkit podrá ocultar un proceso, clave de registro o archivo o podrá redirigir las llamadas a las funciones troyanas. El resultado es mucho mas peligroso que el provocado por un rootkit del estilo troyano: el usuario ya *nunca* podrá estar seguro de la integridad del codigo que está ejecutando.


¿podemos hacer algo?


Sino podemos confiar en ningun de los comandos o programas, ni tan siquiera en un simple "dir" (o "ls" en linux), nos ha llegado la hora de arrojar la toalla: realize una copia de seguridad de sus archivos de datos criticos (nunca de ejecutables !), limpie completamente su sistema y reinstalelo de soportes originales. No confiar en las copias de seguridad ni de las imagenes realizadas ya que nunca sabrá en que momento el atacante ha podido conseguir el control del sistema.

La comprobacion mediante sumas de codigo (MD5) pueden tomar huella digital de los archivos y hacernos saber si uno de los archivos originales ha sido modificado. Sin embargo, la redireccion de ejecutables realizada por ciertos rootkits en el entorno windows puede anular esta tactica porque el codigo en cuestion no se modifica, sino solo se engancha y canaliza hacia otro ejecutable.

La imaginacion queda libre entonces para saber todo lo que pueden hacer a un usuario domestico y lo que es peor, a redes corporativas, bancos, instituciones, etc.

Lo mas peligros de cara a una corporacion son los ataques de escucha en una red comprometida.

¿que nos queda?: pues ademas de la propia seguridad en nuestra maquina, ser tambien cuidadosos con la seguridad en la red en todos los sentidos: usar herramientas de cifrado de comunicaciones, tales como Secure Shell (SSH), Secure Socket Layer (SSL), correo electronico seguro mediante Pretty Good Privacy (PGP) o un sistema de cifrado de la capa IP como los que proporcionan los servicion VPN. Esta es la unica forma realmente valida de rechazar los ataques de escucha en las comunicaciones.

La unica solucion, e resumen, y frente a la gravedad y envergadura de estos programas maliciosos, indetectables tanto ahora como en el furturo al tener el control completo o poderlo tener de nuestra maquina y por tanto ser capaces de enegañar a cualquier otro proceso, es usar el sentido comun: cortafuegos, sistemas operativos rigurosamente al dia, proteccion completa de la red y comunicaciones.

A nivel domestico, creo que sobra decir que hay dos herramientas basicas: firewall (cortafegos) y sistema operativo al dia son totalmente indispensables. Y herramientas del estilo de antivirus y ad-aware que se deben ejecutar, pero... ¿estos ultimos nos garantizan algo?: nada en absoluto ya que efectivamente nos pararan los virus conocidos. Pero por desgracia, para llegar a ser conocidos, antes habran infectado millones de maquinas. Por tanto, siempre, y como primera herramienta debemos tener el "sentido comun": no ejecutar nada que no sea en soporte original o bajado de webs oficiales (entrañan tambien un pequeño riesgo). No ejecutar por tanto ningun adjunto del correo. En principio, yo particularmente, elimino todos los correos con adjuntos, y si se puede establecer una regla en el lector de correo para ello, es lo mejor. Nunca bajarse nada de las redes P2P. Existen multitud de gusanos en estas redes, y el instalar simplemente un programa P2P en nuestra maquina ya nos hace vulnerables. Y sobre todo "sentido comun": recordemos que nadie en la calle nos regala nada por nada. En la red. tampoco. Pagaremos un precio por ello.


Jose Manuel Tella Llop
MVP - Windows
jmtella@XXXcompuserve.com (quitar XXX)
http://www.multingles.net/jmt.htm

Este mensaje se proporciona "como está" sin garantías de ninguna clase, y no otorga ningún derecho.

This posting is provided "AS IS" with no warranties, and confers no rights.
You assume all risk for your use.
 

Leer las respuestas

#1 Alezito [MS MVP]
27/07/2004 - 20:44 | Informe spam
Interesante y didactico, gracias como siempre por tu tiempo.

Alejandro Curquejo
Microsoft MVP
Windows Shell/User
Andalucia (Spain)


-Microsoft, Your Potential. Our Passion:
http://www.microsoft.com/mscorp/inn.../main.html
-The computer is your friend; trust the computer
-NewsGroup Windows XP: Inspired community; inspiring people

*Este mensaje se proporciona "tal cual" sin garantia de ninguna clase y no
otorga ningun derecho de reclamo*

-Tips y Articulos XP- http://www.multingles.net/tutdescargas.htm#ALE
-DTS-L.Org- http://www.dts-l.org/

Que es el Programa MVP (Most Valuable Professional)
http://mvp.support.microsoft.com/de...pr=mvpfaqs



"JM Tella Llop [MVP Windows]" escribió en el mensaje
news:%
ROOTKITS - Ese gran desconocido
-

Se habla mucho en la red sobre la infinidad de metodos existentes para
colocar una trampa explosiva en un sistema con el fin de que los usuario no
tengan ninguna idea de lo que sucede realmente.

Se habla de virus, troyanos, spyware, malware. Sin embargo estos conceptos
estan centrados en "herramientas" que se ejecutan como programas normales
aunque con malevolos resultados y se ocultan en los mismos lugares que
podemos descubrir o que un tecnico o que otro programa puede ver con
relativa facilidad.

Por desgracia los verdaderos atacantes estan ocultos y pueden ser mucho mas
incisivos. Cuando un hacker posee conocimientos profundos de la arquitectura
de un sistema operativo, la completa violacion de la integridad del sistema
puede ser una operacion bastante trivial.

El presente articulo viene a colación de los ultimos gusanos que han
inundado e inundad internet: blaster y sasser, Debido a una vulnerabilidad
del sistema operativo, se podia tomar control de nuestra maquina desde
cualquier otra maquina de internet de una manera manual con solo saber
nuestra IP. Realmente tampoco era necesario saberla ya que se hacian grandes
barridos de direcciones IP para pillar a los incautos.

Hay que resaltar que estas vulnerabilidades y los propios gusanos en si,
salieron mas tarde o mejor dicho a continuacion que Microsoft deistribuyera
los parches de seguridad. Los hacker suelen usar tecnicas de ingenieria
inversa para analizar lo parches y saber a traves de su analisis en que era
vulnerable el sistema operativo. Sabiendo lo anterior ya solo les queda el
hacer un programa que explote dicha vulnerabilidad y a continuacion, otro
submundo de ellos, crean gusanoscomo los anteriores para infectar la red.
Debemos resaltar que esto solo es posible en aquellas maquinas en las que el
usuario es lo bastante temerario como para incumplir dos premisas: no usar
cortafuegos y no usar laos mecanismos de actualizaciones automaticas de los
sistemas operativos. Por desgracia y frente a los ataques e infecciones
masivas, podemos comprobar que los usuarios, en general, cumplen estas dos
premisas.

Per vayamos un poco más: ¿y si los atacantes mezclan el conocimiento de
explotar una vulnerabilidad de este estilo, junto con un conocimineto
profundo del sistema operativo? Esto no es en absoluto descabellado, maxime
cuando dichos atacantes son capaces mediante ingenieria inversa de un parche
el obtener la explotacion de una vulnerabilidad en solamente unos dias. ¿que
ocurriria si a traves de una de estas vulnerabilidades nos introdujesen un
rootkit?


Rootkits

¿que puede llegar a ocurrir si incluso el codigo del sistema operativo cae
bajo el control del atacante?

Esta es una vieja idea que proviene desde la epoca en que las plataformas
unix-linux permiten que el propio usuario puede compilar (y normalmente
"debe" hacerlo) el nucleo del sistema operativo para generar una imagen
optima para su sistema.

Se asigna el nombre de "rootkit" a los paquetes de software que sustituyen a
los troyanos por binarios utilizados frecuentemente por el propio sistema
operativo porque implican el pero compromiso posible e los privilegios de la
maquina atacada.

Los Rootkits de unix-linux se pueden agrupar en cuatro categorias:

1) Troyanos de versiones modificadas de comandos basicos como: login,
netstat y ps, por ejemplo.
2) Puertas traseras tales como las inserciones inetd.
3) Herramientas de escucha de las interfaces de red (sniffers).
4) Limpiadores de los registros del sistema (limpiadores de logs).

Los rootkits de unix-linus son abundantes y podemos verificarlo dandonos un
simple paseo por: http://packetstorm.widexs.nl/UNIX/p.../rootkits/
Tambien en /UNIX/misc en este mismo sitio podremos encotrar algunos paquetes
"interesantes".

La version 5 de Linux Rootkit (LRK5) es una de las mas notables alardeandose
de haber generado versiones de puertas traseras de algunas de las utilidades
mas criticas de la shell (entra las que se incluyen el comando "su", un
"ssh" troyanizado y varios "sniffers").

No se debe dejar pasar por alto que los precursores de los sistemas actuales
(XP / W2003) proviene de NT/W2000 y adquirieron su propio rookit en 1999,
"cortesía" del equipo de Greg Hoglund en http://www.rootkit.com o bien en
http://www.phrack.org

Greg dejó boquiabierta a la comunidad windows al mostrar un prototipo de
trabajo de un rootkit de windows que podia ocultar claves de registro y
efectuar redirecciones de programas .EXE. Opciones que se pueden utilizar
sin mas para convertir en troyanos a archivos ejecutables normales sin
modificar su contenido. Todos los trucos realizados por el rootkit estaban
basados en la tecnica de "funcion enganchada" -establecer un "hook"-. El
sistema era trivial parcheando un nucleo de NT / W2000 / XP de tal forma que
se usurpan las llamadas al sistema: por tanto, el rootkit podrá ocultar un
proceso, clave de registro o archivo o podrá redirigir las llamadas a las
funciones troyanas. El resultado es mucho mas peligroso que el provocado por
un rootkit del estilo troyano: el usuario ya *nunca* podrá estar seguro de
la integridad del codigo que está ejecutando.


¿podemos hacer algo?


Sino podemos confiar en ningun de los comandos o programas, ni tan siquiera
en un simple "dir" (o "ls" en linux), nos ha llegado la hora de arrojar la
toalla: realize una copia de seguridad de sus archivos de datos criticos
(nunca de ejecutables !), limpie completamente su sistema y reinstalelo de
soportes originales. No confiar en las copias de seguridad ni de las
imagenes realizadas ya que nunca sabrá en que momento el atacante ha podido
conseguir el control del sistema.

La comprobacion mediante sumas de codigo (MD5) pueden tomar huella digital
de los archivos y hacernos saber si uno de los archivos originales ha sido
modificado. Sin embargo, la redireccion de ejecutables realizada por ciertos
rootkits en el entorno windows puede anular esta tactica porque el codigo en
cuestion no se modifica, sino solo se engancha y canaliza hacia otro
ejecutable.

La imaginacion queda libre entonces para saber todo lo que pueden hacer a un
usuario domestico y lo que es peor, a redes corporativas, bancos,
instituciones, etc.

Lo mas peligros de cara a una corporacion son los ataques de escucha en una
red comprometida.

¿que nos queda?: pues ademas de la propia seguridad en nuestra maquina, ser
tambien cuidadosos con la seguridad en la red en todos los sentidos: usar
herramientas de cifrado de comunicaciones, tales como Secure Shell (SSH),
Secure Socket Layer (SSL), correo electronico seguro mediante Pretty Good
Privacy (PGP) o un sistema de cifrado de la capa IP como los que
proporcionan los servicion VPN. Esta es la unica forma realmente valida de
rechazar los ataques de escucha en las comunicaciones.

La unica solucion, e resumen, y frente a la gravedad y envergadura de estos
programas maliciosos, indetectables tanto ahora como en el furturo al tener
el control completo o poderlo tener de nuestra maquina y por tanto ser
capaces de enegañar a cualquier otro proceso, es usar el sentido comun:
cortafuegos, sistemas operativos rigurosamente al dia, proteccion completa
de la red y comunicaciones.

A nivel domestico, creo que sobra decir que hay dos herramientas basicas:
firewall (cortafegos) y sistema operativo al dia son totalmente
indispensables. Y herramientas del estilo de antivirus y ad-aware que se
deben ejecutar, pero... ¿estos ultimos nos garantizan algo?: nada en
absoluto ya que efectivamente nos pararan los virus conocidos. Pero por
desgracia, para llegar a ser conocidos, antes habran infectado millones de
maquinas. Por tanto, siempre, y como primera herramienta debemos tener el
"sentido comun": no ejecutar nada que no sea en soporte original o bajado de
webs oficiales (entrañan tambien un pequeño riesgo). No ejecutar por tanto
ningun adjunto del correo. En principio, yo particularmente, elimino todos
los correos con adjuntos, y si se puede establecer una regla en el lector de
correo para ello, es lo mejor. Nunca bajarse nada de las redes P2P. Existen
multitud de gusanos en estas redes, y el instalar simplemente un programa
P2P en nuestra maquina ya nos hace vulnerables. Y sobre todo "sentido
comun": recordemos que nadie en la calle nos regala nada por nada. En la
red. tampoco. Pagaremos un precio por ello.


Jose Manuel Tella Llop
MVP - Windows
(quitar XXX)
http://www.multingles.net/jmt.htm

Este mensaje se proporciona "como está" sin garantías de ninguna clase, y no
otorga ningún derecho.

This posting is provided "AS IS" with no warranties, and confers no rights.
You assume all risk for your use.

Preguntas similares