Marvin, el Androide Paranoide

Marvin, el Androide Paranoide Presentada por: Iván Arce Programa Seguridad en TIC Aclaración: © Todos los derechos reservados. No está permitida

3 downloads 91 Views 2MB Size

Story Transcript

Marvin, el Androide Paranoide

Presentada por:

Iván Arce Programa Seguridad en TIC

Aclaración: ©

Todos los derechos reservados. No está permitida la reproducción parcial o total del material de esta sesión, ni su tratamiento informático, ni la transmisión de ninguna forma o por cualquier medio, ya sea electrónico, mecánico, por fotocopia, por registro u otros métodos, sin el permiso previo y por escrito de los titulares de los derechos. Si bien este Congreso ha sido concebido para difusión y promoción en el ámbito de la profesión a nivel internacional, previamente deberá solicitarse una autorización por escrito y mediar la debida aprobación para su uso.

Agenda • Presentación • Quién es Marvin y por qué existe? • Cómo es el ecosistema de seguridad en Android • Que hace Marvin y cómo lo hace?

Que es la Fundación Sadosky ? •

La Fundación Dr. Manuel Sadosky es una institución público-privada cuyo objetivo es promover la articulación entre el sistema científico - tecnológico y la estructura productiva en todo lo referido a las Tecnologías de la Información y la Comunicación (TIC)



Formalmente creada por Decreto del Poder Ejecutivo Nacional en Junio de 2009, comenzó a funcionar a fines de 2011



Lleva el nombre de quien fuera un pionero y visionario de la informática tanto en el país como en la región

Dr. Manuel Sadosky (1914-2005)

A qué se dedica la Fundación Sadosky ?

Gobierno

TIC Estructura Productiva

Infraestructura Científico-Técnica

Qué es el Programa Seguridad en TIC?

Visión: Las TIC como factor transformador para una sociedad con un cultura emprendedora que promueve e impulsa la creación de conocimiento, la innovación productiva y sustentable, la competitividad de la economía y la mejora de la calidad de vida de la población sin que ello redunde en un aumento de la dependencia tecnológica o de la vulnerabilidad de la infraestructura crítica

Qué es el Programa Seguridad en TIC?

Visión: Las TIC como factor transformador para una sociedad con un cultura emprendedora que promueve e impulsa la creación de conocimiento, la innovación productiva y sustentable, la competitividad de la economía y la mejora de la calidad de vida de la población sin que ello redunde en un aumento de la dependencia tecnológica o de la vulnerabilidad de la infraestructura crítica

Quién es Marvin ? • Software gratuito y de código abierto • Desarrollado integramente por Programa STIC • Joaquín Rinaudo • Juan Heguiabehere

• Licencia BSD – Todo tipo de uso, incluso comercial

• Identifica vulnerabilidades en Apps para Android – – – –



35+ tipos de vulnerabilidades Clasifica malware/no malware Extensible No requiere código fuente de la app

Version 1 (prototipo funcional) lanzado 17-Feb-2015 https://github.com/programa-stic/marvin-django/

Pero… en serio, qué hace Marvin ?

Por qué hace falta un Marvin?

TELEFONIA CELULAR

74%

CUANTOS ANDROID?

SMARTPHONES

79%

43%

Cuál es la escala de nuestro problema? • Teléfonos corriendo Android en Argentina: – 9.500.000 (conservador) – 15.000.000 (osado)

• • • • • •

Tablets Smart TVs Relojes Estéreos (auto) Lavarropas Microondas

Problemas de seguridad y privacidad en Android

• • • • •

Vulnerabilidades en el firmware de radio Vulnerabilidades en el Sistema Operativo Aplicaciones maliciosas (malware) Aplicaciones “pícaras” (malware bueno) Vulnerabilidades en aplicaciones – – – –

Pre-instaladas Descargadas de mercado oficial (Play) Descargadas de otro mercado Desarrolladas para uso propio

Seguridad en el ecosistema de Android (firmware & SO)

Google

Fabricantes de Dispositivos

Operadores Telefónicos

Seguridad en el ecosistema de Android (Apps) Aplicación

Servicios en la Nube

Framework

Bibliotecas

Componentes

Actualización

Mercado

Cuál es la escala de nuestro problema?

