Curso De Reparacion Y Mantenimiento De Computadoras
Hide and Find Rootkits in Linux
Forensics and Attack Strategies
NataS::: The Lord of Chaos
Marcos Ricardo Schejtman Rubio
20 de Abril de 2012
Hide and Find Rootkits in Linux
Contents
1
Introducci´n
o
Definiciones
Tipos de Rootkits
Funciones Comunes de Rootkits
2
La perspectiva del Atacante
M´todos de Ataque
e
Kernel Hacking
taskstruct modification
3
La Perspectiva Forense
M´todos de Detecci´n
e
o
4
The End
Hide and Find Rootkits in Linux
Introducci´n
o
Definiciones
Introducci´n
o
1
Introducci´n
o
Definiciones
Tipos de Rootkits
Funciones Comunes de Rootkits
2
La perspectiva del Atacante
M´todos de Ataque
e
Kernel Hacking
task struct modification
3
La Perspectiva ForenseM´todos de Detecci´n
e
o
4
The End
Hide and Find Rootkits in Linux
Introducci´n
o
Definiciones
¿Qu´ es un Rootkit?
e
Un rootkit (seg´n Wikipedia), se puede definir como:
u
Un programa que permite un acceso de privilegio
continuo a una computadora pero que mantiene su
presencia activamente oculta al control de los
administradores al corromper el funcionamiento normal
del sistemaoperativo o de otras aplicaciones.
Hide and Find Rootkits in Linux
Introducci´n
o
Tipos de Rootkits
Tipos de Rootkits
Practicamente podemos hablar de dos tipos de rootkits:
1
Rootkits en Espacio de Usuario, Los cuales corren en
Ring-3, y modifican librer´ o archivos de configuraci´n, e
ıas,
o
inclusive ejecutables (ls, ps, etc).
2
Rootkits en Espacio de Kernel, Loscuales corren en
Ring-0, y modifican estructuras del kernel, atrapan llamadas
de sistema (hijacking syscall-table), etc. Podemos tenerlos
como LKM’s o como patch al kernel corriendo /dev/kmem
Hide and Find Rootkits in Linux
Introducci´n
o
Funciones Comunes de Rootkits
Funciones Comunes de Rootkits
Esconder Procesos
Esconder Archivos
Esconder Conexiones de Red
Backdoors
KeyloggersDarnos acceso a root
Hide and Find Rootkits in Linux
La perspectiva del Atacante
M´todos de Ataque
e
Introducci´n
o
1
Introducci´n
o
Definiciones
Tipos de Rootkits
Funciones Comunes de Rootkits
2
La perspectiva del Atacante
M´todos de Ataque
e
Kernel Hacking
task struct modification
3
La Perspectiva Forense
M´todos de Detecci´n
e
o
4
The End
Hide andFind Rootkits in Linux
La perspectiva del Atacante
M´todos de Ataque
e
M´todos de Ataque
e
Modificaci´n de las estructuras de datos (la misma que
o
contiene los procesos corriendo en el sistema actualmente).
Interceptando las llamadas a sistema mediante la modificaci´n
o
de la tabla de llamadas o del handler de cierta syscall
(Dinamyc or Static Hijacking).
Interrupt Hooking, modificandola tabla de descriptores de las
interrupciones (IDT) 0x80.
Modificando la memoria del kernel (/dev/kmem).
Interceptando el manejo de llamadas del VFS (/proc /sys)
Virtual Memory Subversion, un ataque novedoso para
presentar vistas de la memoria de los procesos.
Hide and Find Rootkits in Linux
La perspectiva del Atacante
Kernel Hacking
Introducci´n
o
1
Introducci´n
o
DefinicionesTipos de Rootkits
Funciones Comunes de Rootkits
2
La perspectiva del Atacante
M´todos de Ataque
e
Kernel Hacking
task struct modification
3
La Perspectiva Forense
M´todos de Detecci´n
e
o
4
The End
Hide and Find Rootkits in Linux
La perspectiva del Atacante
Kernel Hacking
Escondiendo desde el Kernel
The Ring Model
Intel tiene cuatro anillos
MS Windows yotros,
manejan solo dos.
Usando solo dos niveles de
privilegios, no hay separaci´n
o
entre el kernel y los drivers
(root es tambi´n ring-3).
e
Los drivers pueden modificar
la memoria asociada con
objetos del kernel... tales
como aquellos que
representan un proceso.
Hide and Find Rootkits in Linux
La perspectiva del Atacante
Kernel Hacking
Introduciendo al LKM
Las comunicaciones...
Regístrate para leer el documento completo.