Download Análisis Forense en Sistemas Windows Escenario de una

Document related concepts

Microsoft Security Essentials wikipedia , lookup

Registro de Windows wikipedia , lookup

Autoexec.bat wikipedia , lookup

Alternate Data Streams wikipedia , lookup

Config.sys wikipedia , lookup

Transcript
Análisis Forense en Sistemas
Windows
APIA - 2010
Victor Pérez Roche
[email protected]
Servicio de Informática y Comunicaciones - Universidad de Zaragoza
Análisis Forense en Sistemas Windows
Resumen de la sesión
Resumen de la sesión:
Teoría:
 Introducción
 Motivaciones para una intrusión
 Escenario de una intrusión/infección: El caso de las Botnets
 Obtención de evidencias
 La naturaleza de los archivos
 Análisis forense avanzado
Prácticas:
• Análisis de un entorno vulnerado real con las siguientes suites:
• Sysinternals suite
• GnuWin32
• FoundStone Forensic Tools
• Caine WinTaylor
• WinHex
Servicio de Informática y Comunicaciones - Universidad de Zaragoza
Análisis Forense en Sistemas Windows
Introducción
Ante un sistema vulnerado, aun reparando por donde se
han “colado”, existe la posibilidad de que hayan instalado:
Backdoors
Troyanos
Keyloggers
Bots
…
Servicio de Informática y Comunicaciones - Universidad de Zaragoza
Análisis Forense en Sistemas Windows
Introducción
El análisis forense busca conocer:
1.- Qué método utilizó el atacante
2.- Qué actividades realizó (o está realizando)
3.- Desde donde se realizó la intrusión
4.- Qué daños se han producido en el sistema
5.- ¿Puede volver a ocurrir?
El objetivo de la sesión además del análisis
forense es el conocer más acerca del
funcionamiento interno de los sistemas
Windows
Servicio de Informática y Comunicaciones - Universidad de Zaragoza
Análisis Forense en Sistemas Windows
Introducción
Sistema “vivo”
PROS
• Fecha y hora del sistema
• Memoria RAM activa
• Procesos arrancados
• Actividad de red, conexiones abiertas
• Conexiones de Red
• Usuarios conectados en el momento
CONS
• Cualquier activdad “altera” el entorno
Servicio de Informática y Comunicaciones - Universidad de Zaragoza
Sistema “desconectado”
PROS
• Análisis del sistema “congelado”
• Multiples copias del entorno
• Posibilidad de realizar hash
• Mayor validez jurídica
CONS
• Solamente disponemos del HDD
Análisis Forense en Sistemas Windows
Introducción
Existe la posibilidad de hacer una “imagen” de un sistema
vivo y analizarla off-line
• Copia y envío de todo el sistema de ficheros (WinDD)
• Volcado y envío de la memoria física del sistema
(Helix)
No se puede hacer análisis del archivo de paginación
Servicio de Informática y Comunicaciones - Universidad de Zaragoza
Análisis Forense en Sistemas Windows
Motivaciones para una intrusión
Hace 25 años
• Grandes sistemas (VAX, Unix, etc..)
• Poca disponibilidad de herramientas
• Ataques manuales realizados por personas muy expertas en la materia
• Objetivo: Obtener shell en la máquina destino
Servicio de Informática y Comunicaciones - Universidad de Zaragoza
Análisis Forense en Sistemas Windows
Motivaciones para una intrusión
Hace 15 años
• Comienzo de las conexiones a Internet en los hogares españoles
• Comienzo de la proliferación de tecnologías web (IIS)
• Empiezan a aparecer las primeras herramientas para automatizar ataques
• Infecciones masivas debidas a virus en el correo electrónico (Melisa, CIH, I
Love You)
• Dialers
• Objetivo: Infecciones masivas
• CIH: 20-80 M$
• Melissa: 200-300 M$
• IloveYou: 10-15 B$
Servicio de Informática y Comunicaciones - Universidad de Zaragoza
Análisis Forense en Sistemas Windows
Motivaciones para una intrusión
Hace 10 años
• Proliferación de las primeras conexiones de banda ancha (ADSL)
• Intrusiones masivas con “objetivo”: Warez Scene, MP3, DivX…
• Grandes infecciones: Code Red, Code Red II, Nimda, Sasser, Blaster…
• Objetivo: Robo de ancho de banda y espacio en disco
• CodeRed: 2.6 B$ (1M de infecciones)
• Sasser: 10 M$
Servicio de Informática y Comunicaciones - Universidad de Zaragoza
Análisis Forense en Sistemas Windows
Motivaciones para una intrusión
Hace 5 años
Nuevos vectores de infección: (Navegadores, XSS, CSRF, SQLi, …)
Altísima especialización en el desarrollo de nuevos sistemas de infección
Gran capacidad de reacción ante nuevas vulnerabilidades
Creación de entornos muy avanzados para explotar las vulnerabilidades
metasploit – [ http://www.metasploit.com ]
ExploitDB – [ http://www.exploit-db.com/ ]
…
Explosión de la Web 2.0: Nuevo entorno de infección
Objetivo: Ordenadores zombies, robo de credenciales,
extorsión, etc…
Servicio de Informática y Comunicaciones - Universidad de Zaragoza
Análisis Forense en Sistemas Windows
Motivaciones para una intrusión
Hoy en día
• Utilización de la tecnología como arma
• Ataques dirigidos contra objetivos concretos con vulnerabilidades todavía no
publicadas
• Infección en dispositivos móviles (Android, Symbian, iPhone…)
Objetivo: Ataques dirigidos, “guerra” tecnológica
Servicio de Informática y Comunicaciones - Universidad de Zaragoza
Análisis Forense en Sistemas Windows
Motivaciones para una intrusión
Otras motivaciones:
[ www.zone-h.org ]
Servicio de Informática y Comunicaciones - Universidad de Zaragoza
Análisis Forense en Sistemas Windows
Escenario de una intrusión - BotNets
BOTNETS
- Infecciones masivas de SO Windows, Servidores con CMS (Joomla,
WordPress…)
- Vías de propagación:
 Vulnerabilidades de SO ya conocidas
 RPC/DCOM, RPC/Locator, WebDAV, Network Shares, LSASS
buffer overflow, SQL Server, UPnP …
 P2P (Ejecutables, cracks…)
 Navegación por webs maliciosas
…
- iRC-BOTS: SpyBOT, SDBot, Agobot, Rbot …
Servicio de Informática y Comunicaciones - Universidad de Zaragoza
Análisis Forense en Sistemas Windows
Escenario de una intrusión - BotNets
¿Cuántos son?
-Botnet “Mariposa“, Feb 3, 2010 – 13 Millones de equipos
infectados
- Se calcula entre 60 y 100 Millones de equipos infectados en todo el mundo.
Fuente: PandaLabs Q1_2010
Servicio de Informática y Comunicaciones - Universidad de Zaragoza
Análisis Forense en Sistemas Windows
Escenario de una intrusión - BotNets
Funcionamiento de una botnet
Intenta infectar a los
equipos de tu red
Soy ESP_8547HKEY2
¿Que quieres que haga?
Servicio de Informática y Comunicaciones - Universidad de Zaragoza
Análisis Forense en Sistemas Windows
Escenario de una intrusión - BotNets
Usos de las botnets
1.- Click Fraud
1 Click en un banner
0,000001 $
x10.000 hosts
Servicio de Informática y Comunicaciones - Universidad de Zaragoza
Análisis Forense en Sistemas Windows
Escenario de una intrusión - BotNets
Usos de las botnets
1.- Distributed DoS (Denial of Service)
300 kbits
3000 Mbps
ADSL 300 kbs upload
24 de Febrero del 2006
x10.000 hosts
ProBlogger.com
2003, DDoS contra eBay…
20.000 hosts = 5000$
Yahoo, Amazon, Microsoft,
Akamai…
Servicio de Informática y Comunicaciones - Universidad de Zaragoza
Análisis Forense en Sistemas Windows
Escenario de una intrusión
Spamming
Proxy SOCKS v4/v5
Spam
Botnet 10k hosts
100$ USD/hour
+ phishing, recolección de direcciones de correo, …
Se calcula que el 90% del spam enviado actualmente proviene de equipos zombies
pertenecientes a alguna botnet (Fuente: PandaLabs Q1_2010)
Servicio de Informática y Comunicaciones - Universidad de Zaragoza
Análisis Forense en Sistemas Windows
Escenario de una intrusión
Robo de información sensible
Traffic Sniffing
Keylogging (PayPal, tarjetas de crédito…)
Claves de acceso a Juegos online
(Diablo II, World of Warcraft…)
…
Servicio de Informática y Comunicaciones - Universidad de Zaragoza
Análisis Forense en Sistemas Windows
Escenario de una intrusión
¿Solo para gurus?
NO! El código fuente está disponible en la red…
(Hack Tool) Rbot (v0.3.2) Source.rar
(rbot)x0n3-Satan-v1.0-Priv8-By-CorryL{x0n3-h4ck}.rar
Phatbot C++ Source Code.rar
Virus-Worm-Agobot.tar.bz2
...
El código origen de la BotNet “Mariposa“ fue comprado
por Internet
Servicio de Informática y Comunicaciones - Universidad de Zaragoza
Análisis Forense en Sistemas Windows
Escenario de una intrusión
Servicio de Informática y Comunicaciones - Universidad de Zaragoza
Análisis Forense en Sistemas Windows
Antes de empezar
Antes de empezar…
El análisis de un sistema siempre:
 Es un proceso “farragoso”
 Tiende a ramificarse
 Va a llevar mucho más tiempo del que originalmente teníamos pensado dedicar
 Normalmente es imposible alcanzar un nivel de 100% fiabilidad
Es por eso que es conveniente saber cual es el objetivo que perseguimos antes de
empezarlo.
 Si no disponemos de tiempo → Formatear será más rápido
 Si no estamos dispuestos a llegar al “fondo” → Formatear será más seguro
 Si no vamos a obtener ninguna información de valor → Formatear será más útil
Servicio de Informática y Comunicaciones - Universidad de Zaragoza
Análisis Forense en Sistemas Windows
Antes de empezar
Si a pesar de todo deseamos continuar…
Hace falta:
 Ser extremadamente ordenado: Seguir un guión
 Tomar nota de todo lo que se encuentre: Papel y boli, notepad, etc…
 Ser diligente en guardar las pruebas encontradas
 Disponer de suficiente tiempo (“En 10 minutos esto no va a estar hecho”)
 Disponer de un entorno adecuado: Herramientas “a mano”
Servicio de Informática y Comunicaciones - Universidad de Zaragoza
Análisis Forense en Sistemas Windows
Obtención de evidencias
Orígenes de información
Virus/Malware/Worms:
 Procesos activos y actividad de los mismos
 Conexiones activas y puertos en escucha
 Servicios y arranque del sistema
 Sistema de ficheros (Contenido, Fechas de creación, modificación y acceso)
 Ficheros sospechosos
 Registro del sistema y otros logs
Intrusiones “manuales”:
 Cuentas y perfiles de usuario
 Papelera de reciclaje
 Sistema de ficheros avanzado (Pagefile.sys, Alternate Data Streams…)
 Información de navegación por Internet
 Posible ocultación de datos con técnicas de rootkit.
Servicio de Informática y Comunicaciones - Universidad de Zaragoza
Análisis Forense en Sistemas Windows
Presentación del entorno de Análisis
Imagen VMWare de un Sistema WindowsXP vulnerado
Usuario/apia
Servicio de Informática y Comunicaciones - Universidad de Zaragoza
Análisis Forense en Sistemas Windows
Presentación del entorno de Análisis
Se trata de un análisis de un sistema “vivo”, lo más conveniente sería utilizar un CD que
incluyese:
•Al menos incluye una versión “limpia” de CMD.EXE que corresponda al sistema operativo
a analizar
•netcat o cryptcat
•Herramientas de sistema (ipconfig, netstat, date,time, net, arp ...) para las diferentes
versiones de Windows y Service Pack
•pstools, listdlls, filemon*, regmon*, autoruns...
•hfind, fport, ntlast, ...
•Windows resource kit tools
•Un buen sniffer (wireshark, windump, ...)
•md5sum / md5deep
Servicio de Informática y Comunicaciones - Universidad de Zaragoza
Análisis Forense en Sistemas Windows
Paso #01: Información general del sistema
Varias posibilidades:
a) Utilizar el comando de sistema Windows systeminfo
C:\...\> systeminfo > #01_infoSistema.txt
b) Utilizar la utilidad psinfo de Sysinternals
C:\...\> psinfo -hsd > #01_infoSistema.txt
[ ¿Algo raro? ]
Servicio de Informática y Comunicaciones - Universidad de Zaragoza
Análisis Forense en Sistemas Windows
Paso #02: Procesos activos
Varias posibilidades:
a) Utilizar el comando de sistema Windows tasklist
C:\...\> tasklist > #02_listaProcesos.txt
b) Utilizar la utilidad psinfo de Sysinternals
C:\...\> pslist -t > #02_listaProcesos.txt
c) Administrador de tareas [Ctrl+Alt+Supr]
d) Process Explorer de SysInternals
Process Tree
Visible Columns & Select Columns
Interrupts & Deferred Procedure Calls (DPC)
Drag & Drop
Process Properties
Search online
Servicio de Informática y Comunicaciones - Universidad de Zaragoza
[ ¿Algo raro? ]
Análisis Forense en Sistemas Windows
Paso #03 : Monitorizar la actividad de los procesos
#03.1: Verificar qué modulos cargan los procesos
Utilidad listdll de Sysinternals
C:\...\> listdlls > #03.1_listaModulos.txt
#03.2: Verificar qué manejadores están usando los procesos
Utilidad handle de Sysinternals
C:\...\> handle > #03.2_listaManejadores.txt
#03.3: Verificar la actividad en tiempo real de los procesos activos
Utilidad procmon de Sysinternals
[ ¿Algo raro? ]
Servicio de Informática y Comunicaciones - Universidad de Zaragoza
Análisis Forense en Sistemas Windows
Paso #03 : Monitorizar la actividad de los procesos
#03.4: Analizar el directorio c:\windows\prefetch
C:\...\> dir /o:d c:\Windows\prefetch > #03.4_listaPrefetch.txt
O con la utilidad WinPrefetchView de Nirsoft
Servicio de Informática y Comunicaciones - Universidad de Zaragoza
Análisis Forense en Sistemas Windows
Paso #04: Conexiones de red
Varias posibilidades:
a) Utilizar el comando de sistema Windows netstat
C:\...\> netstat -nabo > #04_listaPuertos.txt
b) Utilizar la utilidad tcpvcon de Sysinternals
C:\...\> tcpvcon -t > #04_listaPuertos.txt
c) Utilizar la utilidad fport de Foundstone
C:\...\> fport > #04_listaPuertos.txt
d) Utilidades gráficas como tcpview de Sysinternals o activeports
e) Tabla arp: C:\...\> arp –a
f) Tabla de rutas: C:\...\> route -print
[ ¿Algo raro? ]
Servicio de Informática y Comunicaciones - Universidad de Zaragoza
Análisis Forense en Sistemas Windows
Paso #05: Servicios del Sistema y Arranque automático
Para conocer los servicios y el estado de estos dos posibilidades:
a) Utilizar el comando de sistema Windows sc
C:\...\> sc query > #05.1_listaServicios.txt
b) Utilizar la utilidad psservice de Sysinternals
C:\...\> psservice -t > #05.1_listaServicios.txt
Para conocer lo que se arranca al incio del sistema
c) Usar la utilidad autorunsc de Sysinternals
C:\...\> autorunsc > #05.2_arranqueSistema.txt
c) Usar la utilidad gráfica autoruns de Sysinternals
[ ¿Algo raro? ]
Servicio de Informática y Comunicaciones - Universidad de Zaragoza
Análisis Forense en Sistemas Windows
Paso #06: Sistema de ficheros y fechas de acceso
Como primera medida, guardar un listado completo de todos los ficheros de un
disco:
C:\> DIR /t: a /a /s /o: d c:\ > #06.1_sistemaFicheros.txt
E investigar dentro de este listado.
También podemos utilizar la herramienta MacMatch
C:\> macmatch c:\ -a 2010-01-28:11.23 2010-01-28:12.00
Servicio de Informática y Comunicaciones - Universidad de Zaragoza
Análisis Forense en Sistemas Windows
Paso #06: Sistema de ficheros y fechas de acceso
Conocer los ficheros que hay abiertos en un determinado momento:
a) Localmente con la utilidad OpenedFilesView de NirSoft
C:\...\> openedfilesview /stext > #06.2_ficherosAbiertosLocal.txt
(tambien tiene gui)
a) Remotamente con la utilidad psfile de Sysinternals
C:\...\> psfile > #06.3_ficherosAbiertosRemoto.txt
Servicio de Informática y Comunicaciones - Universidad de Zaragoza
Análisis Forense en Sistemas Windows
Paso #07 – Análisis de ficheros
Varios pasos
a) Identificación del tipo de fichero, utilidad file de GnuWin32
C:\> file _nombre_fichero
b) Búsqueda de cadenas de texto en un binario con strings de SysInternals
C:\> strings _nombre_fichero
c) Editor hexadecimal WinHex
Servicio de Informática y Comunicaciones - Universidad de Zaragoza
Análisis Forense en Sistemas Windows
Paso #08 – Analisis avanzado de Binarios
Tipos de archivos “maliciosos”
Paso #08.1 – Análisis automático del comportamiento de binarios
[ http://www.virustotal.com ]
[ http://www.threatexpert.com ]
Complemento VirusTotal Uploader
O Norman SandBox
[ http://www.norman.com/microsites/nsic ]
Servicio de Informática y Comunicaciones - Universidad de Zaragoza
Análisis Forense en Sistemas Windows
Paso #08 – Análisis avanzado de binarios
Varios pasos
b) Volcado de memoria de un proceso con procdump de SysInternals
C:\...\> procdump _nombre_proceso
Luego podemos analizar el archivo dmp con strings o WinHex
Otros
c) Verificar aquellos exe y dll que no están firmados
C:\...\> sigcheck –e –u c:\windows
Servicio de Informática y Comunicaciones - Universidad de Zaragoza
Análisis Forense en Sistemas Windows
Paso #09 – Análisis del Registro del sistema
Windows almacena la mayor parte de la configuración del sistema en una serie de
archivos que son conocimos como “Registro”. Estos se encuentran en el directorio
%systemroot%\system32\config y están asociados a una sección del registro:
Servicio de Informática y Comunicaciones - Universidad de Zaragoza
Análisis Forense en Sistemas Windows
Paso #09 – Análisis del Registro del sistema
Claves interesantes:
Listado de ultimos ficheros abiertos y cerrados:
HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\ComDlg32\OpenSaveMRU
HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\ComDlg32\LastVisitedMRU
Listado de ultimos documentos abiertos:
HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\RecentDocs
Listado de ultimos procesos ejecutados:
HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\RunMRU
Listado de ultimas páginas visitadas:
HKCU\Software\Microsoft\Internet Explorer\TypedURLs\
Aplicaciones instaladas y desinstaladas:
HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall
Sistemas de ficheros montados:
HKLM \SYSTEM\MountedDevices
Se puede acceder fácilmente a ellas usando regjump de SysInternals
Servicio de Informática y Comunicaciones - Universidad de Zaragoza
Análisis Forense en Sistemas Windows
Paso #09 – Análisis del Registro del sistema
Con la utilidad RegRipper podemos automatizar el análisis forense de un archivo
de registro de usuario:
Nota: La rama HKCU se encuentra en C:\Documents and Settings\Usuario\NTUSER.dat
RegRipper no funciona sobre ficheros de registro o hives abiertos, o bien tendremos que abrir un hive de
un usuario con sesión cerrada o obtener los hives con el sistema off line (o FTK image)
Servicio de Informática y Comunicaciones - Universidad de Zaragoza
Análisis Forense en Sistemas Windows
Paso #09 – Análisis del Registro del sistema
Podemos revisar el registro de un sistema o las claves asociadas a un usuario
mediante las siguientes herramientas:
• Regedit (Visor y editor del registro)
• RFV (Windows Registry File Viewer de MiTec)
• WRR (Windows Registry Recovery de MiTec)
• Comando nativo XP FC (Compara ficheros)
• Access Data Registry Viewer
• Windiff (Herramienta para comparar ficheros)
Servicio de Informática y Comunicaciones - Universidad de Zaragoza
Análisis Forense en Sistemas Windows
Paso #10 – Registro de eventos
Los sucesos de un sistema Windows se almacenan y están igualmente en el
directorio %systemroot%\system32\config. Son tres:
 SysEvent.Evt. Registra los sucesos relativos al sistema
 SecEvent.Evt. Registra los sucesos relativos a la seguridad
 AppEvent.Evt. Registra los sucesos relativos a aplicaciones
Para acceder a la visualización: Inicio -> Ejecutar: “eventvwr”
Cada suceso tiene información sobre el momento en que ha tenido lugar y el entorno, para más
información:
EventID:
[ http://www.eventid.net ]
Windows Security Log Events
[ http://tinyurl.com/2zyvun ]
Knowledge base Microsoft:
[ http://www.microsoft.com/spain/technet/recursos/knowledge.mspx ]
Servicio de Informática y Comunicaciones - Universidad de Zaragoza
Análisis Forense en Sistemas Windows
Paso #10 – Registro de eventos
En un sistema especialmente crítico podemos habilitar la auditoría de determinado
tipo de eventos:
Inicio -> Ejecutar -> gpedit.msc
Configuracion del equipo -> Configuracion de Windows -> Configuración de Seguridad -> Directivas locales
-> Directiva de auditoría
Se pueden auditar el acceso exitoso o erróneo a un recurso.
Toda la información generada se almacenará en la rama SecEvent.Evt
Servicio de Informática y Comunicaciones - Universidad de Zaragoza
Análisis Forense en Sistemas Windows
Paso #10 – Registro de eventos
Análisis del registro de eventos
a) Utilidad logparser de Microsoft (Hay que descargarla)
C:\...\> logparser –i:EVT –o:DATAGRID “SELECT * FROM system”
Nota: Logparser es una herramienta muy potente
para realizar búsquedas sobre distintos orígenes de
datos y con posibilidad de generar distintas salidas:
Recomendación: VisualLogParser
Servicio de Informática y Comunicaciones - Universidad de Zaragoza
Análisis Forense en Sistemas Windows
Paso #11 – Cuentas y perfiles de usuarios
En ocasiones es conveniente repasar los usuarios de un sistema, para buscar
posibles “nuevas cuentas”
Para esto, además de revisar el visor de sucesos para buscar eventos de nueva
creación de cuentas, podemos ejecutar:
compmgmt.msc
Usuarios locales y grupos
Los archivos e información vinculada a cada usuario se almacena en el directorio:
C:\Documents and settings\nombre_de_usuario
Servicio de Informática y Comunicaciones - Universidad de Zaragoza
Análisis Forense en Sistemas Windows
Paso #11 – Cuentas y perfiles de usuarios
Para conocer cuando se han realizado los inicios de sesión necesitaremos en
primer lugar que ese tipo de eventos se encuentre auditado. Luego:
a) Usar la utilidad netusers
C:\...\> netusers /l /history > #11_logonLocalUsers.txt (acceso local)
C:\...\> netusers /history > #11_logonRemoteUsers.txt (acceso remoto)
b) Usar la utilidad ntlast de FoundStone
C:\...\> ntlast –null –s –v –n 100 > #11_lastLogon.txt (100 últimos accesos exitosos)
C:\...\> ntlast –null –f –v –n 100 > #11_lastFailedLogon.txt (fallidos)
c) Usar la utilidad psloggedon de SysInternals
C:\...\> psloggedon
Nota: Para relacionar SID y Username -> user2sid y sid2user
Servicio de Informática y Comunicaciones - Universidad de Zaragoza
Análisis Forense en Sistemas Windows
Paso #11 – Cuentas y perfiles de usuarios
Tipos de inicio de sesión:
• Tipo 2: Interactivo. Entrada a un sistema desde la consola (teclado)
• Tipo 3: Red. Entrada al sistema a través de la red. Por ejemplo con el comando net use,
recursos compartidos, impresoras, etc...
• Tipo 4: Batch. Entrada a la red desde un proceso por lotes o script programado.
• Tipo 5: Servicio. Cuando un servicio arranca con su cuenta de usuario.
• Tipo 7: Unlock. Entrada al sistema a través de un bloqueo de sesión.
• Tipo 10: Remote Interactive. Cuando accedemos a través de Terminal Services, Escritorio
Remoto o Asistencia Remota.
Servicio de Informática y Comunicaciones - Universidad de Zaragoza
Análisis Forense en Sistemas Windows
Paso #12 – Papelera de reciclaje y ficheros borrados
Funcionamiento del la papelera de reciclaje
C:\RECYCLER\_USER_ID\INFO2 -> Información sobre ficheros borrados
C:\RECYCLER\_USER_ID\DC1.xxx -> Fichero borrado 1
C:\RECYCLER\_USER_ID\DC2.xxx -> Fichero borrado 2
…
Para extraer información de los ficheros borrados de un determinado user utilidad
Rifiuti de FoundStone
C:\...\rifiuti C:\RECYCLER\_USER_ID\INFO2 > INFO2.TXT
Para recuperar ficheros de un sistema “vivo” podemos usar
Recuva de Piriform disponible en el entorno WinTaylor de Caine
Servicio de Informática y Comunicaciones - Universidad de Zaragoza
Análisis Forense en Sistemas Windows
Paso #13 – Información de navegación por Internet
En sistemas Windows se almacena un historial de navegación con Internet
Explorer en uno archivos, Index.dat ubicados en:
•
•
•
\Documents and settings\_username\Configuración Local\Archivos temporales de internet\Content.IE5
\Documents and settings\_username\Configuración Local\Historial\History.IE5
\Documents and settings\_username\Cookies
Para su análisis podemos usar la herramienta pasco de FoundStone
C:\...\pasco –d –t index.dat > #13.1_historialNavegacion.txt
Otro elemento clave en la navegación son las cookies, para esto usaremos la
herramienta galleta de FoundStone
C:\...\galleta fichero_cookie
Servicio de Informática y Comunicaciones - Universidad de Zaragoza
Análisis Forense en Sistemas Windows
Paso #13 – Información de navegación por Internet
Firefox desde su versión 3 y Chrome almacenan el historial en un archivo .sqlite.
Para analizar el contenido
• f3e de firefoxforensics
• FoxAnalysis de forensic-software.co.uk
Servicio de Informática y Comunicaciones - Universidad de Zaragoza
Análisis Forense en Sistemas Windows
Paso #14 – Análisis de pagefile.sys e hiberfile.sys
En los sistemas windows se utiliza por defecto la memoria virtual. Cuando
windows necesita más memoria RAM de la que dispone un equipo, envía a disco
“paginas” poco o nada usadas, si vuelve a necesitar datos contenidos en páginas
enviadas a disco, descarga otras y vuelve a cargar.
Ese proceso se conoce como “Fallo de página”
Existe un archivo en el raiz del sistema llamado pagefile.sys. Este archivo contiene
trazas de memoria de los procesos que se están ejecutando, y puede ser
“examinado” en un proceso offline:
1.Buscando cadenas dentro de él, con strings de SysInternals
2.Filtrando la salida con un grep [ http://unxutils.sourceforge.net/ ] para que
contenga información “útil”
hiberfile.sys contiene la RAM de un sistema hibernado
Nota: El análisis de estos archivos se tiene que hacer con el sistema “muerto”
Servicio de Informática y Comunicaciones - Universidad de Zaragoza
Análisis Forense en Sistemas Windows
Paso #15 – Búsqueda de información oculta
Para buscar automáticamente todos los ficheros marcados como ocultos en
nuestro sistema usaremos hfind de FoundStone
C:\...\> hfind > #15.1_ficherosOcultos.txt
[ ¿Algo raro? ]
Servicio de Informática y Comunicaciones - Universidad de Zaragoza
Análisis Forense en Sistemas Windows
Paso #15 – Búsqueda de información oculta
Paso #15.2 – Alternate Data Streams
En sistemas NTFS, los ficheros almacenados en disco son un conjunto de data
streams. En cada fichero hay un Stream principal con los datos del fichero y otros
streams asociados con metainformación del fichero principal.
La información almacenada en los ADS permanece oculta a
las herramientas habituales del sistema (cmd, explorer, etc…)
y no se envía por internet. Este sistema de almacenamiento
de información está siendo usado por virus/malware/hackers…
Servicio de Informática y Comunicaciones - Universidad de Zaragoza
Análisis Forense en Sistemas Windows
Paso #15 – Búsqueda de información oculta
Para crear un ADS:
C:\> echo texto_a_introducir_en_ads > nombre_fichero_principal:Nombre_ADS
Podemos crear un ADS que contenga código ejecutable:
C:\> type c:\windows\system32\notepad.exe > prueba.txt:ntpd.exe
Y ejecutarlo posteriormente con psexec de Sysinternals
C:\> psexec prueba.txt:ntpd.exe
Para detectar ADS podemos usar streams de Sysinternals
C:\...\> streams –s c:\ > #15.2_alternateDataStreams.txt
O también AlternateStreamView de Nirsoft
Servicio de Informática y Comunicaciones - Universidad de Zaragoza
[ ¿Algo raro? ]
Análisis Forense en Sistemas Windows
Paso #16 - Rootkits
Los rootkits con programas que tienen como objeto el ocultar información al
sistema operativo, ya sea:
 A sí mismo
 Otros programas (procesos)
 Servicios
 Ficheros
 Directorios
 Claves de registro
 Conexiones de red
 Espacio libre en disco, …
Existen dos tipos básicos de rootkits:
• application level: Sustituyen los programas/dll habituales que realizan la gestión
de los procesos a ocultar (cmd.exe, explorer.exe, netstat … )
• kernel-mode: Vigilan todas las llamadas al sistema, filtrando aquellas que
desean ocultar.
Servicio de Informática y Comunicaciones - Universidad de Zaragoza
Análisis Forense en Sistemas Windows
Paso #16 - Rootkits
Existen cinco tipos de rootkits. Tres “funcionales” y dos de laboratorio
• application level: Sustituyen los programas habituales que realizan la gestión de
los procesos a ocultar (cmd.exe, explorer.exe, netstat … )
• library level: Reemplazan, modifican o se “enganchan” a las llamadas al sistema
modificando las dll que contienen el código responsable de realizarlas.
• kernel-level: Rootkits que trabajan al mismo nivel que el “core” del sistema
operativo, modificando el kernel o los drivers. Estos rootkits son especialmente
peligrosos, ya que suelen permanecer ocultos a los antivirus.
• Hypervisor-level: Son cargados antes del sistema operativo y modifican su
comportamiento a través de avanzadas técnicas de virtualización que incorporan
los microprocesadores actuales [Intel-VT, AMD-V]. De hecho, el rootkit carga el
sistema operativo anfitrión en un entorno virtual. [ Blue Pill by Joanna Rutkowska ]
• Hardware/Firmware level: Los rootkits se introducen a nivel de hardware. Por
ejemplo, [ Blog Sergio Hernando – Fraude en la cadena de suminstro ]
Servicio de Informática y Comunicaciones - Universidad de Zaragoza
Análisis Forense en Sistemas Windows
Paso #16 - Rootkits
Un ejemplo: Hacker Defender 1.00, un rookit a nivel de kernel
[ http://balaitous.unizar.es/crs3ed/hxdef100.zip ]
C:\> notepad hxdef100.2.ini
C:\> hxdef100.exe hxdef100.2.ini
Nota: Desactivar el antivirus… hasta ponerlo a funcionar :)
C:\> net stop HackerDefender100
El problema clásico es que no siempre los antivirus son capaces de detectar los
rootkits, sobre todo si están ya funcionando antes de realizar el escaneo.
Solución:
- Rootkit Revealer de SysInternals
- BlackLight de FSecure
Servicio de Informática y Comunicaciones - Universidad de Zaragoza
Análisis Forense en Sistemas Windows
Paso #17 – Análisis de tráfico
Si disponemos de una captura de tráfico generado por un sistema podemos
realizar un análisis de la misma de varias formas:
a) Utilizando Wireshark de CACE Technologies
•
•
•
•
Tráfico en modo “crudo”
Sesiones HTTP, FTP, etc…
Sesiones RTP, SIP, VoIP
Análisis de cientos de protocolos de red
b) Utilizando NetworkMiner
•
•
•
•
•
•
Detección de sistemas operativos implicados en la captura de red
Sesiones
Hostnames
Puertos abiertos
Archivos/Imágenes transferidos
Credenciales utilizadas
Servicio de Informática y Comunicaciones - Universidad de Zaragoza
Análisis Forense en Sistemas Windows
Paso #18 – Entornos automatizados
Existen entornos automatizados que agrupan muchas de las herramientas y
técnicas de detección vistas hasta ahora. Algunos de ellos:
- COFEE, Computer Online Forensic Evidence Extractor (Microsoft – No pública)
- IRCR, Incident Response Collection Report – Requiere de Helix Live CD
- WFT, WINDOWS FORENSIC TOOLCHEST – Requiere de Helix Live CD
- RAPIER, Rapid Assessment & Potential Incident Examination Report
[ http://code.google.com/p/rapier/ ]
Son capaces de generar un archivo con las pruebas
recolectadas, e incluso incluyen un servidor para
recolectar los datos.
Servicio de Informática y Comunicaciones - Universidad de Zaragoza
Análisis Forense en Sistemas Windows
Paso #18 – Entornos automatizados
Otro software de interés relacionado con la verificación de un sistema windows
• MBSA, Microsoft Baseline Security Analyzer
• Conan de INTECO
Servicio de Informática y Comunicaciones - Universidad de Zaragoza
Análisis Forense en Sistemas Windows
Análisis forense avanzado
Algunas utilidades
 Win32DD + Volatility (Imagen de RAM y HDD de un sistema vivo)
 Encase, by Guidance Software
 Forensics Tool Kit, by Access Data
 Autopsy, Open source - http://www.sleuthkit.org/autopsy
Permite “cargar” una imagen realizada con dd de un sistema completo. Permite
realizar numerosas acciones:
 File Listing
 File Content
 Hash Databases
 File Type Sorting
 Timeline of File Activity
 Keyword Search
 Meta Data Analysis
 Data Unit Analysis
 Image Details
…
Servicio de Informática y Comunicaciones - Universidad de Zaragoza
Sesión 4– Protocolos de transporte
Referencias
Doc:
http://www.elhacker.net/InfoForenseWindows.htm
http://www.forensicswiki.org
http://blog.ismaelvalenzuela.com/
http://www.net-security.org/article.php?id=1173&p=1
http://www.rootkit.com
Tools:
http://www.virustotal.com/es/
http://www.mandiant.com/mrc
http://code.google.com/p/rapier/
http://www.sleuthkit.org/autopsy/
http://www.foundstone.com
http://technet.microsoft.com/en-us/sysinternals
Servicio de Informática y Comunicaciones - Universidad de Zaragoza