Académique Documents
Professionnel Documents
Culture Documents
19 de Septiembre 2012
Julin Zarate
WHOAMI
Analista de seguridad
http://computacionmovil-ar.blogspot.com.ar/
Porque Forense??
Por que mediante el analisis forense podemos ver diversos aspectos del sistema operativo, como file system, almacenamiento y seguridad.
Y tambien podemos ver alguna que otra vulnerabilidad
Forense
El objetivo del anlisis forense ser obtener evidencias que puedan certificar lo ocurrido. Principio de Locard Siempre que dos objetos entran en
El mtodo utilizado por el atacante para introducirse en el sistema. Las actividades ilcitas realizadas por el intruso en el sistema. El alcance y las implicaciones de dichas actividades. Las puertas traseras(backdoors) instaladas por el intruso.
Forensebuenas practicas
El conocimiento de la arquitectura de lo que se est investigando es la primera base del anlisis forense. Qu evidencia se necesita capturar? Puntos clave de la recogida de evidencias: Estudio preliminar de la situacin
ForenseEtapas
Porque Android??
Es el sistema operativo mas vendido Esta presente en casi todas las marcas. Es Open Source y... Es Linux 500 millones de Devices activados 1.3 millones por dia Los Carriers son responsables de actualizaciones (es muy lento)
Porque Android??
Porque Android??
Almacenamiento en Android
Memoria flash NAND Mas econmicas que las NOR No removibles! NOR escritura y borrado mas rpido - NOR acceso secuencial A diferencia de Apple, fabricantes no estn limitados a un tipo de memoria NAND especfico. Para ello Android proporciona Flash Translation Layer (FTL) Implementado en software mediante el subsistema Linux Memory Technology Devices (MTD) MTD es Open Source Nuevos sistemas Android (Samsung) estn migrando a eMMC donde el controlador FTL est integrado en la memoria (similar a discos USB y SSD) - Cada particin basada en MTD se puede exportar de forma unitaria
Sistema de Archivos
MTD divide la memoria en bloques de 132 KB con 64 bytes Out of Band (OOB) por cada trozo de 2 KB OOB guarda YAFFS2 etiquetas, metadatos, bloques errneos, etc. (132 KB = 64 trozos de 2 KB + 64 trozos de 64 bytes = 128 KB + 4096 bytes)
YAFFS2
Primer sistema de archivo diseado especficamente para memorias Flash NAND - Open Source - Robusto - Reduce la sobrecarga de la RAM y los tiempos de inicio Lo que le interesa saber al analista: - Pocas herramientas que entiendan este sistema de archivos - Utiliza un sistema de garbage collector que permite la recuperacin de archivos borrados con relativa facilidad - Esta posibilidad baja con el tiempo incluso si no se est usando el dispositivo
OS Android
Preferencias compartidas XML files Almacenamiento interno - YAFFS /EXT2 como sistema de archivos Archivos creados por el dispositivo, no accesibles por ninguna aplicacin ni por el usuario (sino es root) Almacenamiento externo Generalmente formateado en FAT32 (sin seguridad) $ adb shell $ mount $ ls /mnt/sdcard SQLite Permite almacenar una base de datos entera en un solo archivo Multi plataforma
Adquisicin
Tres maneras bsicas Backup Lgica Fsica
Espacio asignado vs No asignado Utilizar un Bloqueador de Escritura Pueden dar fallos, a veces no exponen todos los dispositivos conectados Acceso directo a la evidencia?
El investigador debe estar suficientemente formado Debe proporcionar razones vlidas para seguir ese proceso Detallar el impacto y la consecuencia de sus acciones Mantener la trazabilidad (los pasos deben ser reproducibles)
Herramientas Comerciales
UFED (Universal Forensic Extraction Device)
Es la mas completa y universal del mercado, su mayor limitacin es su precio.
Herramientas Comerciales
Herramientas Comerciales
Herramientas Comerciales
Adquisicin Lgica
Habitualmente suficiente, aunque tiene sus limitaciones (solo se extrae espacio asignado). Tres mtodos:
Backup
Content Providers Informacin compartida entre aplicaciones. AFLogical Open Source Edition (viaExtract comercial) http://code.google.com/p/android-forensics
Adquisicin Lgica
A travs de ADB (Android Debug Bridge) Es una herramienta que viene con el Android SDK, y permite controlar la interfaz con el dispositivo Android, se instala en la carpeta \android-sdk\platform-tools
Adquisicin Fsica
Adquisicin bit a bit, rplica exacta, recupera espacio no asignado - Android viene con DD -Va a darte la mayor parte de la memoria interna (incluyendo unallocated space, pero no puede leer los trozos OOB de las particiones YAFFS2 MTD) $ dd if=/dev/mtd/mtd2 of=/sdcard/cache.img bs=2048 - Imagen NAND completa - Incluye OOB - Utilidad nandump - Extrae todo los datos de YAFFS2 - Muchas posibilidades de recuperar datos borrados - Si se ha producido recoleccin de basura se pueden encontrar fragmentos de archivos repartidos por la imagen.
File System
SDCard FAT32 Sdcard.img Disco Interno YAFFS2 Cache.img userdata.img userdata-qemu.img Examinar: /proc (utilizar cat) /data or /data/data and /data/system /cache /mnt/sdcard /mnt/emmc
File System
Tcnicas Tradicionales File Carving (scalpel) Magic files (cabeceras conocidas) Usar firmas especficas para Android Strings (--all radix) | egrep Hex Editor Sqllite (o sqlbrowser si prefieres GUI) Timelines (en desarrollo) The Sleuth Kit (mactime) Log2timeline from Kristinn Gudjonsson
Informacin Importante
Datos Contactos Calendario SMS&MMS DownloadHistory BrowserData Gmail LocationCache WIFi Use pass browser
Ubicacion
/data/data/com.android.providers.contacts/ /data/data/com.android.providers.calendar/
/data/data/com.android.providers.telephony/
/data/data/com.android.providers.downloads/ /data/data/com.android.providers.browser/ /data/data/com.google.android.providers.gmail/ /data/data/com.google.android.location/ /data/misc/wifi/wpa_supplicant/ /data/data/com.android.browser/databases/web view.db
Analisis de Malware
Dos maneras de analisis: Esttico Requiere conocimientos de programacin Se pueden manejar los daos Lento, ms complejo Vulnerable a los mtodos de ofuscacin Dinmico Basado en observacin = ms sencillo Ambiente bien armados Contacto directo con el atacante
Analisis de Malware
Analisis de Malware
Siempre es necesario poder analizar el codigo fuente de las aplicaciones para observarlo que realmente hacen. Requisitos Eclipse DEX2JAR JD-GUI - APK a analizar
Analisis de Malware
Estructura de un archivo APK Es un archivo zip. META-INF/ Certificados manifest lleno de SHA-1 hashes Assets/ Configuraciones de aplicacin, etc Manifest/ Archivo XML. Indica los permisos requeridos por la aplicacin. Realmente un archivo Dbase IV que contiene XML y algn que otro lenguaje. tenemos http://code.google.com/android-apktool/ Res/ Otros recursos, principalmente imgenes
Analisis de Malware
Modelo de seguridad de Android Separacin de Privilegios - Cada aplicacin tiene su propio uid: gid - Distintos componentes del sistema tienen su propio uid: gid Permisos de Aplicaciones El manifiesto se basa en Lista Blanca Tiene que ser aceptado por el usuario Estadstica de permisos en 1.400 aplicaciones legtimas vs 760 maliciosas. Nmero medio de peticiones 7 para las maliciosas (algunas llegaron a pedir 39!!) 3 para las legtimas No es un indicador definitivo pero es algo a tener en cuenta.
Analisis de Malware
Analisis de Malware
Vamos a ver analizaremos a un viejo conocido Android.Fake.Player
Analisis de Malware
1)File > New > Java Proyect 2) Project > Properties > Java Build Path. Libraries. Dex2jar 3) Agregar .APK
Analisis de Malware
4) Run As > Run Configurations y hacemos doble click en Java application
Analisis de Malware
5) Arguments colocamos el nombre de nuestro fichero APK con la extensin
6) Apply y Run.
Dudas??
Quejas ??
Amenazas??