AppBrain stats, marzo 2016. http://www.appbrain.com/stats/number-of-android-apps

Análisis de aplicaciones (semi) automático. Cómo funciona? APK Google Play

Marvindjango

Marvinstaticanalyzer Marvindynamicanalyzer

Vulns

Marvin-django • • • • •

Aplicación web para el usuario de Marvin Búsqueda y descarga de apps desde Google Play Carga manual de un APK Análisis y visualización de resultados Qué hace? 1. Descomprime & desempaqueta APK 2. Clasifica malware/no malware 3. Descompila a Java (DEX->Smali) 4. Almacena en DB, Elasticsearch & Gitlab 5. Lanza procesos de análisis 6. Muestra resultados https://github.com/programa-stic/marvin-django

Marvin-django: Panel principal

Marvin-django: Permisos

Marvin-django: Activities, services , providers, receivers

Marvin-static-analizer • Decompila bytecode DEX a código Smali (Java) Androguard https://github.com/androguard/androguard • Análisis estático de código Smali program slicing con SAAF https://github.com/SAAF-Developers/saaf • Corre de modulos de análisis (Python) • Identifica vulnerabilidades • Marca vulnerabilidades para análisis dinámico https://github.com/programa-stic/Marvin-static-Analyzer

Marvin-static-analizer • Decompila bytecode DEX a código Smali (Java) Androguard https://github.com/androguard/androguard • Análisis estático de código Smali program slicing con SAAF https://github.com/SAAF-Developers/saaf • Corre de modulos de análisis (Python) • Identifica vulnerabilidades • Marca vulnerabilidades para análisis dinámico https://github.com/programa-stic/Marvin-static-Analyzer

Marvin-static-analizer: Tipos de vulnerabilidades

Marvin-static-analyzer: SSL_WEBVIEW_ERROR

Marvin-static-analyzer: Microsoft Live SDK for Android

Marvin-dynamic-analyzer • Corre la aplicación en emuladores de teléfono Android (Android x86) • Los emuladores corren en máquinas virtuales (Open Nebula) • Instrumenta la aplicación (Cydia Substrate) • Intercepta comunicaciones HTTPS (mitm-proxy) •

Qué hace? 1. Busca (APK, tipo de vulnerabilidad, Emulador) para analizar 2. Instala APK en 3 emuladores, configura MITM 3. Instrumenta APK en 1 emular para desactivar chequeo de SSL 4. Corre la app con Marvin-toqueton 5. Detecta y reporta vulnerabilidades https://github.com/programa-stic/Marvin-dynamic-Analyzer

Marvin-dynamic-analyzer: Arquitectura

Marvin-dynamic-analyzer: Vulnerabilidades

Marvin-toqueton • • • • • •

Aplicación comand-line para Android Instrumenta Views de otra aplicación (Cydia Substrate) Intercepta acceso a datos y servicios del teléfono WiFi, MAC address, IMEI/IMSI, GPS, credenciales, etc Simula input del usuario Qué hace? 1. Instrumenta Views de la app. 2. Arranca la app y manda input aleatorio (heurística) 3. Aleatoriamente arranca alguna Activity de al app 4. Intercepta acceso a datos y “manda fruta” https://github.com/programa-stic/Marvin-toqueton

Marvin, el Androide Paranoide Cómo funciona el sistema completo? APK Google Play

Marvindjango

Marvinstaticanalyzer Marvindynamicanalyzer

Vulns

Marvin, el Androide Paranoide Vulnerabilidades

Marvin, el Androide Paranoide Vulnerabilidades

Conclusiones • • • • •

Es necesario auditar aplicaciones Android Continuamente y a gran escala Con tecnología abierta y extensible Estimación de riesgo: Seguridad, Protección de datos Automático vs. Semi-automático – – – – –

Falsos positivos Resolución de conflictos (p.e. diff, de-ofuscación, etc.) Comentarios y anotaciones Exploración de resultados, metadatos. Soporte para estudio longitudinal, métricas

Gracias por asistir a esta sesión…

Para mayor información:

Iván Arce [email protected]

Para descargar esta presentación visite www.segurinfo.org

Get in touch

Social

© Copyright 2013 - 2024 MYDOKUMENT.COM - All rights reserved.