¿Qué es la memoria RAM?
Introducción
Qué puede contener un volcado de memoria
Procesos en ejecución
Iexplore
LSASS
Procesos en fase de terminación
Conexiones activas
TCP
UDP
Puertos
Ficheros mapeados
Drivers
Ejecutables
Ficheros
Objetos Caché
Direcciones Web
Passwords
Comandos tipeados por consola
Elementos ocultos
Rootkits (Userland & KernelLand)
¿Cómo se estructura la memoria?
KernelLand (Ring0)
Tendrá permiso para acceder a todo el espacio de memoria
Podrá comunicarse con el Hardware
UserLand (Ring3)
Apis podrán comunicarse con el Kernel
Nivel con menor privilegio
Acceso a Memoria Virtual
Qué se busca y por qué…
EPROCESS
Estructura que contiene datos relativos a un proceso
Representación que hace Windows para cada proceso
Fecha Creación, cuotas de uso, Token, PID
THREADS
Cada proceso puede crear 1 o más hilos en ejecución
Como mínimo se crea uno por cada proceso en ejecución (Puntero a proceso)
Tiempo de Kernel
PEB
Información sobre la Imagen
Estructuras que residen en el espacio de memoria del usuario
Virtual Memory & Physical Memory
Permite al proceso usar más memoria que la que hay realmente
Cada proceso obtiene 4GB de memoria RAM virtuales (32Bits)
El S.O. se encarga de traducir esas direcciones virtuales a direcciones físicas de memoria
Captura de memoria RAM
Siguiendo el orden de volatilidad, los datos contenidos en la RAM son extremadamente volátiles.
Reinicios
Apagados
Corrupciones
Verificar la integridad de los datos
Se tiene que preparar el sistema para que lo soporte
No sólo se captura lo activo…
La información que podemos recopilar depende de muchos factores
Sistema operativo
Time Live de la máquina
Tamaño de la memoria
Memoria RAM Paginada
Paginación
Pagefile.sys
Hyberfil.sys
Configuración de limpieza
http://support.microsoft.com/kb/314834
HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlSession ManagerMemory Management
Reg_DWORD type
ClearPagefileAtShutdown
Value = 1 (Activado)
Métodos de Adquisición
Software:
NotMyFault (Sysinternals)
SystemDump (Citrix)
LiveKD (Sysinternals)
Teclado
HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesi8042prtParameters
DWORD (CrashOnCtrlScroll)
Hardware
Copiadoras
Verificar la integridad
DumpChk (Support Tools)
Herramienta para verificar la integridad de un volcado de memoria
Muy completa (Uptime, Arquitectura, Equipo, fallo, etc…)
Línea de comandos
DumpCheck (Citrix)
Creada por Dmitry Vostokov
Nos muestra sólo si cumple con la integridad o no
Entorno gráfico
Análisis desestructurado de memoria RAM
Strings de Sysinternals
Herramienta para extraer cadenas (ASCII & UNICODE) de un archivo
Podemos identificar objetos almacenados en memoria, datos persistentes, conexiones, Passwords, etc…
FindStr (Microsoft nativa)
Herramienta utilizada para buscar una cadena de texto en el interior de uno o varios archivos
Con la combinación de ambas herramientas podemos extraer gran cantidad de información
[DEMO]
Extraer información archivo Pagefile.sys
Análisis de comandos en CMD.EXE
Análisis de navegación (favoritos, historial)
Análisis de conversación messenger
Análisis estructurado dememoria RAM
Windbg
Poderosa herramienta de depuración
Necesitamos los símbolos para poder trabajar con procesos
Pensada para “todos los públicos”
Mucha granularidad a nivel de comandos
Escalable (Plugins)
Se necesita mucha experiencia
Memparser
Nace con un reto forense de RAM (DFRWS 2005)
Válida sólo para Windows 2000
Una de las más completas en cuanto a funcionalidad
Evoluciona a las KntTools (Pago por licencia)
Ptfinder
Desarrollada en Perl
Extrae información sobre procesos, threads y procesos ocultos (DKOM)
Interpretación gráfica de la memoria
Válida para W2K, XP,XPSP2, W2K3
Detección de procesos ocultos
Wmft
Creada por Mariusz Burdach (http://forensic.seccure.net)
Demo para BlackHat 2006
Válida para Windows 2003
Memory Analisys Tools
Creada por Harlan Carvey (Windows Incident Response)
Disponibles en Sourceforge (http://sourceforge.net/project/showfiles.php?group_id=164158)
Válida para Windows 2000
Similar a Memparser
Conexiones de Red
Volatools
Desarrollada por Komoku Inc
Proyecto vivo!
POC capaz de buscar sockets, puertos, direcciones IP, etc..
Válida hasta XP SP3
[DEMO]
Análisis Estructurado
Extracción de procesos
Detección de procesos ocultos
Extracción de imágenes de ficheros
Conexiones de red
Representación gráfica
Ptfinder
En todas sus versiones, esta herramienta es capaz de representar gráficamente el estado de la memoria.
Podemos analizar qué procesos son los padres y cuáles los hijos
Ideal para proyectos forenses
[DEMO]
Listar procesos en Windows Vista SP1
Representación gráfica
Conclusiones
Cifrado de RAM
Cumplimiento de LOPD?
Ficheros temporales
¿Es sólo la RAM?
Ficheros temporales de:
Documentos ofimáticos
Hyberfil.sys
Impresión de documentos
Página anterior | Volver al principio del trabajo | Página siguiente |