RootKits - PowerPoint PPT Presentation

About This Presentation
Title:

RootKits

Description:

Qui nes son? 31 de Octubre de 2005 Mark Russinovich descubre que el software de gesti n de derechos digitales de Sony ... Instalar una soluci n anti-rootkit y ... – PowerPoint PPT presentation

Number of Views:226
Avg rating:3.0/5.0
Slides: 30
Provided by: gako7
Category:
Tags: rootkits | rootkit | sony

less

Transcript and Presenter's Notes

Title: RootKits


1
RootKits La amenaza oculta
Pablo Iglesias Morales ingpim01_at_ucv.udc.es
Facultad de Informática Universidad de A
Coruña Lunes, 2 de Mayo de 2008
2
Qué vamos a aprender?
  • Detección
  • Prevención y buenas prácticas
  • Caso práctico
  • Definiciones
  • Un poco de historia
  • Tendencias
  • Rootkits en
  • la Plataforma Windows

Índice
3
Rootkit se refiere a ...
  • Tradicionalmente Rootkit

Conjunto de herramientas que permiten el acceso a
un equipo o red a nivel de administrador
ps, netstat, ls y passw
  • Actualmente

Técnicas que ocultan, de forma activa, su
existencia y sus acciones a usuarios y a otros
procesos del sistema
Influencia de MS Windows
Definiciones
4
Una rootkit no es un...
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.
Troyanos Programas 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.
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.
Definiciones
5
Un poco de historia ...
1986 -gt Brain Primer virus para PC.
Interceptaba las interrupciones del sector de
arranque y redirigía las operaciones de lectura a
otro sector del disco.
1987 -gt 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 -gt Tequila / 1993 -gt 1689 Stealth Uso de
técnicas para ocultar el aumento de tamaño de los
archivos.
Mediados de los 90 gt Punto de inflexión Porqué?
Historia
6
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 -gt NTrootkit / 2003 -gt 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
7
Y con la llegada de Internet...
Para los malos nuevas vías de propagación y
proporcionó millones de víctimas potenciales
Bueno para todos
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.
Existen los buenos? Quiénes son?
Historia
8
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 2005 W32/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.
Otros casos Symantec (NTProtect)
Kaspersky(iStreams)
Historia
9
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
Objetivos
10
Entonces...Cuáles son los objetivos de las
Rootkits? (II)
Ocultar la presencia de exploits, backdoors
Almacenar información a la que un intruso no
podría tener acceso de otra manera
Utilizar al sistema comprometido como
intermediario para llevar a cabo otras
intrusiones y/o ataques maliciosos
Objetivos
11
Por qué tienen éxito?
Porque están presentes en troyanos, malware y pup
Motivo esfuerzos conjuntos de investigación en
línea
Tendencias
12
Por qué tienen éxito? (II)
Porque cada vez son más sofisticados
Factor de complejidad número de archivos que
forman la rootkit
Tendencias
13
Por qué tienen éxito? (III)
Porque romper Windows es un reto
Desafío Gran número de APIs no documentadas
Tendencias
14
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 comercial
Tendencias
15
Por qué tienen éxito? (V)
Porque lo puede hacer cualquiera
Factores fácil acceso al código kits de
creación gratuitos
Tendencias
16
Parte II Análisis de la plataforma Windows
17
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
18
La rootkit debe alterar el flujo de ejecución
normal para conseguir que prospere su
implementación de ocultación (Hooking)
Conceptos previos
19
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
20
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
21
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
22
Cómo se interceptan los mensajes? (II)
Intercepción de funciones en línea
Las llamadas del proceso pasan primero por la
rootkit
Tipos de rootkits
23
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
24
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
25
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
26
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
27
Ejemplo
Requisitos -gt Windows 2000/XP/2003 -gt
Rootkit Hacker Defender 1.00 2004 Capacidad
de ocultación de espacio libre en disco y
conexiones. bdclient.exe para comunicarse con
el atacante.
28
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
29
Ejecución
hxdef100.exe -Installonly Se genera un nuevo
servicio -gt Hacker defender100
Ejemplo
Write a Comment
User Comments (0)
About PowerShow.com