Proceso para análisis de archivos ejecutables

Anuncio
Proceso para análisis
de archivos ejecutables
potencialmente
maliciosos
Juan Fernando Mejía C.
Analista Forense Junior
Diplomado en Peritaje Informático
Tesista Magister en Seguridad, Peritaje y Auditoría
Informática
https://twitter.com/juanmejiacalle
https://www.linkedin.com/in/juanmejiacalle
www.fci.cl
· [email protected]
Prevención, Detección
e Investigación
de Delitos Informáticos
Información personal
EDUCACIÓN SUPERIOR •  Universidad de Cuenca, Facultad de Ingeniería – 
– 
Ingeniero de Sistemas (Julio 2009) Tesis: Rediseño de la red de datos de la Universidad de Cuenca CUARTO NIVEL •  Becario Senescyt •  Universidad SanDago de Chile – 
– 
– 
Diplomado en Control, Seguridad y Auditoría (Junio 2015) Diplomado en Peritaje InformáDco (Junio 2015) Magister en Seguridad, Peritaje y Auditoría InformáDca (2016) CAPACITACIONES •  Fundamentos de la gesDón de servicios tecnológicos IDl edición 2011 •  CCNA2 •  CCNA1 •  Propiedad intelectual y transferencia tecnológica •  Mobile Malware Threats •  Cripto extorsión en móviles •  InformáDca Forense •  OpenSAM y seguridad en ciclo de desarrollo OWASP •  Ethical Hacking AREAS DE EXPERIENCIA •  InformáDca Forense •  Respuesta a Incidentes •  Peritaje •  Diseño de Redes •  Configuración de equipos de red, servidores y comunicaciones •  AcDve Directory, GPO •  Seguridad en redes •  Call Manager Cisco y Telefonía IP •  Instalación de enlaces radiales •  Docencia Universitaria •  Educación Virtual EXPERIENCIA PROFESIONAL •  FCI LTDA (Chile), InvesDgador forense junior •  UNIVERSIDAD DE CUENCA: Docente contratado •  UNIVERSIDAD DE CUENCA: Ingeniero de sistemas •  CESEL S.A.:Consultor •  EDEN HOGAR: Consultor •  ECUANET-­‐MEGADATOS: Técnico www.fci.cl · [email protected]
www.fci.cl · [email protected]
Tendencia actual
En la actualidad los ataques de malware en cualquiera de sus definiciones, se han converDdo en un problema latente y que crece a pasos agigantados. Fuente: ESET LaDnoamérica 2012-­‐2013 www.fci.cl · [email protected]
Algunos indicadores
www.fci.cl · [email protected]
Qué hacer?... www.fci.cl · [email protected]
Marco teórico •  Problema actual •  Análisis de malware •  Análisis estáCco •  Análisis dinámico •  Análisis de ensamblador •  BibliograFa y estado del arte Proceso para análisis de malware •  Fase preliminar •  Análisis estáCco •  Análisis dinámico • Análisis externo • Análisis pasivo • Análisis acCvo Demo •  Aplicación del proceso www.fci.cl · [email protected]
Problemática actual…
•  Empresas están tranquilas con implementar AnDvirus, IDS, IPS, pero no son completamente seguros •  Existen ataques que no son reconocidos por los an#virus, IPS, IDS, conocidos como “ataques de día cero” •  Problemas en empresas/insDtuciones: o 
o 
o 
o 
o 
Comprometer información importante y confidencial Poner en riesgo la conDnuidad del negocio Poner en riesgo su reputación frente a sus clientes Chantajear por el salvataje de información robada Vender bases de datos en el mercado negro. •  Necesidad de conocer las caracterísDcas de un archivo ejecutable sospechoso para tomar decisiones •  Presentar un marco de referencia para analizar archivos ejecutables (peritaje o invesDgación forense) www.fci.cl · [email protected]
Definiciones
–  Se puede definir a un “Malware” (que proviene de las palabras sokware y malicioso) como: un programa diseñado y distribuido para llevar a cabo acciones mal intencionadas. Microsok, Defining Malware: FAQ , 2003. –  Para conocer el funcionamiento de un archivo ejecutable es necesario realizar un análisis interno del mismo, a esto se le conoce como “análisis de malware”, definiéndolo como el arte de diseccionar un sokware malicioso con el propósito de entender cómo funciona y cómo idenDficarlo. Sikorsky & Honig, Praise for PracDcal Malware Analysis, 2012. –  La intención determinar exactamente lo que sucedió en una intrusión y asegurarse de que se haya encontrado todas las computadoras y archivos infectados. www.fci.cl · [email protected]
Estructura de archivos PE
IMAGE_DOS_HEADER y MS-­‐DOS Stub •  Datos de funcionamiento cuando el archivo no se ejecuta en modo gráfico, sino que se ejecuta en modo consola. PE (PE Header) •  PE Signature): firma del archivo •  IMAGE FILE HEADER: metadatos del archivo, incluyendo, el Dempo y la fecha en que el archivo fue compilado/creado, la plataforma de desDno/procesador. •  IMAGE_OPTIONAL_HEADER: conDene la versión usada para compilar el archivo ejecutable, DLLs, versión del sistema operaDvo, entre otros. IMAGE_SECTION_HEADER: iinformación acerca de cada sección del archivo PE como tamaño virtual y tamaño en disco. •  .text conDene las instrucciones que la CPU ejecuta. Todas las demás secciones almacenan datos e información de apoyo. Generalmente, esta es la única sección que puede ejecutar. •  .rdata conDene la información de recursos importados y exportados. A veces un archivo contendrá una sección .idata y .edata, que almacenan la información de importación y exportación. •  .data conDene datos globales que son accesibles desde cualquier parte del programa. •  .rsrc incluye los recursos uDlizados que no se consideran parte del ejecutable, como iconos, imágenes, menús y cadenas. www.fci.cl · [email protected]
Tipos de análisis de malware
Análisis EstáDco Análisis Dinámico Análisis Ensamblador www.fci.cl · [email protected]
Análisis Estático
–  El análisis estáCco implica examinar el malware sin ejecutarlo. Se puede tener un acercamiento de qué es lo que hace o cuáles son las consecuencias que generará si llegase a infectar un sistema. • 
• 
• 
• 
• 
• 
• 
• 
Información de su cabecera Tamaño virtual y en disco, Nombre Fecha de modificación y creación Versión Autor Librerías dlls Strings www.fci.cl · [email protected]
Análisis Dinámico
–  El análisis dinámico implica ejecutar el archivo para observar su comportamiento. • 
• 
• 
• 
Capacidad de abrir conexiones con el mundo exterior Las alteraciones del registro Modificaciones del sistema de archivos Procesos en ejecución www.fci.cl · [email protected]
Análisis Ensamblador
–  Este análisis Dene por objeDvo examinar las instrucciones que forman el archivo ejecutable en lenguaje ensamblador (lenguaje de bajo nivel para computadores, microprocesadores, circuitos integrados) con la finalidad de entender su lógica de funcionamiento. –  Se realiza un proceso de ingeniería inversa. Para realizar este análisis se requiere mayor esfuerzo y tener altos conocimientos de lenguaje ensamblador www.fci.cl · [email protected]
Bibliografía
MÉTODO 1 MÉTODO 3 MÉTODO 2 Sikorsky & Honig (2012). Praise for Prac#cal Malware Analysis Malin, Casey & Aquilina (2012). Malware Forensics Field Guide for Windows Systems MÉTODO 4 Aquilina, Casey & Malin (2008). Malware Forensics Inves#ga#ng and Analyzing Malicious Code. Harley & Vibert, R. (2007). AVIEN Malware Defense Guide for the Enterprise. Investigaciones científicas
Análisis dinámico Análisis estáCco (Saini & otros, 2014) (Tian & otros, 2010) Integración de caracterísCcas (Santos, & otros, 2012) (Islama & otros, 2013) (Schultz & otros, 2001) (Xuv & otros, 2005) (Bailey, y otros, 2007) (Nari & Ghorbani, 2013) (Gandotra & otros, 2014) (Shijo & Salim, 2015) Shijo y Salim, 2015 www.fci.cl · [email protected]
Marco teórico •  Problema actual •  Análisis de malware • Análisis estáCco • Análisis dinámico • Análisis de ensamblador •  BibliograFa y estado del arte Proceso para análisis de malware •  Fase preliminar •  Análisis estáCco •  Análisis dinámico •  Análisis pasivo •  Análisis acCvo •  Análisis externo Demo •  Aplicación del proceso www.fci.cl · [email protected]
Caracterización
Análisis EstáCco Comparación en repositorios online Búsqueda de strings Revisión de librerìas de funciones Revisión de archivos ofuscados Revisión de la cabecera Escaneo con anDvirus Visualización con histogramas IdenDficación de Dpo de archivo Secuencia de caracteres Método 1 Método 2 Método 3 Método 4 Arsculos Ciensficos x x x x x x x x x x x x x x x x x x x x x x x x x x x www.fci.cl · [email protected]
Caracterización
Análisis Dinámico Método 1 Método 2 Método 3 Método 4 Arsculos Ciensficos Configuración de máquinas virtuales Simulación DNS Simulación de servicios Análisis Sandbox Comparación de Snapshots Análisis de parámetros de inicio Monitoreo Integridad Monitoreo de Instalación Monitoreo de Procesos Monitoreo de Sistema de archivos Monitoreo de Registros Monitoreo de AcDvidad Red Monitoreo de Puertos Monitoreo de llamadas API Medios de ofuscación Análisis de Ensamblador Visualización de procesos Detección de paquetes x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x www.fci.cl · [email protected]
Fases para análisis de archivos ejecutables
Máquina a infectar
Desempaquetadores
Dependencias
Máquina captura
Máquinas virtuales
Máquina simulador
Ambiente Real
Fase de análisis estático
Fase Preliminar
Tipo de archivo
Pre
Ejecución
Virustotal
Fase de análisis externo
Fase de análisis pasivo
Red y puertos
Fase de análisis activo
Instalación
Sandbox
Strings
Post
Ejecución
Malwr
www.fci.cl · [email protected]
Registros
Sistema de archivos
Procesos
Anubis
Dlls y APIs
Fase Preliminar
Fase preliminar
Entrada
Equipo de infraestructura
Equipo de Respuesta de
Incidentes
Direcciones IP
v
Inicio
Instalación de máquinas
virtuales
Proceso
Virtual Box
Windows 7
Kali Linux
Centos
Configuración de red
aislada
Instalación de software
especializado
Instalación y configuración
de simulación de servicios
Salida
Fin
Ambiente Virtual
Aislado
www.fci.cl · [email protected]
Fase análisis
Estático
Fase de Análisis Estático
Equipo de Respuesta de
Incidentes
Entrada
Equipo de Analistas
Especializados
Usuario
Archivo
ejecutable
PE32
Inicio
Identificación del tipo
de archivo e
información inherente
Extracción de strings
Determinación de
dependencias
Proceso
Análisis dcon
desempaquetadores
Reporte
Análisis de Reporte
Fin
Salida
www.fci.cl · [email protected]
Informe
Fase análisis
Externo
Fase de Análisis Externo
Entrada
Equipo de Respuesta de
Incidentes
Equipo de Analistas
Especializados
Usuario
Archivo
ejecutable
PE32
Inicio
Subir archivo a Sandbox
online
Virustotal
Malwr
Anubis
Proceso
Configuración de la
Máquina virtual a internet
Reporte
Salida
Análisis de Reporte
Fin
Informe
www.fci.cl · [email protected]
Fase de Análisis Pasivo
Entrada
Equipo de Respuesta de
Incidentes
Equipo de Analistas
Especializados
Usuario
Archivo
ejecutable
PE32
Inicio
Captura de instantánea
Pre-ejecución
Ejecución del malware
Proceso
Captura de instantánea
Post-ejecución
Comparación de
instantáneas
Reporte
Análisis de Reporte
Salida
Fase análisis
Pasivo
www.fci.cl · [email protected]
Fin
Informe
Equipo de Respuesta de
Incidentes
Equipo de Analistas
Especializados
Archivo
ejecutable
PE32
Inicio
Usuario
Ejecución de malware con
software especializado
Análisis de monitoreo
de Instalación
Análisis de monitoreo
de Procesos
Análisis de monitoreo
de sistema de archivos
Proceso
Análisis de monitoreo
de Registros
Análisis de monitoreo
de red
Análisis de monitoreo
de puertos
Análisis de monitoreo
de llamadas API
Reporte
Análisis de reporte
Salida
Fase análisis
Activo
Entrada
Fase de Análisis Activo
www.fci.cl · [email protected]
Fin
Informe
Marco teórico •  Problema actual •  Análisis de malware • Análisis estáCco • Análisis dinámico • Análisis de ensamblador •  BibliograFa y estado del arte Proceso para análisis de malware •  Fase preliminar •  Análisis estáCco •  Análisis dinámico • Análisis pasivo • Análisis acCvo • Análisis externo Demo •  Aplicación del proceso www.fci.cl · [email protected]
Aplicación del proceso
Aplicación a un ransomware Demo… www.fci.cl · [email protected]
Preguntas
y
Agradecimientos
Ate.,
Juan Fernando Mejía C.
Analista Forense Junior
Diplomado en Peritaje Informático
Magister en Seguridad, Peritaje y Auditoría Informática
https://twitter.com/juanmejiacalle
https://cl.linkedin.com/in/juan-fernando-mejía-calle-5067272b
www.fci.cl · [email protected]
Descargar