4. El malware tradicional consiste en archivos que se
escriben directamente al almacenamiento y que al ser
ejecutados causan el daño para lo que fueron
diseñados
El contrario, el malware avanzado (fileless) no necesita
almacenamiento, sino que se ejecuta directamente en
memoria RAM con el propósito de evadir antivirus u
otro software de seguridad
Malware tradicional – Malware avanzado
5. Generalmente explota vulnerabilidades en browser y
programas como lectores PDF, macros, JavaScript y
Flash
Phishing es uno de los vehículos más explotados
Técnicas “Living off the Land” – usar PowerShell o WMI
Hit and Run o Persistentes
¿Cómo funciona el malware Avanzado?
6. • Explotación remota, como EternalBlue y CodeRed
Ataques de memoria
• Usar herramientas benignas para causar problemas, como WMI,
PowerShell, RDP, Telnet
Herramientas de doble uso
• Documentos con macros, Javascript, como PDF, Word, PowerShell
Archivos ejecutables no tradicionales (Non-PE)
• Esconder scripts en el registry, WMI o GPO, como Poweliks
Fileless Loadpoint
Tipos de ataque “Fileless”
9. Digital Forensics (DF)
–El Análisis Forense tradicional, realizado de
manera post-mortem
–Se hace después de que ocurra un
problema
Incident Response (IR)
–Examen de un sistema corriendo en vivo
–Orientado a analizar ataques de malware o
intrusiones
Digital Forensics vs. Incident Response
10. Capturar la memoria de un sistema corriendo
Analizar la memoria
Reconstrucción del estado de la memoria
Reconstrucción del escenario completo con imagen de
disco e imagen de memoria
Con el análisis de memoria capturado, es posible que
el equipo de IR pueda determinar acciones de los
atacantes, como troyanos, backdoors o exfiltración de
información.
IR – El proceso de análisis de memoria
11. Procesos / threads en ejecución
Passwords / llaves
Registry en uso
Chats, información de login
Evidencia de la presencia de malware
Conexiones a la red
IR – ¿Qué encontramos en memoria?
12. La memoria no se borra tan rápido
Aún con 30 segundos o hasta minutos de haber hecho
Shutdown la memoria contiene datos aún
El tiempo se puede prolongar por medio de
enfriamiento extremo a -50 grados
¿Quién podría congelar una computadora así?
Ataque “Cold Boot”
13. Windows
–FTK Imager
–Belkasoft Live RAM Capture
–WinPmem (incluido en Rekall)
Linux
–LiMe
–Linux Memory Grabber
OS X
–OSXPmem
Herramientas para captura de memoria
16. Virtualización de recursos
Realidad física: procesos comparten el mismo equipo
–Necesitamos multiplexar el CPU (CPU Scheduling)
–Necesitamos multiplexar la memoria(Memory management)
¿Por qué preocuparse por administrar memoria?
–El estado de trabajo completo de un proceso y/o kernel se
define por sus datos en memoria (y registros)
–Por lo tanto, no se puede dejar que diferentes procesos usen
la misma memora
–De la misma manera, no se desea que un proceso tenga
acceso a la memoria de otro (protección)
21. Proyecto de Google Code
Descargarlo desde http://www.rekall-forensic.com
Multiplataforma Windows y Linux
Consola interactiva o modo batch
Nueva versión genera un webconsole para trabajar de
forma GUI
Vamos a usar Rekall en Windows
22. Ver file shares: net view 127.0.0.1
Ver sesiones: net session
Ver uso de red
–Netstat –naob
–Netstat –na 5
Ver procesos corriendo: tasklist
Usar wmic: wmic process get name, processed, parentprocessid
Ver servicios fuera de lo normal
Ver items de startup
Ver scheduled tasks
Podemos delinear un proceso estándar
23. Arquitectura basada en plugins, permiten extender la
funcionalidad
Módulos descargables en la página del Proyecto Rekall
Otro software como Volatility también contiene módulos
Importante: cada update de Windows cambia la
arquitectura de uso de memoria, y las heramientas de
análisis de memoria deben ser actualizadas
Módulos de Rekall
24. Algunos módulos importantes que estaremos
probando:
–Imageinfo
–Netstat
–Pstree
–Pslist
–Dlllist
–Netscan
–Filescan
–Pedump
–Modules
Módulos de Rekall: los más importantes
25. Veamos netstat
Salida es similar a “netstat –nao | find “ESTABLISHED”
Módulos de Rekall: los más importantes
26. Pslist, nos muestra la lista de procesos corriendo
cuando se obtuvo la imagen
Misma salida que “wmic process get name,
parentprocessid, processid”
Módulos de Rekall: los más importantes
27. Dlllist muestra los DLL cargados por un proceso, así
como la línea de comando que la invocó
Salida similar a “tasklist /m /fi “pid eq [pid]” y “wmic
process where processid=[pid] get commandline”
Módulos de Rekall: los más importantes
28. Dlllist muestra los DLL cargados por un proceso, así
como la línea de comando que la invocó
Salida similar a “tasklist /m /fi “pid eq [pid]” y “wmic
process where processid=[pid] get commandline”
Módulos de Rekall: los más importantes
29. Determine qué procesos están comunicándose por la
red usando el modulo netstat
Use el modulo pslist para referenciar el PID asociado
con las conexiones de red establecidas a la lista de
procesos corriendo, para determiner el nombre de cada
proceso y su conexión
Se debe anotar también el Parent PID (PPID)
Identificando procesos por conexión
30. Estudiemos ahora cada línea de comando que invocó a
cada proceso
Usamos el modulo dlllist para examinar los parámetros
con los que fue invocado
Obtenemos también la lista de procesos
Determinando línea de comando
32. Sistema Windows XP
Herramientas de análisis preinstaladas
Incluye un zoológico de Malware
–Folder @REAL@ MALWARE en el Desktop,
manejar con cuidado, no usar en redes de
oficina o producción
–Folder Network Class Files en el Desktop
incluye capturas de tráfico de red de ataques
reales
Máquina virtual “Malware”
33. Usaremos pestudio para analizar lo que
contiene un archivo ejecutable
Analiza la interacción con el sistema
operativo, verifica su existencia en
VirusTotal y otras funcionalidades
Probemos ahora con el malware que
tenemos en el Zoológico
Analicemos un archivo
36. Usualmente se tienen dispositivos de captura en
servidores que están expuestos especialmente al
Internet llamados Honeypots
Estas capturas se usan para descubrir malware que
podría no ser detectado por nuestro software de
seguridad
Equipos de seguridad avanzados, como FireEye,
tienen un “sandbox” donde extraen en vivo las
descargas de tráfico sospechoso
Análisis de red
37. Descarga por HTTP de un malware
Rojadirecta, PelisFrikis, eres tú?
Usaremos Wireshark para analizar el tráfico
Aprovechamos la capacidad de Exportar objetos
Analicemos un caso: Drive-by download