rootkits la amenaza oculta

29
RootKits La amenaza oculta Facultad de Informática Universidad de A Coruña Lunes, 2 de Mayo de Pablo Iglesias Morales [email protected]

Upload: larissa-mcintosh

Post on 03-Jan-2016

62 views

Category:

Documents


1 download

DESCRIPTION

RootKits La amenaza oculta. Pablo Iglesias Morales [email protected]. Facultad de Informática Universidad de A Coruña Lunes, 2 de Mayo de 2008. ¿Qué vamos a aprender?. * Detección * Prevención y buenas prácticas * Caso práctico. * Definiciones * Un poco de historia * Tendencias - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: RootKits La amenaza oculta

RootKitsLa amenaza oculta

Facultad de

Informática

Universidad de A

Coruña

Lunes, 2 de Mayo de

2008

Pablo Iglesias [email protected]

Page 2: RootKits La amenaza oculta

¿Qué vamos a aprender?

* Definiciones

* Un poco de historia

* Tendencias

* Rootkits en

la Plataforma Windows

* Detección

* Prevención y buenas prácticas

* Caso práctico

Índice

Page 3: RootKits La amenaza oculta

Conjunto de herramientas que permiten el acceso a un equipo o red a nivel de administrador

Tradicionalmente: Root+kit

ps, netstat, ls y passw

Definiciones

Técnicas que ocultan, de forma activa, su existencia y sus acciones a usuarios y a otros procesos del sistema

Actualmente:

Influencia de MS Windows

Rootkit se refiere a ...

Page 4: RootKits La amenaza oculta

* PUP (Potentially Unwanted Programs)Aunque se parecen a los troyanos y a otro software maligno en que suelen apoderarse de información confidencial y privada, son diferentes, ya que se instalan y ejecutan con la APROBACIÓN tácita DEL USUARIO.

* Virus Programas que se replican AUTOMÁTICAMENTE y que pueden ocultar información confidencial, bloquear los recursos del sistema, destruir información o realizar otros actos malignos.

* TroyanosProgramas que parecen aplicaciones de software inofensivas o incluso útiles a simple vista, pero que en su interior albergan código malintencionado. Aunque los troyanos NO SE AUTO REPLICAN, pueden hacer que un equipo infectado descargue otro malware que sí lo haga.

* Gusanos Malware que se replica mediante la distribución de copias a través de una red compartida, una unidad USB, etc, a menudo de forma autónoma, SIN necesidad de INTERVENCIÓN HUMANA.

Definiciones

Una rootkit no es un...

Page 5: RootKits La amenaza oculta

Un poco de historia ...

Historia

* 1986 -> BrainPrimer virus para PC. Interceptaba las interrupciones del sector de arranque y redirigía las operaciones de lectura a otro sector del disco.

* 1987 -> Lehigh Rápida neutralización tras su lanzamiento debido a que no utilizaba técnicas de ocultación.

~ Conciencia ~

La longevidad de un virus dependía esencialmente

de las técnicas de ocultación

* 1991 -> Tequila / 1993 -> 1689 StealthUso de técnicas para ocultar el aumento de tamaño de los archivos.

Mediados de los 90 => Punto de inflexión

¿Porqué?

Page 6: RootKits La amenaza oculta

* La aparición de Windows 95 trajo la inmunidad a los virus DOS y un breve período de inactividad en cuanto a innovación de técnicas de ocultación.Los autores de virus tuvieron que aprender a utilizar las interfaces de programación de aplicaciones de Windows (API) y la arquitectura de memoria protegida.

* 2001 -> NTrootkit / 2003 -> HackerDefender Fin de la tregua. Estos troyanos se "enganchaban" al sistema operativo en un nivel muy bajo de llamadas a funciones, lo que les permitía ocultar su presencia.

Es tan fácil como....

Cambiar el nombre de un archivo infectado de forma que parezca un archivo legítimo del sistema o del usuario.

El troyano scvhost.exe o svehost.exe puede residir en el directorio system32 de Windows junto al archivo original llamado svchost.exe. Del mismo modo, puede ejecutarse un troyano llamado svchost.exe desde los directorios Windows o WINNT.

Historia

