Análisis Forense de la Memoria RAM de un sistema

35
Show me your Memory ! Juan Garrido Consultor Seguridad I64 http://windowstips.wordpress.com http://www.informatica64.com

description

Charla impartida por Juan Garrido de Informática 64, en el I Curso de Verano de Informática Forense de la Facultad de Informática de la Universidad de A Coruña.

Transcript of Análisis Forense de la Memoria RAM de un sistema

Page 1: Análisis Forense de la Memoria RAM de un sistema

Show me

your Memory

! Juan Garrido Consultor Seguridad I64 http://windowstips.wordpress.com http://www.informatica64.com

Page 2: Análisis Forense de la Memoria RAM de un sistema

Agenda Introducción Otros métodos de adquisición Análisis memoria en plataformas Windows

Verificar la integridad Recuperación de datos Detección procesos ocultos Conexiones de red Representación gráfica

Herramientas Preguntas

Page 3: Análisis Forense de la Memoria RAM de un sistema

Introducción

Objetivo

Aplicaciones y sistema operativo

Sistema de ficheros, volumen

RAM, pagefile.sys,hiberfil.s

ysAnálisis de Red

Page 4: Análisis Forense de la Memoria RAM de un sistema

¿Qué es la memoria RAM?

Page 5: Análisis Forense de la Memoria RAM de un sistema

Volátil

Memoria de acceso aleatorio Memoria para programas y datos Memoria temporal Se pierde al apagar el equipo

Page 6: Análisis Forense de la Memoria RAM de un sistema

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

Page 7: Análisis Forense de la Memoria RAM de un sistema

¿Qué hay en la RAM?

Page 8: Análisis Forense de la Memoria RAM de un sistema

Ficheros mapeados Drivers Ejecutables Ficheros

Objetos Caché Direcciones Web Passwords Comandos tipeados por consola

Elementos ocultos Rootkits (Userland & KernelLand)

Page 9: Análisis Forense de la Memoria RAM de un sistema

¿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

Page 10: Análisis Forense de la Memoria RAM de un sistema

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

Page 11: Análisis Forense de la Memoria RAM de un sistema

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

Page 12: Análisis Forense de la Memoria RAM de un sistema

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

Page 13: Análisis Forense de la Memoria RAM de un sistema

Memoria RAM Paginada

Paginación Pagefile.sys Hyberfil.sys Configuración de limpieza

http://support.microsoft.com/kb/314834 HKEY_LOCAL_MACHINE\SYSTEM\

CurrentControlSet\Control\Session Manager\Memory Management

Reg_DWORD type ClearPagefileAtShutdown Value = 1 (Activado)

Page 14: Análisis Forense de la Memoria RAM de un sistema

Métodos de Adquisición

Software: NotMyFault (Sysinternals) SystemDump (Citrix) LiveKD (Sysinternals) Teclado

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\i8042prt\Parameters

DWORD (CrashOnCtrlScroll)

Hardware Copiadoras

Page 15: Análisis Forense de la Memoria RAM de un sistema

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

Page 16: Análisis Forense de la Memoria RAM de un sistema

DEMO

Comprobación Integridad

Page 17: Análisis Forense de la Memoria RAM de un sistema

Análisis memoria RAM

Page 18: Análisis Forense de la Memoria RAM de un sistema

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 archivosCon la combinación de ambas herramientas

podemos extraer gran cantidad de información

Page 19: Análisis Forense de la Memoria RAM de un sistema

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

Page 20: Análisis Forense de la Memoria RAM de un sistema

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

Page 21: Análisis Forense de la Memoria RAM de un sistema

Conexiones de Red

A partir de un PID se puede Extraer información sobre conexiones

de red Sockets abiertos Procesos en fase de terminación

Page 22: Análisis Forense de la Memoria RAM de un sistema

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

Page 23: Análisis Forense de la Memoria RAM de un sistema

Volatility

Volatility Inicialmente desarrollada por Komoku

Inc Comprada por Microsoft en 2008 Proyecto vivo! Capaz de buscar sockets, puertos,

direcciones IP, etc..

Page 24: Análisis Forense de la Memoria RAM de un sistema

DEMO

Volatility

Page 25: Análisis Forense de la Memoria RAM de un sistema

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

Page 26: Análisis Forense de la Memoria RAM de un sistema

Herramientas

Pstools (Sysinternals) http://download.sysinternals.com/Files/PsTools.zip

PtFinder http://computer.forensikblog.de/files/ptfinder/ptfinder-collecti

on-current.zip Windbg

http://www.microsoft.com/whdc/DevTools/Debugging/default.mspx

Memparser http://sourceforge.net/projects/memparser

Volatools https://www.volatilesystems.com/

Wmft http://forensic.seccure.net/

Hidden.dll (Plugin para Windbg) http://forensic.seccure.net/tools/hidden.zip

Page 27: Análisis Forense de la Memoria RAM de un sistema

Referencias

Introducción a la informática forense en entornos WindowsAutor: Silverhackhttp://www.elhacker.net/InfoForenseWindows.htm

Introducción a la informática forense en entornos Windows 2ª parteAutor: Silverhackhttp://www.elhacker.net/InfoForenseWindows2.htm

Introducción a la informática forense en entornos Windows 3ª parteAutor: Silverhackhttp://www.elhacker.net/InfoForense3.html

Formas de Analizar un VirusAutor: Juan Garridohttp://windowstips.wordpress.com/2007/02/25/formas-de-analizar-un-virus-un-paseo-por-rapidshare/ Comportamiento Virus Plataformas WindowsAutor: Silverhackhttp://www.elhacker.net/comportamiento-virus.htm

Page 31: Análisis Forense de la Memoria RAM de un sistema

TechNews de Informática 64

Suscripción gratuita en http://www.informatica64.com/boletines.html

Page 32: Análisis Forense de la Memoria RAM de un sistema

http://Windowstips.wordpress.com

Page 35: Análisis Forense de la Memoria RAM de un sistema

Gracias!;-)