Page 7: RootKits La amenaza oculta

Y con la llegada de Internet...

“Bueno” para todos

Para los malos: nuevas vías de propagación y proporcionó millones de víctimas potenciales

Para los buenos: nuevos métodos de detección a través de la red en tiempo real con sistemas de prevención de intrusiones (IPS) y otros dispositivos de supervisión del tráfico para vigilar los síntomas que revelan la presencia de actividad maligna.

Historia

Existen los buenos? Quiénes son?

Page 8: RootKits La amenaza oculta

31 de Octubre de 2005

Mark Russinovich descubre que el software de gestión de

derechos digitales de Sony BMG, Extended Copy Protection (XCP) hace uso de tecnologías de ocultación que exponían a los equipos a posibles ataques. XCP incorpora una implementación de controlador de dispositivo que incluye privilegios a nivel de kernel. Este controlador oculta archivos y procesos de gestión de derechos digitales para que el usuario no pueda desactivarlos y realizar copias ilegales de archivos de música. Para conseguir esta protección, se escribió código kernel que ocultaba cualquier archivo, carpeta o proceso que comenzara por la cadena "$sys$"

Noviembre 2005W32/Brepibot , cuya presencia se comunicó en noviembre de 2005 y que se propaga a través de

canales Internet Relay Chat (IRC), aprovechan esta vulnerabilidad.

Historia

Otros casos: Symantec (NTProtect) Kaspersky(iStreams)

Page 9: RootKits La amenaza oculta

Objetivos

Entonces...¿Cuáles son los objetivos de las

Rootkits?

Ocultar los rastros de la entrada de un intruso en el ordenador

Ocultar la presencia de procesos o aplicaciones maliciosas

Ocultar las actividades dañinas como si fueran realizadas por programas legítimos

Page 10: RootKits La amenaza oculta

Ocultar la presencia de exploits, backdoors

Utilizar al sistema comprometido como intermediario para llevar a cabo otras intrusiones y/o ataques maliciosos

Almacenar información a la que un intruso no podría tener acceso de otra manera

Entonces...¿Cuáles son los objetivos de las

Rootkits?(II)

Objetivos

Page 11: RootKits La amenaza oculta

Tendencias

Por qué tienen éxito?

Porque están presentes en troyanos, malware y pup

Motivo: esfuerzos conjuntos de investigación en línea

Page 12: RootKits La amenaza oculta

Por qué tienen éxito?(II)

Porque cada vez son más sofisticados

Factor de complejidad: número de archivos que forman la rootkit

Tendencias

Page 13: RootKits La amenaza oculta

Por qué tienen éxito?(III)

Porque “romper” Windows es un reto

Desafío: Gran número de APIs no documentadas

Tendencias

Page 14: RootKits La amenaza oculta

Por qué tienen éxito?(IV)

Porque también están presentes en software legal

A tener en cuenta: también han convencido a los proveedores de

software comercialTendencias

Page 15: RootKits La amenaza oculta

Por qué tienen éxito?(V)

Porque lo puede hacer “cualquiera”

Factores: fácil acceso al código +

kits de creación gratuitosTendencias

Page 16: RootKits La amenaza oculta

Parte II:Análisis de la plataforma Windows

Page 17: RootKits La amenaza oculta

Conceptos previos:

La arquitectura i386 admite cuatro anillos, o niveles de privilegios,(numerados del 0 al 3)

Los anillos 0 y 3 son empleados para la seguridad de los procesos y los datos.

Las aplicaciones de usuario solicitan recursos del kernel del sistema operativo y del hardware.

Para comunicarse con el kernel, las aplicaciones en modo de usuario utilizan llamadas API Win32.

La transferencia del control desde el modo de usuario al modo de kernel se efectúa a través de una función especial del procesador.

Conceptos previos

Page 18: RootKits La amenaza oculta

La rootkit debe alterar el flujo de ejecución normal para conseguir que

prospere su implementación de ocultación (Hooking)

Conceptos previos

Page 19: RootKits La amenaza oculta

Rootkits en modo de usuario

Pasan desapercibidos para el Administrados de Tareas

Su efectividad depende de su habilidad para ocultarse

Dependen de APIs de Windows documentadas que se emplean habitualmente en utilidades, depuradores, herramientas de desarrollo, ...

Tipos de rootkits

Page 20: RootKits La amenaza oculta

Métodos de Inyección

A través de extensiones de aplicaciones

Proporciona acceso al espacio de direcciones del proceso

A través de filtros de mensajes de Windows

Uso de SetWindowsHookEx para interceptar eventos del sistema

A través de vulnerabilidades de aplicaciones

Diversos métodos de comunicación

Multiplica las posibles vías de ataque

Tipos de rootkits

Page 21: RootKits La amenaza oculta

¿Cómo se interceptan los mensajes?

Intercepción de la tabla de direcciones de importación (IAT)

Cada vez que se ejecuta una llamada a la API de destino, se ejecuta el rootkit

Tipos de rootkits

Page 22: RootKits La amenaza oculta

Intercepción de funciones en línea

Las llamadas del proceso pasan primero por la rootkit

Tipos de rootkits

¿Cómo se interceptan los mensajes? (II)

Page 23: RootKits La amenaza oculta

Rootkits en modo kernel

La utilizan habitualmente aplicaciones legítimas, como controladores de dispositivos del sistema y programas antivirus.

Objetivo: operar en modo de kernel con privilegios de sistema

Se hace más difícil su detección y eliminación

Mediante la instalación de un controlador de dispositivo en modo de kernel, consiguen que su código se cargue en el espacio de direcciones del kernel

Son complejas y poco compatibles, por lo que su popularidad no ha sido mayor que las rootkits en modo usuario

Tipos de rootkits

Page 24: RootKits La amenaza oculta

Modificación de la tabla de descriptores de servicios del sistema

(SSDT)

Aproximadamente el 50% de los rootkits observados en circulación implementan este técnica.

Puede ser detectada por la mayoría de

los analizadores de

memoria

Tipos de rootkits

Page 25: RootKits La amenaza oculta

Entonces...Cómo sabemos si tenemos una Rootkit?

Las herramientas tradicionales de monitorización no son fiables

Monitorización externa: Sniffers (1)

Análisis forense: detección Offline (2)

Análisis estadísticos: estudios de bajo nivel (3)

Comparación de resultados

(1)NTRootkit

(2)Sistema

de ficheros propio

(3)PatchFinder2

Detección

Page 26: RootKits La amenaza oculta

Para protegernos deberíamos de...

Instalar una solución anti-rootkit y ACTUALIZARLA periódicamente

Instalar un firewall que proteja de accesos no autorizados al ordenador

Mantener las aplicaciones instaladas en el ordenador siempre actualizadas, instalando los parches de seguridad proporcionados por los fabricantes

Prevención

Page 27: RootKits La amenaza oculta

Ejemplo:

* Requisitos:-> Windows 2000/XP/2003-> Rootkit Hacker Defender 1.00 [2004]

~ Capacidad de ocultación de espacio libre en disco y conexiones.~ bdclient.exe para comunicarse con el atacante.

Page 28: RootKits La amenaza oculta

* Configuración (hxdef100.ini):

- Hidden table: Almacena la lista de ficheros ocultos por la rootkit.- Root proccess: Procesos que podrían acceder a todos los recursos, aunque estén ocultos.- Hidden services: Esntradas de servicios ocultas en el sistema.- Hidden Regkeys: Entradas de registro ocultas (claves de los programas que hemos instalado en el sistema)- Hidden regvalues: Como lo anterior, pero para valores.- Startup run: Tiene la misma funcionalidad que la clave run del registro. Inicia programas ocultos al ejecutarse la rootkit- Free space: Se puede configurar que cada unidad muestre un número de bytes extras en el espacio libre para que no sospeche de la falta de espacio en disco por nuestras herramientas.- Hidden ports: Oculta puertos locales abiertos para que no se detecten aplicaciones que están escuchando en puertos, como pueda ser un servicio ftp o un netcat.- Settings: Configuración del nombre de servicio y contraseña.

Ejemplo

Page 29: RootKits La amenaza oculta

Ejecución:

Ejemplo

hxdef100.exe -:Installonly

Se genera un nuevo servicio:

-> Hacker defender100