Descarga la aplicación para disfrutar aún más
Vista previa del material en texto
INSTITUTO TECNOLÓGICO Y DE ESTUDIOS SUPERIORES DE MONTERREY , TECNOLOGICO DE MONTER,REY ® DESARROLLO E IMPLEMENTACIÓN DE APLICACIÓN ELISA EN DISPOSITIVOS ANDROID BAJO UN ESQUEMA DE COMUNICACIÓN SEGURA TESIS QUE PARA OPTAR EL GRADO DE MAESTRA EN CIENCIAS DE LA COMPUTACIÓN PRESENTA BÁRBARA VERÓNICA BUENDÍA HERNÁNDEZ Asesor: Dr. LUIS ÁNGEL TREJO RODRIGUEZ Jurado: Dr. RAÚL MONROY BORJA Presidente Dr. MIGUEL GONZÁLEZ MENDOZA Secretario Dr. LUIS ÁNGEL TREJO RODRÍGUEZ Vocal Atizapán de Zaragoza, Edo. Méx., Mayo de 2012 4 RESUMEN La telefonía móvil y las redes de datos inalámbricas han evolucionado en beneficio de las necesidades de las personas, permitiéndoles actualmente acceder a diversos servicios de contenido y aplicaciones para realizar sus tareas cotidianas de trabajo o negocios; de una forma más fácil y contando con la disponibilidad de acceso a la información en cualquier momento y lugar. Estas ventajas han permitido visualizar el uso de los dispositivos inteligentes en favor de la seguridad del usuario bajo la creación de aplicaciones con este objetivo. Bajo esta misma línea y debido a la preocupación por la actual inseguridad en el país, se desarrolló la idea del sistema ELISA. Este es un proyecto que tiene como propósito utilizar la tecnología y sus avances con el fin de crear una herramienta que el usuario pueda utilizar a su favor en momentos riesgosos como: robo, secuestro, accidentes o bajo algún comportamiento anormal del usuario. ELISA pretende cubrir la mayor parte del mercado de dispositivos inteligentes, considerando que existen diferentes sistemas operativos y marcas. Actualmente la aplicación ELISA está desarrollada para dispositivos BlackBerry y como objetivo de esta tesis es el desarrollo de la aplicación ELISA para dispositivos Android. Contrario a las ventajas que puede proporcionar ELISA también hay que considerar que se anteponen problemas de seguridad por el solo hecho de ser utilizados dispositivos móviles y de realizar la comunicación bajo una red Wi-Fi o 30. Estos aspectos de seguridad deben ser considerados ya que ponen en peligro la información de los usuarios ya que se pierde la confidencialidad e integridad de los datos. Es necesidad del sistema proporcionar una comunicación segura que permita garantizar la integridad, confiabilidad y legitimidad de dicha información. En el presente documento se realiza un análisis de seguridad minucioso sobre el sistema ELISA y sus componentes. La finalidad fue identificar las vulnerabilidades que representan un riesgo para el sistema y su funcionamiento. El análisis se realizó considerando diferentes vectores de ataque y objetivos de los atacantes, lo cual permitió identificar los riesgos que se trabajaron en esta tesis. Además se presenta el desarrollo completo de la aplicación ELISA para dispositivos Android, así como todas las pruebas que se realizaron sobre la aplicación y sobre la implementación de seguridad. Como conclusión del desarrollo de esta tesis se asegura que cuando existe una gran cantidad de mensajes entre servidor y dispositivos móviles, como es en este caso, no es justificable realizar una autentificación demasiado pesada y que consuma los recursos del servidor. De esta forma, protocolos de autentificación basados en compartir llaves secretas pueden ser más viables, en lugar de protocolos que utilizan criptografia simétrica o pesados handshakes tal como SSL/TLS. Además es importante mencionar que una forma de mejorar el tiempo o la cantidad de mensajes que se envían servidor y cliente es migrando el servicio web ELISA de un SOAP a un REST. 5 CONTENIDO DEDICACIONES ............................................................................................................................ 2 RECONOCIMIENTOS .................................................................................................................... 3 RESUMEN ....................................................................................................................................... 4 CONTENIDO ................................................................................................................................... 5 LISTA DE FIGURAS ...................................................................................................................... 9 LISTA DE TABLAS ...................................................................................................................... 11 1 INTRODUCCIÓN .................................................................................................................. 12 1.1 INTRODUCCIÓN ....................................................................................................................... 12 1.2 PROYECTO ELISA .................................................................................................................... 13 1.3 SITUACIÓN ACTUAL ELISA .................................................................................................. 14 1.4 HIPÓTESIS ................................................................................................................................. 15 1.5 OBJETIVOS GENERALES ....................................................................................................... 16 1.6 OBJETIVOS PARTICULARES ................................................................................................. 16 1. 7 ALCANCES Y LIMITACIONES ............................................................................................... 17 2 TELEFONÍA MÓVIL EN MÉXICO ..................................................................................... 19 2.1 INTRODUCCIÓN ........................................................................................................................... 19 2.2 PRINCIPALES SISTEMAS OPERATIVOS PARA SMARTPHONES .................................... 22 2.3 SEGURIDAD EN SMARTPHONES ......................................................................................... 24 2.4 ANDROID: SISTEMA OPERATIVO DE CÓDIGO ABIERTO ............................................... 26 2.4.1 VERSIONES ....................................................................................................................... 26 2.4.2 CARACTERÍSTICAS ......................................................................................................... 30 2.4.3 ARQUITECTURA .............................................................................................................. 31 2.4.4 MODELO DE SEGURIDAD .............................................................................................. 32 3 ANÁLISIS DE SEGURIDAD ................................................................................................ 34 3 .1 NIVELES DE SEGURIDAD ....................................................................................................... 34 3.2 MODELO DE AMENAZAS ENFOCADO EN EL ATACANTE ............................................. 35 3 .3 VECTORES DE ATAQUE ......................................................................................................... 36 3.3.1 VULNERABILIDAD EN LAS COMUNICACIONES ...................................................... 36 3.3.2 VULNERABILIDAD DE SOFTWARE ............................................................................. 39 3.3.2.1 Clasificación de malware para Android .......................................................................... 41 3.3.3 VULNERABILIDAD DE USUARIO ................................................................................. 45 3 .4 ANALISIS SISTEMA ELISA .................................................................................................... 45 6 3.4.1 ESTRATEGIAS PARA MITIGAR LOS RIESGOS .......................................................... 45 3.4.1.1 Malware ...........................................................................................................................46 3.4.1.2 Bluetooth ......................................................................................................................... 47 3.4.1.3 USB y otros periféricos ................................................................................................... 47 3.4.1.4 Redes Wi-Fi ..................................................................................................................... 48 3.4.1.5 Redes 3G I GSM .............................................................................................................. 51 3.4.1.6 Usuario ............................................................................................................................ 52 3 .4.1. 7 SMS-MMS ...................................................................................................................... 53 3.5 CONCLUSIONES ....................................................................................................................... 53 4 DESARROLLO E IMPLEMENTACIÓN DE PKI ................................................................ 55 4.1 MARCO TEÓRICO .................................................................................................................... 55 4.1.1 INFRAESTRUCTURA DELLA VE PÚBLICA: PKI ........................................................ 55 4.1.2 OPENSSL/ PROTOCOLO SSL .......................................................................................... 57 4.1.3 IMPLEMENTACIONES DE PKI EN TELEFONÍA MÓVIL ........................................... 59 4.2 DESARROLLO ........................................................................................................................... 61 4.2.1 ARQUITECTURAS PROPUESTAS .................................................................................. 62 4.2.2 CREACIÓN AUTORIDAD CERTIFICADORA Y CERTIFICADOS DIGITALES ........ 63 4.2.3 CONFIGURACIÓN SERVIDOR ELISA-TEC .................................................................. 68 4.2.4 DESARROLLO DEL SERVICIO WEB SEGURO ............................................................ 69 4.2.5 DESARROLLO DE LA APLICACIÓN DE SEGURIDAD ANDROID ........................... 74 4.3 IMPLEMENTACIÓN PKI DE UNA SOLO VÍA ...................................................................... 75 4.3.1 CASO DE IMPLEMENTACIÓN l: VERIFICANDO CERTIFICADO ............................ 76 4.3.2 CASO DE IMPLEMENTACIÓN 2: SIN VERIFICAR CERTIFICADO .......................... 76 4.4 IMPLEMENTACIÓN PKI CON DOBLE AUTENTICACIÓN ................................................ 77 4.5 PRUEBAS Y RESULTADOS .................................................................................................... 78 4.5.1 CONDICIONES DE PRUEBA ........................................................................................... 78 4.5.2 TABLA DE RESULTADOS .............................................................................................. 78 4.6 CONCLUSIONES ....................................................................................................................... 79 5 DESARROLLO APLICACIÓN ELISA ANDROID ............................................................. 81 5.1 PLATAFORMA Y SOFTWARE DE DESARROLLO .............................................................. 81 5.2 ARQUITECTURA APLICACIÓN ELISA ANDROID ............................................................. 85 5.2.1 INICIO DE ALARMA ........................................................................................................ 85 5.2.2 LOCALIZACIÓN DEL USUARIO EN ANDROID .......................................................... 86 5.2.3 MENSAJES DE PRIMER NIVEL ...................................................................................... 88 5.2.4 INVOCACIÓN AL SERVICIO WEB ELISA .................................................................... 89 5.2.5 MENSAJES DE SEGUNDO NIVEL. ................................................................................. 90 7 5.2.6 ACTUALIZACIÓN DE UBICACIÓN DEL USUARIO .................................................... 91 5.3 APLICACIÓN ELISA ANDROID ............................................................................................. 92 5.3.1 DESCRIPCIÓN DE CLASES ............................................................................................. 92 5.3.2 ARCHIVO ANDROIRMANIFEST.XML .......................................................................... 93 5.3.3 INTERFAZ GRÁFICA ....................................................................................................... 94 5.4 VERSIONES APLICACIÓN ELISA ANDROID ...................................................................... 96 6 PRUEBAS ELISA ANDROID ............................................................................................... 97 6.1 CARACTERÍSTICAS DISPOSITIVOS DE PRUEBA .............................................................. 97 6.2 CONDICIONES Y CONCEPTOS DE PRUEBA ....................................................................... 98 6.3 TABLAS DE RESULTADOS Y CONCLUSIONES ................................................................. 98 6.3.1 PRUEBA 1: INTERIOR/ AUTENTICADO/ CERCA AP ........................................... 99 6.3.2 PRUEBA 2: INTERIOR I AUTENTICADO/ LEJOS AP ........................................... 100 6.3.3 PRUEBA 3: INTERIOR I NO AUTENTICADO ......................................................... 101 6.3.4 PRUEBA 4: EXTERIOR / AUTENTICADO/ CERCA AP ....................................... 102 6.3.5 PRUEBA 5: EXTERIOR I AUTENTICADO/ LEJOS AP ........................................ 103 6.3.6 PRUEBA 6: EXTERIOR / NO AUTENTICADO ....................................................... 104 6.4 PRUEBAS BLACKBERRY VS. ANDROID .......................................................................... 104 CONCLUSIONES Y RECOMENDACIONES ........................................................................... 109 REFERENCIAS Y BIBLIOGRAFIA .......................................................................................... 11 l ANEXO A. DESCRIPTOR DEL SERVICIO WEB SEGURO HOLAMUNDO ....................... 113 ANEXO B. CÓDIGO DE LA CLASE CLIENTEDEEPTHOUGHTACTIVITY ....................... 114 ANEXO C. CÓDIGO DE LA CLASE F AKEX509TRUSTMANAGER ................................... 115 ANEXO D. MANUAL DE USUARIO PARA CONFIGURACIÓN ELISA ............................ 116 ANEXO E. DIAGRAMA DE FLUJO APLICACIÓN ELISA ANDROID ................................ 124 ANEXO F. CÓDIGO DE LA CLASE CREARCADENA .......................................................... 125 ANEXO G. CÓDIGO DE LA CLASE DATOSALARMA ......................................................... 126 ANEXO H. CÓDIGO DE LA CLASE DATOSFECHA ............................................................. 127 ANEXO l. CÓDIGO DE LA CLASE DECIMALROUND ........................................................ 128 ANEXO J. CÓDIGO DE LA CLASE ELISA V7 _1ACTIVITY ................................................. 129 ANEXO K. CÓDIGO DE LA CLASE ENVIASMS1_2 ............................................................. 141 ANEXO L. CÓDIGO DE LA CLASE ENVIASMS 1 _3 ............................................................. 142 ANEXO M. CÓDIGO DE LA CLASE ENVIASMSl ................................................................ 143 ANEXO N. CÓDIGO DE LA CLASE ENVIASMS2_1 ............................................................. 144 ANEXO Ñ. CÓDIGO DE LA CLASE ENVIASMS2_2 ............................................................. 145 ANEXO O. CÓDIGO DE LA CLASE ENVIASMS2_3 ............................................................. 146 ANEXO P. CÓDIGO DE LA CLASE ENVIASMS2_ 4 ............................................................. 147 8 ANEXO Q. CÓDIGO DE LA CLASE INVOCARWEBSERVICE ........................................... 148 ANEXO R. CÓDIGO DE LA CLASELEECONTACTOS ........................................................ 149 ANEXO S. CÓDIGO DE LA CLASE OBTENERPROPIET ARIO .......................................... .150 ANEXO T. CÓDIGO ANDROIDMANIFEST.XML .................................................................. 151 9 LISTA DE FIGURAS FIG. 1.2.1. COMPONENTES ARQUITECTURA ELISA (ORIGINAL EN COLORES) [9] ............................ 14 FIG. 2.1.1. Uso DE LA TELEFONÍA 20 Y 30 (ORIGINAL EN COLORES) [20] ..................................... 20 FIG. 2.1.2. PRESENCIA DE TELEFONÍA MÓVIL POR EMPRESA Y REGIÓN EN MÉXICO [11] .................. 21 FIG. 2.2.1. EVOLUCIÓN DE LOS SMARTPHONES (ORIGINAL EN COLORES) [13] ................................ 23 FIG. 2.2.2. CLASIFICACIÓN SO PARA SMARTPHONES (ORIGINAL EN COLORES) [5] ......................... 24 FIG. 2.3.1. INTEGRACIÓN DE LOS SERVICIOS DE COMUNICACIÓN (ORIGINAL EN COLORES) [13] ..... 25 FIG. 2.4.1.1. VERSIONES DE ANDROID MÁS UTILIZADAS (ORIGINAL EN COLORES) [5] .................... 29 FIG. 2.4.3.1. DIAGRAMA DE ARQUITECTURA DE ANDROID (ORIGINAL EN COLORES) [5] ................. 31 FIG. 2.4.4.1. MODELO DE SEGURIDAD DE ANDROID[l 5] ................................................................ 32 FIG. 3.4.1.4.1. AMENAZAS Y ATAQUES COMUNES PARA UNA RED WI-FI ........................................ .48 FIG. 3.4.1.5.1. FUNCIONAMIENTO DEL ALGORITMO COMP128 (ORIGINAL EN COLORES) [33] ........ 52 FIG. 4.1.2.1. DIAGRAMA FUNCIONAMIENTO PROTOCOLO SSL (ORIGINAL EN COLORES) [31] ......... 58 FIG. 4.1.2.2. ELEMENTOS DE SEGURIDAD DEL PROTOCOLO SSL (ORIGINAL EN COLORES) [31] ..... 58 FIG. 4.1.3.1. LÍNEA DE TIEMPO DEL ESTADO DEL ARTE (ORIGINAL EN COLORES) .......................... 60 FIG. 4.2.1.1. ARQUITECTURA PKI EN UNA SOLA VÍA (ORIGINAL EN COLORES) ............................... 62 FIG. 4.2.1.2. ARQUITECTURA PKI DE DOBLE AUTENTICACIÓN (ORIGINAL EN COLORES) ................ 63 FIG. 4.2.2.1. CERTIFICADO Y LLAVE PRIVADA DE AC (ORIGINAL EN COLORES) .............................. 64 FIG. 4.2.2.2. INFORMACIÓN PARA CREAR ARCHIVO .KEYSTORE ...................................................... 65 FIG. 4.2.2.3. CONTENIDO DEL ARCHIVO CONFIG.TXT ....................................................................... 66 FIG. 4.2.2.4. INFORMACIÓN DE LA PETICIÓN DEL CERTIFICADO ....................................................... 66 FIG. 4.2.2.5. CERTIFICADO DE LA AUTORIDAD CERTIFICADORA ..................................................... 67 FIG. 4.2.2.6. UBICACIÓN DEL ARCHIVO .KEYSTORE (ORIGINAL EN COLORES) ................................. 68 FIG. 4.2.3.1. CONFIGURACIÓN CONECTOR SSL PUERTO 8443 .......................................................... 69 FIG. 4.2.4.1. IDE DE DESARROLLO (ORIGINAL EN COLORES) ........................................................... 69 FIG. 4.2.4.2. CONFIGURACIÓN DEL PROYECTO WEB DINÁMICO (ORIGINAL EN COLORES) ................ 70 FIG. 4.2.4.3. CREACIÓN DE LA CLASE HOLAMUNDO (ORIGINAL EN COLORES) ................................ 70 FIG. 4.2.4.4. ESTRUCTURA DEL PROYECTO HOLAMUNDO (ORIGINAL EN COLORES) .................... 70 FIG. 4.2.4.5. CONTENIDO CLASE HOLAMUNDO ............................................................................... 71 FIG. 4.2.4.6. UBICACIÓN ARCHIVO WEB.XML (ORIGINAL EN COLORES) ........................................... 71 FIG. 4.2.4.7. CÓDIGO QUE HABILITA SSL EN EL SERVICIO WEB ....................................................... 72 FIG. 4.2.4.8. CREACIÓN DEL ARCHIVO. WAR (ORIGINAL EN COLORES) ............................................ 72 FIG. 4.2.4.9. UBICACIÓN DE IMPLANTACIÓN DEL SERVICIO WEB (ORIGINAL EN COLORES) .............. 73 FIG. 4.2.4.10. PÁGINA DE ERROR DE CERTIFICADO (ORIGINAL EN COLORES) ................................... 73 FIG. 4.2.4.11. CONTENIDO DEL CERTIFICADO (ORIGINAL EN COLORES) .......................................... 74 FIG. 4.2.5.1. INTERFAZ GRÁFICA DE APLICACIÓN PRUEBA DE SEGURIDAD ...................................... 75 FIG. 4.3.1.1. RESULTADO CASO DE IMPLEMENTACIÓN 1 .................................................................. 76 FIG. 4.3.2.1. RESULTADO CASO DE IMPLEMENTACIÓN 2 ................................................................. 77 FIG. 5.1.1. INTERFAZ WEB DE DESARROLLO APP INVENTOR (ORIGINAL EN COLORES) [17] ............ 82 FIG. 5.1.2. INTERFAZ PROGRAMACIÓN A BLOQUES (ORIGINAL EN COLORES) [17] ........................... 82 FIG. 5.1.3. PROPIEDADES DE UN PROYECTO EN ECLIPSE (ORIGINAL EN COLORES) ........................... 84 FIG. 5.1.4. PROPIEDADES PROYECTO ELISA (ORIGINAL EN COLORES) ........................................... 84 FIG. 5.3.3.1. INTERFAZ GRÁFICA ELISA ANDROID (ORIGINAL EN COLORES) .................................. 95 FIG. 6.1. TABLA DE PRUEBAS ELISA ANDROID ............................................................................. 97 FIG. 6.4.1. A) REGISTRO PRUEBA 1 EN EL MONITOR DE ALARMAS ELISA ...................................... l 05 10 FIG. 6.4.1. B) UBICACIÓN ALLAN ALANIS ..................................................................................... 105 FIG. 6.4.1. c) UBICACIÓN ELISA us MOD. 9300 ......................................................................... 105 FIG. 6.4.1. D) UBICACIÓN BÁRBARA BUENDÍA .............................................................................. 105 FIG. 6.4.2. A) REGISTRO PRUEBA 2 EN EL MONITOR DE ALARMAS ELISA ...................................... 106 FIG. 6.4.2. c) UBICACIÓN ELISA us MOD. 930049 ...................................................................... 106 FIG. 6.4.2. B) UBICACIÓN ALLAN ALANIS ..................................................................................... 106 FIG. 6.4.2. D) UBICACIÓN BÁRBARA BUENDÍA .............................................................................. 106 FIG. 6.4.3. A) REGISTRO PRUEBA 3 EN EL MONITOR DE ALARMAS ELISA ...................................... 107 FIG. 6.4.3. B) UBICACIÓN ALLAN ALANIS ..................................................................................... 107 FIG. 6.4.3. c) UBICACIÓN ELISA us MoD. 9300 .......................................................................... 107 FIG. 6.4.3. D) UBICACIÓN BÁRBARA BUENDÍA .............................................................................. 107 FIG. 6.4.4. A) REGISTRO PRUEBA 4 EN EL MONITOR DE ALARMAS ELISA ...................................... l 08 FIG. 6.4.4. B) UBICACIÓN ELISA us MOD. 9300 .......................................................................... 108 FIG. 6.4.4. C) UBICACIÓN BÁRBARA BUENDÍA .............................................................................. 108 FIG. 6.4.5. A)UBICACIÓN ELISA us MoD. 9300 .......................................................................... 108 FIG. 6.4.5. B) UBICACIÓN BÁRBARA BUENDÍA .............................................................................. 108 FIG. D 1.1. PANTALLA DE SELECCIÓN DE AJUSTES .......................................................................... 116 FIG. Dl.2. PANTALLA ACERCA DEL TELÉFONO ............................................................................. 117 FIG. Dl.3. PANTALLA ESTADO ...................................................................................................... 117 FIG. Dl.4. PANTALLA MI NÚMERO DE TELÉFONO ......................................................................... 117 FIG. Dl.5. PANTALLA AJUSTES DE LLAMADAS ........................................................................... 118 FIG. Dl.6. PANTALLA MI NÚMERO DE TELÉFON0 .......................................................................... 118 FIG. D2.1. PANTALLA CONTACTOS ............................................................................................... 119 FIG. D2.2. PANTALLA MI PERFIL ................................................................................................... 119 FIG. D3.l. PANTALLALISTA DE CONTACTOS ................................................................................ 120 FIG. D3.2. PANTALLA INFORMACIÓN ELISA-Cl ........................................................................... 120 FIG. D3.3. PANTALLA INFORMACIÓN ELISA-C2 ........................................................................... 121 FIG. D5. l. ICONO APLICACIÓN DE CONFIGURACIÓN ...................................................................... 12 l FIG. D5.2. RESULTADO APLICACIÓN ELISA CONFIG .................................................................. 122 FIG. D6. l. IDENTIFICADOR ÚNICO MULTI PLATAFORMA ............................................................... 122 11 LISTA DE TABLAS TABLA 2.4.1.1. VERSIONES Y CARACTERÍSTICAS DEL SISTEMA OPERATIVO ANDROID [5] PARTE 1.27 TABLA 2.4.1.1. VERSIONES Y CARACTERÍSTICAS DEL SISTEMA OPERATIVO ANDROID [5] PARTE 2 .28 TABLA 2.4.1.2. DISTRIBUCIÓN DE USO POR PLATAFORMA ANDROID [5] .......................................... 29 TABLA 3.3.2.1.1. CLASIFICACIÓN DE MALWARE PARA DISPOSITIVOS ANDROID: PARTE 1 [27] ...... .41 TABLA 3.3.2.1.1. CLASIFICACIÓN DE MALWARE PARA DISPOSITIVOS ANDROID: PARTE 2 [27] ........ 42 TABLA 3.3.2.1.1. CLASIFICACIÓN DE MALWARE PARA DISPOSITIVOS ANDROID: PARTE 3 [27] ........ 43 TABLA 3 J.2.1.1. CLASIFICACIÓN DE MAL WARE PARA DISPOSITIVOS ANDROID: PARTE 4 [27). ...... .44 TABLA 3.4.1.1.1. APLICACIONES DE SEGURIDAD PARA DISPOSITIVOS ANDROID [21] ...................... 46 TABLA 4.5.2.1. TABLA DE RESULTADOS CON CLASIFICACIÓN DE PRUEBAS POR GRUP0 ................... 79 TABLA 5 .2.1.1. TIPOS DE ALARMAS DEL SISTEMA ELISA [9] .......................................................... 85 TABLA 5.2.2.1. CÓDIGO PARA DEFINIR PRECISIÓN ........................................................................... 88 TABLA 5 .3 .2.1. PERMISOS CONFIGURADOS EN EL MANIFIESTO DE LA APLICACIÓN .......................... 94 TABLA 6.1.1. CARACTERÍSTICAS DE LOS DISPOSITIVOS DE PRUEBA ................................................ 98 TABLA 6.3.1.1. RESULTADOS PRUEBA l ....................................................................................... 99 TABLA 6.3.2.1. RESULTADOS PRUEBA 2 ..................................................................................... 100 TABLA 6.3 .3 .1. RESULTADOS PRUEBA 3 ..................................................................................... 101 TABLA 6.3 .4.1. RESULTADOS PRUEBA 4 ..................................................................................... 102 TABLA 6.3 .5 .1. RESULTA DOS PRUEBA 5 ..................................................................................... 103 TABLA 6.3 .6.1. RESULTADOS PRUEBA 6 ..................................................................................... 104 12 1 INTRODUCCIÓN 1.1 INTRODUCCIÓN El avance en la tecnología y el desarrollo de nuevos dispositivos con capacidad de proporcionar su localización y con acceso a Internet, ha pennitido el desarrollo de aplicaciones enfocadas a cubrir las necesidades de los usuarios en todos los aspectos, incluyendo la seguridad. Gracias a estos avances y a la necesidad de seguridad en el país se desarrolló un proyecto llamado ELISA 1• El proyecto tiene como objetivo cubrir el mayor mercado de dispositivos móviles, por lo que se enfoca al desarrollo de la aplicación ELISA en su versión para dispositivos BlackBerry y Android, objetivo de esta tesis. Android es una platafonna de ejecución de aplicaciones para dispositivos móviles, que consta de un sistema operativo, bibliotecas centrales, marco de desarrollo y aplicaciones básicas. El sistema operativo está construido sobre el kernel de Linux, el cual es responsable de ejecutar servicios del sistema tales como: acceso a la memoria, administración de procesos, acceso a dispositivos fisicos a través de drivers, administración de la red y seguridad. Hoy en día el uso de dispositivos móviles como: Smartphones, lap tops, tablets, etcétera; ha hecho que la seguridad de la infonnación se vuelva realmente importante. Esto debido a que la infonnación que se envía a través de estos dispositivos debe ser confidencial e integra, por lo que es necesario establecer mecanismos que nos pennitan resguardar todo lo que viaja a través de la red. En el caso de ELISA no es la excepción, ya que la infonnación que se envía tanto al servidor I Emergencia, Localización Inmediata, Seguridad y Asistencia 13 como al dispositivo móvil se considera información sensible que no debería ser interceptada y leída por cualquier persona. La seguridad en dispositivos móviles se ha visto mermada a raíz de ataques que han puesto en evidencia que aun y con el gran desarrollo que se ha venido dando en este ámbito, la seguridad es lo que se deja en un punto ciego. En la actualidad existen herramientas que se implementan exitosamente en redes inalámbricas y no es irreal pensar que se pueden implementar también en redes móviles. La infraestructura de llave pública: PK.!2, ha sido implementada con éxito en redes inalámbricas, aunque presenta ciertas vulnerabilidades relacionadas con una de sus configuraciones. El objetivo es probar distintas configuraciones de la infraestructura con el fin de encontrar la mejor solución para el sistema ELISA considerando no solo la seguridad, sino también el tiempo de procesamiento y el ancho de banda. 1.2 PROYECTO ELISA ELISA es considerada una herramienta de localización personal que ofrece al suscriptor del servicio de telefonía móvil la posibilidad de ser ubicado y asistido ante situaciones de riesgo por inseguridad, enfermedad o accidente. ELISA tiene la siguiente funcionalidad: mediante un sistema de sensores colocados en un cinturón, una persona puede ser monitoreada con el fin de generar alarmas de forma automática por: monitoreo de ritmo cardiaco, frecuencia respiratoria, temperatura corporal, aceleración vertical u horizontal y sonido. Cuando ciertos parámetros cambian bruscamente y/o sobrepasan límites establecidos como normales, el dispositivo móvil envía un mensaje mediante protocolo HITP a un servidor llamado ELISA. La aplicación puede ser iniciada de forma manual o automática. El servidor mantiene una base de datos con la información de los contactos que fueron dados de alta cuando se obtuvo la aplicación ELISA. Finalmente el servidor envía la dirección en texto claro, el nombre y número de los contactos registrados y el nombre del usuario, así como su teléfono; todo esto para completar la información que el dispositivo móvil necesita para enviar los mensajes SMS a sus contactos de segundo nivel. En la siguiente figura se muestra la arquitectura fisica de ELISA así como cada uno de sus componentes: 2 Public Key Infrastructure ,,_....,.. .-;.·....,.. l!loHamess BT ·~~ ubicación BAciüolize 7 Registra alarma de traza Total de 5 alarmas ,¡J '\ . . ••' ' .. \ '\ . 1 • ' .. 1 1 \ ' : ', \ '\ 3 Paquetes ubcaci6n : t "\ \\ y·alarma ' . . ' . . • &:2 SMS2 ,, : PlquMt ', • • dirmir1 ' .. 2.1SMS1 5.ISMS1 •• ··~.2SMS2 ~"= \=:. \ : '·-~ "," \ i ···-.:o ,.- • 1 IUMPDls;,o<ltl,o ¡¡füando paquo:t - - s.r, EIASorvor .......o fflTl:SM-CEM • .1 Solioi!ud do cjNQ;ión en le!do cwo :1------.,1ijzan<1opaquete .-., Monitor ELISA 4.2 Paquete ~ emergencio y paqueta direccion Paquete ubicación = (IUMP, longitud, latitud, velocidad, curso, · . time_stamp, modo) Paquete elanna = (lipo_alarma. lista_sensores) · Paquete perfil= (IUMP, nombre_usuario, 1811, nombre_contaclo1, Autoridades o -Lm-21,2.2.S.lyS.2:"*> ....... EMl<kBony, _ tel2, nombre_conlaclo2,ubicacfón) Paquete emergencia= (nombre_usuerio, Hnk_ublcacion.lipo_alarma, lísta_sensores, Umestamp_alarma) Paquete aviso" (nombre_usuario, "aviso de emergencia', Dnk _ ubícaclon) Paquete díreccion = (nombre usuario. direccion texto claro) Fig. 1.2.1. Componentes arquitectura ELISA (Original en colores) [9) 1.3 SITUACIÓN ACTUAL ELISA 14ELISA actualmente se encuentra en fase de desarrollo, por lo cual algunas de sus funcionalidades aún no se han concluido. Por el momento, la aplicación ELISA para Blackberry se encuentra implementa ya en el ITESM-CEM3 generando alertas, comunicándose con el servidor y enviando mensajes de alerta a los contactos elegidos. Por el momento las alertas sólo son generadas de forma manual esperando que en una versión próxima se puedan generar también de forma automática con la integración del cinturón de sensores. La comunicación entre Smartphone y servidor ELISA se realiza por medio del protocolo HTTP, por lo cual esta comunicación se convierte en una vulnerabilidad importante de la arquitectura. Se considera de esta forma ya que mediante un analizador de protocolos como Wireshark o con una herramienta como Paros; sería posible ver la información que viaja en. la red en texto claro, es decir, sin ningun tipo de confidencialidad. Esto se vuelve mucho más importante debido a que la información que es enviada en la comunicación entre dispositivo móvil y servidor se considera sensible, ya que contiene la ubicación actual de la persona que genera la alerta, sus datos personales y datos de sus contactos. En consecuencia, es necesario contemplar un protocolo que 3 Instituto Tecnológico y de Estudios Superiores de Monterrey Campus Estado de México 15 permita la encripción de la información proporcionando con esto un grado de seguridad a los usuarios de la aplicación. Debido a esto, es considerado de suma importancia diseñar un modelo en el cual la seguridad de la información sea un punto importante y básico para que exista comunicación. La seguridad debe contemplar los siguientes cuatro elementos: confidencialidad, integridad, autenticación y no repudio. Es objetivo de esta tesis desarrollar la aplicación ELISA para dispositivos Android, considerando la misma arquitectura utilizada para la aplicación de BlackBerry así como proponer e implementar un modelo que permita llevar a cabo una comunicación segura. 1.4 HIPÓTESIS 1. La implementación de una infraestructura de llave pública de una sola vía, es decir, autenticación únicamente del servidor, dará un nivel aceptable de seguridad de la información. Sin embargo, la utilización de herramientas de auditoría de seguridad en redes ha mostrado que la infraestructura de llave pública de una sola vía no es tan confiable como debería serlo, ya que la información puede ser vista en claro aunque viaja a través de un canal seguro encriptado. Aun y a pesar de esta gran desventaja se plantea su implementación para medir el tiempo que tardaría en la invocación del servicio web, lo cual puede ser una ventaja con respecto a otras infraestructuras o implementaciones. 2. La implementación de una infraestructura de llave pública con doble autenticación logrará proporcionar un alto grado de confidencialidad, integridad, no repudio y autenticación. Esto debido a que para que la comunicación entre servidor y cliente se pueda realizar será necesario el intercambio de llaves públicas entre ellos, lo cual hasta el momento no se ha corrompido con la ayuda de ninguna herramienta de hackeo. La desventaja importante sobre esta implementación es la latencia, debido a que este tipo de infraestructura es lenta en el procesamiento de autenticación. Esto podría afectar ELISA debido a que el sistema necesita que la información viaje en el menor tiempo posible, ya que se trata de una vida que depende de su buen funcionamiento. La primera hipótesis se probará programando y configurando un protocolo de comunicación segura HTTPS4, considerando que ELISA es un servicio web. Para esto, será necesaria la creación de un certificado digital que cumpla las especificaciones de los estándares propuestos para dicho protocolo. Se creará un certificado de prueba utilizando una Autoridad Certificadora creada para este propósito también llamada CAELISA5. Este certificado permitirá que el servidor 4 HyperText Transfer Protocol Secure: Protocolo destinado a la transferencia segura de datos. 5 Certificare Authority ELISA 16 se autentifique con el dispositivo cuando requiera establecer comunicación con él. Las pruebas importantes de esta implementación serán medir el tiempo en que tarda la parte de la autentificación. La segunda hipótesis se probará utilizando la misma infraestructura, con la diferencia de que ahora tanto servidor como cliente cuentan con un certificado digital creado por la Autoridad Certificadora CAELISA. En este caso, la propia configuración del Servicio Web será la encargada de autenticar al cliente. Las pruebas importantes de esta implementación son la medición del tiempo que tardan en autentificarse tanto el servidor como el cliente, además del tiempo que tarda entonces en invocar al servicio web. Es importante recalcar que el tiempo es un factor clave para el sistema ELISA. Se espera concluir si la latencia que presenta es significativa o no para nuestro propósito 1.5 OBJETIVOS GENERALES Los objetivos generales de esta tesis son: 1. Desarrollar la aplicación ELISA específicamente para dispositivos Android. 2. Proponer un esquema de seguridad para la comunicación entre el Smartphone y el servidor del proyecto ELISA. 3. Implementar la infraestructura necesaria para la comunicación entre Smartphone y servidor ELISA. 4. Implementar la infraestructura necesaria para proporcionar doble autenticación en la comunicación entre el Smartphone y el servidor ELISA. 1.6 OBJETIVOS PARTICULARES Los objetivos particulares de esta tesis son: 1. Investigar sobre las vulnerabilidades descubiertas y documentadas en un modelo de comunicación móvil. 2. Investigar y documentar las vulnerabilidades identificadas específicamente para dispositivos Android. 3. Proponer soluciones a las vulnerabilidades detectadas en el análisis realizado. 4. Investigar sobre los algoritmos criptográficos existentes, para elegir el que mejor se adecue a las necesidades del proyecto. 5. Crear certificados digitales correspondientes al servidor y al dispositivo móvil. 17 6. Evaluar los resultados de las pruebas realizadas con el fin de discernir sobre cuál de las dos implementaciones propuestas cubre mejor las necesidades del proyecto. 1.7 ALCANCES Y LIMITACIONES Como parte del plan de trabajo que se realiza para el desarrollo de esta tesis, se consideran cuatro grandes etapas: 1) La primera etapa consta del desarrollo de la aplicación ELISA para dispositivos Android. El desarrollo establece la creación de una aplicación con la misma arquitectura que la aplicación para BlackBerry. 2) La segunda etapa inicia una vez terminada la aplicación. Esta etapa consta de realizar las pruebas necesarias para liberar la aplicación para uso exclusivo del ITESM CEM como parte de su programa campus seguro. Las pruebas se dividirán en tres etapas: a) Pruebas para verificar el uso de los proveedores de localización, especificando casos para determinar el peor de ellos y analizar su comportamiento ya en una implementación real. b) Pruebas para verificar algún error en la conexión con el servidor. c) Pruebas en el envío de mensajes de primer y segundo nivel. El propósito de estas pruebas es la revisión de los mensajes que son enviados en cuanto a su sintaxis y al éxito de envío. En esta etapa al igual que en la conexión con el servidor depende mucho del servicio de datos del dispositivo móvil. Existe la posibilidad del envío errático o pérdida de mensajes por parte del proveedor, por lo que no es significativo para esta tesis el mal envío o pérdida de los mensajes, ya que no es algo que dependa del diseño o de la propia aplicación. 3) Investigación y análisis de las vulnerabilidades que se presentan en un ambiente de comunicación móvil así como en el dispositivo. En el análisis se tomarán en cuenta investigaciones que se han realizado en los últimos años para conferencias y revistas internacionales en seguridady redes móviles. 4) Desarrollo e implementación de la arquitectura propuesta en la etapa de análisis de seguridad para proporcionar una comunicación segura al sistema ELISA. Esta etapa contempla también el periodo de pruebas con el fin de discernir si es o no viable el uso de esta arquitectura en el sistema real. Cada una de estas etapas nos permite entonces definir los alcances y limitaciones que tendrá el desarrollo de este trabajo: 18 1) Se desarrollará la aplicación para dispositivos Android y se solucionarán los problemas que presente en el periodo de pruebas establecido por el asesor de tesis. 2) El desarrollo se realizará utilizando el IDE Eclipse para programación en Java, así como el uso del SDK correspondiente a Android. 3) Se realizarán las pruebas utilizando modelos y versiones de Android distintos, con el fin de comprobar su funcionamiento en diferentes escenarios y dispositivos. 4) En el análisis de seguridad se propondrá solución a todas aquellas vulnerabilidades que se hayan identificado y se especificará si se implementará como trabajo de esta tesis. 5) No es obligatorio la integración del cinturón con la aplicación. Este objetivo depende del avance que tenga el cinturón y si es que se logra su buen funcionamiento. 6) La implementación del esquema de seguridad propuesto en esta tesis estará limitado a dispositivos Android. 7) El esquema de seguridad propuesto en este trabajo no necesariamente tendrá que ser implementado, ya que depende mucho de las limitaciones propias de los dispositivos móviles y del servicio web SOAP que se utiliza. 19 2 TELEFONÍA MÓVIL EN MÉXICO 2.1 INTRODUCCIÓN Debido a la necesidad de solucionar ciertos problemas y para hacer más cómoda y fácil la vida de las personas, aparece la tecnología. La tecnología cumple su cometido con menor o mayor rapidez en valor del tiempo. Las diferentes tecnologías que han aparecido a lo largo de los años, tienen algunos datos en común, siendo el más destacado, cuando la tecnología es modificada para abarcar una población mayor (un mercado), esto hace que el número de personas que no disfrutan del servicio aumente exponencialmente. El problema es cuando la marcada diferencia entre los países desarrollados y los que están en vías de desarrollo se convierte en una desventaja en la calidad de vida de una mayor parte de la población, creando una división dentro de una comunidad, trayendo consigo problemas socio- económicos, socio-demográficos, entre otros. La tecnología tiene un costo, sea para la iniciativa privada o el gobierno, pero en la mayoría de los casos esta se recupera en un plazo de tiempo, teniendo la consecuencia de ser aprovechada por mayor cantidad de personas y tener mayores perspectivas de mejorar el crecimiento económico del país. México es un país en vías de desarrollo, por lo que se está creando infraestructura en telecomunicaciones y apostando a la modernidad informática. Entre las iniciativas más importantes se encuentra el proyecto e-México, cuyo objetivo es "Tener una comunicación que integre a través de una ventana única y de manera armónica las cuatro vertientes iniciales del Sistema Nacional siendo: e-Aprendizaje, e-Salud, e-Comercio y e-Gobierno"[l2]. Alexander Graham Bell, con su invento, solucionó la necesidad de estar comunicados con personas a grandes distancias desde la comodidad de un lugar fijo. Siendo este hecho, el inicio de una mejora continua, para ofrecer dispositivos que permitan una interacción cada vez más personal e intima; hoy en día tenemos los teléfonos ftjos y los teléfonos móviles, siendo este último, el que ha tenido un crecimiento a pasos gigantescos no sólo en tecnología sino también en mercado, desde su aparición en 1979. A continuación se menciona brevemente información sobre la historia de la telefonía móvil [20]: 20 • La primera generación (] G) de telefonía móvil contaba con fallas, como toda tecnología en sus inicios. Algunas características fueron: baja calidad en los enlaces, 100% analógica, tecnología FDMA6 y no contaba con seguridad en la transmisión. • La segunda generación (2G) tuvo un retraso de once años, apareciendo en 1990, trayendo consigo características como: 100% digital, aparece la tecnología GSM 7, empieza a tener un auge importante en el mercado. • Antes de entrar en la tercera generación (3G) algunas empresas migraron a la generación 2.5G, ofreciendo la tecnología de GPRS y adicionalmente prepararon sus instalaciones para una migración completa hacia 3G. • La tercera generación (3G) empieza con una mejor calidad en audio hasta tener video llamada. Además se presenta un gran avance en la tecnología de los teléfonos, ya que actualmente ofrecen diferentes dispositivos integrados como: cámara fotográfica, cámara de video, conexión a Internet, etc. • La cuarta generación (4G) aparece para 2010 y es una tecnología basada completamente en el protocolo /P. La principal diferencia con las generaciones predecesoras es la capacidad de proveer velocidades de acceso mayores de 100 Mbps en movimiento y 1 Gbps en reposo, manteniendo una calidad de servicio de punta a punta de alta seguridad. El tamaño del mercado de los dispositivos móviles es claramente mayor en los últimos años como lo muestra la figura 2.1.1, la cual indica que para finales de 201 O se estima había 5 .3 billones de usuarios de teléfonos móviles en el mundo. 5 3G .. 4 3 Billions of mobile ceUular 2 subscriptions o 2005 2006 2007 2008 2009 2010* Fig. 2.1.1. Uso de la telefonía 2G y JG (Original en colores) [20) 6 Frequency Division Mu/tiple Access: Técnica de multiplexación usada en múltiples protocolos de comunicaciones, principalmente en radiofrecuencia, y entre ellos en los teléfonos móviles de redes GSM El acceso al medio se realiza dividiendo el espectro disponible en canales, que corresponden a distintos rangos de frecuencia, asignando canales a los distintos usuarios y comunicaciones a realizar, sin interferirse entre sí. 7 Global Systemfor Mobi/e communications: Sistema estándar, libre de regalías, de telefonía digital. 8 General Padcet Radio Service: Es una técnica de conmutación de paquetes, que es integrable con la estructura actual de las redes GSM Se aplica a transmisiones de datos en forma de ráfagas: internety mensajería. 1:11~~1JQA \)\. 't.STUD!os .r 8'' --=-=:.:->- ¿,1.:: 21 El acceso a redes móviles ahora está disponible para el 90% de la población mundial y para el 80% de la población que vive en áreas rurales. Los usuarios se están trasladando rápidamente de plataformas 2G a 3G tanto para países desarrollados y subdesarrollados. En 2010, 143 países están ofreciendo servicios 3G comercialmente, comparado con 95 en 2007. México es un gran mercado para las empresas que ofrecen el servicio de telefonía móvil, por tal motivo se encuentran operando actualmente cuatro empresas: Telcel, Iusacell, Unefon y Telefónica, de las cuales Iusacell y Telefónica utilizan otros nombres de razón social dependiendo de la región. El servicio de telefonía móvil se encuentra divido en nueve regiones dentro de la republica mexicana, donde cada región tiene sus tarifas, las cuales son reguladas por la Comisión Federal de Telecomunicaciones. A continuación se muestra una tabla con las regiones del país, tarifas y compañías de telecomunicaciones presentes, sin embargo, la información no es tan reciente ya que para años más recientes aun no se cuenta con dicha información: PENElRACIOtf Usuarios X 1111 Hab. ltl.aL 11.614U. lHEFot«A 1)1\EíOH Wl>AI WOA IJ'JWf8WIYIA PCS DI C 2(((l JUN 2004 YPQ YPCS YPCS I mcn j l~eu.l l·e~I 00REf16111 (mm! jrwrOfa] 00RHmN2 f 1eLCEL I I TELEFONICA I l lMEfON I 0 0ReGl613 I fl""L I f wau.1 jmEFOMCAI 8-0 01t!CIOIH j maL ! ,UA~LLJ rrurONtCAI 8 0 0 lt!GfÓltl I Tlltll I ,~~1 TEUFONICAI ,~NI El 0REot6NI I Tfl.al I lúAa!LLJ fEl!FOHICA I 8 0 E)RHt0N7 I moo. j !waLLj TELEFOHIC'A I l lHEION I 0GREGIÓNI I TE~l I ~ TELEFONICA I I OOfOHI El GREGKHtt 00 TOTAL Fig. 2.1.2. Presencia de telefonía móvil por empresa y región en México [11) En un estudio realizado para Telefónica Movistar de México en febrero de 2006 se obtuvieron las siguientes cifras y datos interesantes [32]: Los móviles y los sectores de menores ingresos: El teléfono celular se ha convertido en una herramienta de uso popular entre los sectores de bajos ingresos. Mientras que en el 2003 sólo un 22 9% de las personas ubicadas en los niveles socioeconómicos D y E eran usuarios de teléfono celular, para 2005 la cifra se había triplicado y actualmente alcanza el 27% de la población de esos estratos. La difusión del móvil dentro de los estratos más bajos se debe, en gran medida, al bajo costo de acceso y uso que brindan al usuario el sistema de prepago y la modalidad "el que llama paga". Difusión de los móviles en el sector rural: La telefonía móvil presenta ventajas importantes para proveer a las comunidades aisladas o rurales con acceso a las telecomunicaciones. Los estados de Oaxaca e Hidalgo (los más rurales del país junto con Chiapas) alcanzan un nivel de penetración móvil mayor que el de fija, aunque notablemente inferior al promedio del país. En el caso de Tabasco y Campeche, ambos estados de grandes zonas rurales, se observa asimismo una penetración más elevada de la telefonía móvil. 2.2 PRINCIPALES SISTEMAS OPERATIVOS PARA SMARTPHONES Debido a la creciente necesidad de los usuarios no solamente de comunicarse sino de guardar información, de procesarla o simplemente de navegar en Internet, es que los teléfonos móviles han evolucionado a lo que hoy se conoce como Smartphone o dispositivo móvil inteligente. Un Smartphone es un teléfono móvil que incorpora características de una computadora personal y suelen permitir al usuario instalar nuevas aplicaciones, aumentando así sus funcionalidades. Esto es posible porque ejecutan un sistema operativo que realiza la administración de todos los programas e información que contiene, como lo haría un sistema operativo de PC. Es posible pensar en ellos como mini computadoras a nuestro alcance. El primer Smartphone fue "Simón" en 1992, fue diseñado por IBM y fue lanzado al público en 1993 por BellSouth. Además de teléfono celular, contenía un calendario, reloj, libreta de direcciones, e-mail, juegos, calculadora, envío y recepción de fax, etc. No poseía botones, sólo una pantalla táctil. Múltiples Smartphones se lanzaron durante los años siguientes, pero comenzaron a hacerse populares desde que Microsoft anunció su sistema operativo para móviles en 2002 llamado "Microsoft Windows Powered Smartphone 2002". Existen muchas diferencias entre un Smartphone y un teléfono móvil común, entre ellas: • • Soporta correo electrónico . Cuenta con GPS9 • 9 Global Positioning System: Es un sistema global de navegación por satélite que permite determinar la posición de un objeto con una buena precisión. Fue desarrollado, instalado y actualmente operado por el Departamento de Defensa de los Estados Unidos. 23 • Penniten la instalación de programas de terceros. • Utiliza cualquier interfaz para el ingreso de datos, como por ejemplo teclado QWERTY, pantalla táctil, etc. • Penniten el acceso a Internet. • Poseen agenda digital y administración de contactos. • Penniten leer documentos en distintos fonnatos, entre ellos los PDF y archivos de Microsoft Office. • Debe contar con un sistema operativo, propietario o libre. Los mayores fabricantes de Smartphone son: Gigabyte Technology, Group Sense PDA, Hewlett- Packard, High Tech Computer (HTC), 1-mate, Kyocera, Mio Technology, Motorola, Nokia, Palm Inc, Research in Motion (RIM), Samsung Electronics, y Sony Ericsson. Dentro de la misma historia, la evolución de los Smartphones ha tenido grandes etapas principalmente marcadas por el cambio tanto en hardware como en software. Estas diferencias han hecho que los dispositivos ganen popularidad y que aumente su uso en el mercado. En la Fig. 2.2.1 se muestra una línea de tiempo que ejemplifica la evolución de los Smartphones y las principales características que marcan cada una de las épocas: Principios de los '90: Mediados de los '90: • Celular + PDA • Touchscreen • SO: 005111 • Calendarlo • Emall • Web browser • Ub. de direcciones • App. para redacción • Notepad & Emall • Tecl. OWERlY Principios dCI '00: Mediados del '00: • Menor tamaño • PC de mano • Pantallas color • Ma!S seguridad • Mas apllcaclones • GPS. WIFI y 3G • Soluciones Corp. • Video streaming • Mas conectividad • Aplicaciones ERP Fig. 2.2.1. Evolución de los Smartphones (Original en colores) [13] En la actualidad hay un gran número de sistemas operativos para Smartphones, sin embargo, hay algunos que son más utilizados por sus características o simplemente por el tipo de usuario que lo prefiere. A continuación se muestra una gráfica con los sistemas operativos más utilizados y sus respectivos porcentajes: RIM BlackBerry OS 15% Palm/WebOS 2% AndroidOS 50% Fig. 2.2.2. Clasificación SO para Smartphones (Original en colores) [5] 24 En estudios recientes se ha mostrado que Android es el sistema operativo más prometedor para los próximos años y que sin duda su uso ha rebasado por mucho a los demás sistemas operativos. Las ventajas con las que cuenta este sistema operativo son amplias, pero entre otras la más importante es que es una plataforma de código abierto, por lo que se vuelve muy atractivo para los desarrolladores de aplicaciones. 2.3 SEGURIDAD EN SMARTPHONES Los Smartphones en la actualidad han incremento su popularidad gracias a las características que poseen como: mayor poder de procesamiento, comunicación inalámbrica, mayor almacenamiento de datos, menor tamaño, etc. La evolución del software acompaña a la del hardware y ya es posible encontrar todo tipo de aplicaciones para estos dispositivos, como: • GPS • Calendario • Navegador de intemet • Correo electrónico • Software para documentos PDF • Software para documentos MS Office • Juegos en línea o locales 25 • Redes sociales Todo este software pennite la completa integración de medios de comunicación, lo que le da al usuario más capacidad para comunicarse aunque esto al final de cuentas pueda resultar perjudicial o incluso un tanto inseguro, al sacrificar su privacidad. A¡'f>llr"'ó'l Miflft1jtt11t11}1 5-;'f"<'t~ Fig. 2.3.1. Integración de los servicios de comunicación (Original en colores) (13] Según una encuesta realizada en 2009 por Trend Micro de España, la seguridad no es un aspecto tan importante para los usuarios de los dispositivos. A continuación se muestran algunos de los resultados obtenidos en esta encuesta [ 13]: • El 44% de los encuestados tiene la sensación de que navegar por Internet desde sus Smartphones ( que pueden no estar equipados con software de seguridad) es tan seguro, si no más, como navegar desde su PC. • Sólo el 23% de los usuarios de Smartphones utiliza software de seguridad ya integrado. • El 20% considera que instalar un programa de software de seguridad en sus teléfonos no resulta muy efectivo. • Casi la mitad de los encuestados han sido infectados por malware. • El 20% de los mismos se han encontrado con algún fraude de phishing. • El 50% reconocen haber abierto los archivos adjuntos en el email durante el último mes, mientras que casi el 40% ha hecho clic en el link de la URL recibida en el e-mail desde su trabajo. De esta misma encuesta se desprende que los principales riesgos que un usuario de dispositivos móviles enfrenta son: • Robo, hurto o pérdida del dispositivo • Robo o suplantación de identidad • Propagación de virus por Mensajería Instantánea 26 • Phishing a través del correo electrónico • Múltiples nuevas formas de Ingeniería Social • Interceptación de tráfico de datos • Escuchas telefónicos • Robo/Uso no autorizado de servicios de proveedores • Ataques al dispositivo a través de la red IP de Wi-Fio 3G Los ataques específicos a los que se enfrentan los usuarios se explicarán más adelante en el apartado de análisis de seguridad. 2.4 ANDROID: SISTEMA OPERATIVO DE CÓDIGO ABIERTO Android es un sistema operativo para dispositivos móviles, basado en GNU/Linux e inicialmente desarrollado por Android Inc., firma comprada por Google en 2005. La presentación de esta plataforma se realizó el 5 de noviembre de 2007 junto con la creación de la Open Handset Alliance, un conjunto de 48 compañías de hardware, software y telecomunicaciones comprometidas a la promoción de estándares abiertos para dispositivos móviles. Esta plataforma permite el desarrollo de aplicaciones por terceros, para lo cual los desarrolladores deben escribir su código en lenguaje de programación Java y controlando los dispositivos por medio de bibliotecas API 10 desarrolladas o adoptadas por Google. Google liberó la mayoría del código de Android bajo la licencia Apache, una licencia libre y de código abierto. La estructura del sistema operativo Android se compone de aplicaciones que se ejecutan en un framework Java de aplicaciones orientadas a objetos sobre el núcleo de las bibliotecas de Java en una máquina virtual Dalvik. 2.4.1 VERSIONES Android ha realizado varias actualizaciones desde su liberación inicial. Las actualizaciones generalmente arreglan bugs y agregan nuevas funciones, cada una desarrollada bajo un nombre en código de un elemento relacionado con postres. En las siguientes tablas se enlistan las versiones o actualizaciones que existen hasta el momento para el sistema operativo así como sus principales características e información más relevante: 10 App/ication Programming Interface: Conjunto de funciones y procedimientos que ofrece cierta biblioteca para ser utilizado por otro software. Tabla 2.4.1.1. Versiones v características del sistema ooerativo Android 151 Parte 1 Nombre y versión Características 1.0 Liberado el 23 de septiembre de 2008 1.1 Liberado el 9 de febrero de 2009 1.5 Cupcake Basado en el kernel de Linux 2.6.27 1.6 Donut Basado en el kernel de Linux 2.6.29 2.0/2.1 Eclair Basado en el kernel de Linux 2.6.29 Liberado el 30 de abril de 2009 con nuevas actualizaciones en la interfaz de usuario, además de las siguientes características: • Mejoras al grabar y reproducir videos. • Teclado de predicción de texto • Soporte para Bluetooth • Transiciones de pantalla animadas Liberado el 15 de septiembre de 2009 con las siguientes características: • Mejoramiento en la tienda de aplicaciones de Android. • Actualización de soporte para CDMA11/EVDO, 802.lx, y VPN 12 • Mejoras de velocidad en las aplicaciones de búsqueda y cámara. • Navegación gratuita tum-by-turn de Google • Experiencia de búsqueda mejorada que permite buscar marcadores, historiales, contactos y páginas web desde la pantalla de inicio. Liberado el 26 de octubre de 2009 incluyendo cambios como: • Velocidad de hardware optimizada • Soporte para pantallas más grandes y mejores resoluciones. • Nueva interfaz de usuario en el navegador y soporte para HTML5 13 • Mejoras en Google Maps 3.1.2 • Bluetooth 2.1 • Teclado virtual mejorado. • Soporte para correo El SDK 2.0.1 fue liberado el 3 de diciembre de 2009 El SDK 2.1 fue liberado el 12 de enero de 2010 27 JJ Code Division Mu/tiple Access: Emplea una tecnología por la que a cada transmisor se le asigna un código único, y esta es la forma en cómo accede al medio. 12 Virtual Private Network: Red segura que usa interne! para proveer conexión remota a oficinas o redes privadas. 13 HyperText Markup Language 5 Tabla 2.4.1.1. Versiones y características del sistema operativo Android í51 Parte 2 Nombre y versión Características 2.2 Froyo Basado en el kernel de Linux 2.6.32 2.3 Gingerbread Basado en el kernel de Linux 2.6.35.7 3.0/3.1/3.2 Honeycomb 4.0 Ice Cream Sandwich 14 Siglas de Wireless Fide/ity 15 Voz sobre IP Liberado el 20 de mayo de 201 O incluyendo los siguiente cambios: • Mejoras en el rendimiento del sistema así como en la memona. • • • • • Funcionalidad de Wi-Fi 14 Permite desactivar el tráfico de datos a través de la red del operador Integración del motor Java Script V8 del Google Chrome en la aplicación Browser Soporte para contraseñas numéricas y alfanuméricas . Soporte para Adobe Flash 10.1 Liberado el 6 de diciembre de 2010 con los siguientes cambios: • Soporte para dispositivos móviles • Actualización del diseño de la interfaz de usuario • Soporte nativo para telefonía VoIP 15 • Administración de la energía mejorada y control de aplicaciones mediante el administrador de tareas. • Soporte nativo para múltiples cámaras • Soporte nativo para más sensores como giroscopios y barómetros. • Soporte para NFC 16• • Mejor soporte para tablets • Mejoras en el navegador web predeterminado con navegación por pestañas, auto relleno de formularios, etcétera. • Soporte para video chat mediante Google Talk • Soporte para una gran variedad de periféricos y accesorios con conexión USB: teclados, hubs, dispositivos de juego y cámaras digitales. • Añade un gestor de tráfico de datos de Internet. El entorno le permite establecer alertas cuando llegue a una cierta cantidad de uso y desactivación de los datos cuando se pasa de su límite. • Android Bean es la nueva característica que permitirá compartir contenido entre teléfonos vía NFC. • Reconocimiento de voz del usuario. • Un nuevo framework para las aplicaciones • Soporte nativo para el uso de Stylus17• • Reconocimiento facial. 16 Near Field Communication: Tecnología de comunicación inalámbrica de corto alcance y alta frecuencia. 17 Conocido también como lápiz táctil 28 29 Además de la importancia que tiene conocer las versiones existentes para el sistema operativo y sus características, también es primordial determinar el número relativo de dispositivos activos corriendo una versión dada de la plataforma de Android. Esto nos permitirá entender el panorama de distribución de los dispositivos y nos ayudará a decidir como priorizar el desarrollo de las aplicaciones dependiendo de este factor. La figura 2.4.1.1 muestra el número de dispositivos Android que tuvieron acceso a la tienda de aplicaciones de Android en un plazo de 14 días que concluyó el 3 de octubre de 2011. Esta gráfica nos dará una visión amplia de las versiones de Android más utilizadas y nos ayudará a tener una gran perspectiva de cuántos dispositivos serán compatibles con la aplicación ELISA, basándonos en la versión de la plataforma: ~Ei:i:Android 3.0 = And•oid 3.1 Android 3.2 Androtd 1.5 Android 1.6 Android 2 1 Fig. 2.4.1.1. Versiones de Android más utilizadas (Original en colores) (5) En la siguiente tabla se muestra la distribución en porcentajes del uso de las plataformas, así como el nivel de API que utilizan para su desarrollo. Es importante mencionar que las aplicaciones desarrolladas para las plataformas menos recientes serán compatibles con todas las versiones a partir de esta, es decir, ELISA será compatible con las versiones desde la 2.1 hasta las más recientes como la 4.0. Tabla 2.3.1.2. Distribución de uso por plataforma Android 151 Plataforma Nombre NivelAPI Distribución Android 1.5 Cu peak e 3 1.1% Android 1.6 Donut 4 1.4% Android 2.1 Eclair 7 11.7% Android 2.2 Froyo 8 45.3% Android 2.3 - 9 0.5% Android 2.3.2 Android 2.3.3 Gingerbread -Android 10 38.2% 2.3.7 Android 3.0 11 0.2% Android 3.1 Honeycomb 12 0.9% Android 3.2 13 0.7% 30 De esta tabla podemos concluir que ELISA en su versión Android tendrá compatibilidad con el 97.5 % de los dispositivos que actualmente ingresan a la tienda de aplicaciones Android, lo cual es bastante favorable para el proyecto ya que estamos teniendo una gran cobertura en cuanto a usuarios se refiere. 2.4.2 CARACTERÍSTICAS Hoy en día los dispositivos inteligentes poseen características importantes que los diferenciande los teléfonos celulares comunes. Estas características se basan principalmente en su forma de comunicarse con otros dispositivos. A continuación se enlistan las características más importantes de los dispositivos inteligentes Android: a) La plataforma es adaptable a pantallas más grandes, VGA 18, biblioteca de gráficos 2D y 3D. b) Utiliza SQLite como base de datos liviana, con propósito de almacenamiento de datos. c) Soporta: GSM/EDGE, IDEN 19, CDMA, EV-DO, UMTS2º, Bluetooth, Wi-Fi, LTE21 y WiMAX22; como tecnologías de conectividad. d) Utiliza como elementos de mensajería SMS23 y MMS24. e) La mayoría de las aplicaciones están escritas en Java, aunque no tenga una máquina virtual de Java. Para ejecutar la aplicación se usa una máquina virtual especializada llamada Dalvik. f) El navegador web se basa en el motor de código abierto WebKit. g) Soporta los siguientes formatos de multimedia: WebM, H.263, H.264, MPEG-4 SP, AMR, AAC, HE-AAC, MP3, MIDI, WAV, JPEG, PNG, GIF y BMP. h) En cuanto a hardware soporta: cámaras de fotos, de video, pantallas táctiles, GPS, acelerómetros, giroscopios, magnetómetros, sensores de proximidad y de presión, termómetro, aceleración 2D y 3D. i) Incluye un emulador de dispositivos, herramientas para depuración de memoria, y análisis del rendimiento del software. j) Tiene disponible un SDK para los desarrolladores de aplicaciones que se utiliza en conjunto con el IDE Eclipse. 18 Video Graphics Array 19 Integrated Digital Enhanced Network: Tecnología inalámbrica desarrollada por Motorola en 1994. Principal característica radica en la comunicación directa que permite pulsar un botón para poder establecer una llamada con los usuarios del sistema 20 Universal Mobile Telecommunications System: Tecnología usada por los móviles de tercera generación, sucesora de GSM, debido a que esta no puede seguir un camino evolutivo para llegar a brindar servicios de tercera fieneración. 1 Long Term Evolution: Nuevo concepto de arquitectura evolutiva para generación 4G. 22 Worldwide Jnteroperabi/ity for Microwave Access:Norma de transmisión de datos que utiliza las ondas de radio en las frecuencias de 2.3 a 3.5 GHz. 23 Short Message Service: Permite el envío de mensajes cortos entre teléfonos móviles. Originalmente parte del estándar GSM 24 Multimedia Messaging System:Permite enviar y recibir contenidos multimedia, incorporando sonido, video y fotos 31 2.4.3 ARQUITECTURA Android es una plataforma de ejecución de aplicaciones para dispositivos móviles que consta de un sistema operativo, bibliotecas centrales, marco de desarrollo y aplicaciones básicas. El sistema operativo es responsable de ejecutar servicios del sistema tales como: acceso a la memoria, administración de procesos, acceso a dispositivos fisicos a través de drivers, administración de la red y seguridad. A continuación se explica cada uno de los elementos de los que consta la arquitectura de Android: a) Aplicaciones: Estas aplicaciones básicas, al igual que en cualquier otra computadora, nos permiten el funcionamiento básico del dispositivo. Entre estas aplicaciones se encuentran: cliente de correo electrónico, programa SMS, calendario, mapas, navegador y contactos entre otros. Todas estas aplicaciones están escritas en lenguaje Java. b) Framework de aplicaciones: Mediante este framework, los desarrolladores tienen acceso completo a las mismas APis usadas por las aplicaciones básicas. Esto constituye una ventaja para terceros, aunque mantener libres todas las funcionalidades del teléfono puede ser un problema de seguridad. c) Bibliotecas: Incluye un conjunto de bibliotecas de C/C++ usadas por componentes del sistema como: SQLite, WebKit, SSL, OpenGL25 entre otros. d) Runtime de Android: Cada aplicación corre su propio proceso, con su propia instancia de la máquina virtual Dalvik. Con la ayuda de esta máquina virtual, un dispositivo puede correr múltiples máquinas virtuales de forma eficiente. e) Núcleo Linux: Android depende de Linux para los servicios base del sistema como seguridad, gestión de memoria, gestión de procesos y modelo de controladores. También actúa como una capa de abstracción entre el hardware y el resto de la pila de software. En la siguiente figura se muestra cada uno de los componentes de la arquitectura de Android así como los subcomponentes que la conforman: Fig. 2.4.3.1. Diagrama de arquitectura de Android (Original en colores) [5] 25 Open Graphics Library: Especificación estándar que define una multiplataforma para escribir aplicaciones que produzcan gráficos 2D y 3D. 32 2.4.4 MODELO DE SEGURIDAD Android como marco de desarrollo presenta problemas de seguridad ya que por la libertad que presenta el desarrollar aplicaciones para estos dispositivos es necesario prevenir que las aplicaciones roben información privada de los usuarios, la interrupción maliciosa de otras aplicaciones o del propio sistema operativo. Con tal de prevenir estos problemas de seguridad, Android implementa un modelo de seguridad basado en permisos como se muestra en el siguiente esquema: Resources Data storage Applícation components Sandbox ; Permission Based Security Enforcement , , I , Shared Key Fig. 2.4.4.1. Modelo de seguridad de Android [15) El modelo se basa en el aislamiento de la aplicación en un ambiente "sandbox". Esto significa que cada aplicación se ejecuta en su propio ambiente y está inhabilitada para influenciar o modificar la ejecución de cualquier otra aplicación. Este aislamiento se desarrolla a nivel del kernel de Linux ya que a cada paquete de aplicación Android26 en su instalación se le asigna un ID de usuario único de Linux. Ya que cada archivo está asociado con el ID de usuario de su propietario, las aplicaciones no pueden acceder a los archivos que pertenecen a otras aplicaciones sin que se conceden los permisos adecuados. A cada archivo se le asignarán permisos de acceso de lectura, escritura y ejecución. Ya que el usuario root posee los archivos de sistema, las aplicaciones no son capaces de actuar maliciosamente accediendo o modificando componentes críticos del sistema. Por otro lado, para lograr el asilamiento de memoria, cada aplicación se encuentra corriendo en su propio proceso y también tiene su propio espacio de memoria asignado. Otro elemento de seguridad es la MMU27, la cual es un componente de hardware utilizado para traducir entre espacios de memoria virtual y memoria fisica. De esta forma una aplicación no 26 Es un archivo con extensión .apk, lo cual significa que es compatible con dispositivos Android. 27 Memory Management Unit: Unidad de administración de memoria. 33 puede comprometer la seguridad del sistema al correr código nativo en modo privilegiado. Este modelo de aislamiento provee un ambiente seguro para la ejecución de una aplicación. Sin embargo, las restricciones reducen la funcionalidad de la aplicación. El ID de usuario compartido y los permisos son dos mecanismos introducidos por Android para suavizar algunas restricciones del modelo de aislamiento. Estos dos mecanismos proveen suficiente flexibilidad a los desarrolladores de aplicaciones pero también mantienen los elementos de seguridad del modelo. Otra alternativa de seguridad es el uso de los permisos de Android, con el objetivo de compartir datos y componentes. Los permisos son usados para obtener control de acceso a módulos críticos del sistema. Cada aplicación Android puede solicitar y definir un conjunto de permisos, esto significa que cada aplicación puede exponer un subconjunto de sus funcionalidades a otras aplicaciones con los permisos correspondientes. Los permisos son concedidos por el sistema operativo en la instalación y no pueden ser modificados después de eso. Existen cuatro tipos de permisos: • Normales: Dan acceso a las funcionalidades del nivel de aplicación que están aisladas. Estas tienen poco impacto en el sistema o en la seguridad del usuario y se obtienensin aprobación explícita del usuario. Ejemplo: permiso para acceder al hardware de vibración del teléfono y esto no es considerado un riesgo de seguridad ya que no compromete al dispositivo. • Peligrosos: Proveen acceso a datos privados y sistemas críticos. Un ejemplo es obtener permiso para usar servicios de telefonía, acceso a la red, información de la localización u obtener otros datos privados del usuario. Estos requieren la confirmación del usuario antes de la instalación. • Firma: Es un refinamiento del uso de un ID compartido y provee más control en el intercambio de datos de la aplicación y sus componentes. • Firma o sistema (signature-or-system): Permite el acceso a aplicaciones instaladas en el sistema Android. Todas y cada unas de las características de seguridad que ha implantado Android en su arquitectura, son una buena forma de mantener cierto orden y seguridad tanto para los desarrolladores como para los usuarios, sin embargo, aun existen muchas vulnerabilidades tanto en los dispositivos como en su forma de comunicarse con otros elementos dentro de la red. El análisis correspondiente al siguiente capítulo engloba las vulnerabilidades que se pueden presentar en una comunicación móvil, incluyendo el análisis del propio dispositivo Android. 34 3 ANÁLISIS DE SEGURIDAD 3.1 NIVELES DE SEGURIDAD Como parte del análisis de seguridad es necesario establecer cuáles son las vulnerabilidades más importantes para redes móviles así como para los propios dispositivos, esto con el fin de delimitar cuáles de ellas se van a atacar o mitigar. Es importante considerar que dependiendo del tipo de uso que se le dé a la telefonía móvil es el nivel de seguridad que se debe proporcionar a la comunicación. Por ejemplo, en transacciones o descargas de alto nivel que impliquen un valor monetario significativo requerirán medidas de seguridad más fuertes, incluso sacrificando que la ejecución de la transacción dure un poco más. En este caso, un leve retardo es un precio pequeño a pagar por una transacción segura. Para poder realizar el análisis correspondiente es necesario establecer los siguientes niveles de seguridad [7]: • Nivel bajo: Cuando la información importante o personal no está en peligro o cuando el valor de una transacción es bastante bajo. En este caso, la seguridad del servicio móvil se puede salvaguardar adecuadamente con técnicas simples de cifrado y PKI. • Nivel medio: Aplicaciones que almacenan alguna información personal tal como número de licencia de conducir, tarjeta de crédito o pasaporte; todo esto en un dispositivo móvil. En este caso, la seguridad del servicio móvil se puede llevar a cabo con técnicas fuertes de cifrado y PKI. • Nivel alto: Aplicaciones que implican transacciones monetarias muy grandes, acceso a VPNs, aplicaciones móviles de oficina que busquen, por ejemplo, protección de software muy valioso, etc. La seguridad debe darse utilizando módulos dedicados hardware/software de tipo SIM28, WIM29 o Smart Card. Los niveles de seguridad que se explicaron anteriormente no solo contemplan la parte de la comunicación entre dispositivos móviles o entre dispositivo móvil y otros elementos de la red 28 Subscriber Jdentity Module 29 Wireless ldentify Module 35 como: servidores, routers, etcétera; sino que también debe contemplar el nivel de seguridad que se requiere en el propio dispositivo móvil. Para realizar el análisis de riegos correspondiente, es necesario identificar todas y cada una de las vulnerabilidades posibles. Como parte del análisis es importante identificar que para el sistema ELISA se requiere un nivel medio de seguridad, ya que aunque la información que se envía es confidencial y sensible, no está dentro de la capacidad del proyecto agregar módulos externos de hardware para la seguridad. Es entonces posible aplicar técnicas de cifrado y PKI pará proporcionar seguridad, sin embargo, su implementación depende de muchos factores que se analizarán en un apartado posterior. 3.2 MODELO DE AMENAZAS ENFOCADO EN EL ATACANTE Existen tres motivos básicos para quebrantar la seguridad de un dispositivo móvil. Los dos primeros objetivos son encubiertos, mientras que el tercero es dañino. Ejecutar un ataque encubierto es para realizar operaciones maliciosas y evitar la detección del usuario. El objetivo de estos ataques es para interrumpir la operación del dispositivo lo más mínimo posible mientras se realizan actividades útiles para el atacante. Por otro lado, los ataques dañinos son destinados a perturbar el normal funcionamiento de un dispositivo móvil. A continuación se explican los tres posibles motivos que mueven a un atacante para quebrantar la seguridad del dispositivo móvil [15]: a) Recolección de datos privados: Desde que los dispositivos móviles se convirtieron en unidades de almacenamiento de información personal, se ha convertido también en un blanco importante para los atacantes. Los atacantes tienen como objetivo vulnerar tanto la confidencialidad como la integridad de la información almacenada. Un ataque exitoso permite al atacante leer mensajes SMS y MMS, correos electrónicos, registros de llamadas y detalles de los contactos. Mucho más peligroso aun es que puede interceptar mensajes y enviar mensajes falsos, reenviar correos electrónicos a bandejas de entrada alternativas, y acceder a la información de organizadores personales o calendarios, información adicional como datos guardados por las aplicaciones para acceder a las redes sociales o de datos almacenados en los browsers, etcétera. Cualquier otra información localizada en la memoria del dispositivo o en la tarjeta SD, como documentos, fotos o videos, también pueden estar comprometidos. • Utilizando el hardware de grabación de voz, el atacante puede convertir al teléfono móvil infectado en un dispositivo de escucha. • Acceder a la cámara provee una oportunidad para tomar fotos y grabar videos del ambiente del usuario. • Otra forma de comprometer la privacidad del usuario se puede lograr mediante la explotación de la información de ubicación. Un dispositivo móvil puede proveer 36 infonnación de localización del usuario utilizando el módulo GPS o por la triangulación de la posición usando el servicio de infraestructura de red del proveedor. b) Utilización de los recursos computacionales: Los atacantes se enfocan en explotar la máxima capacidad de cálculo de los dispositivos móviles en combinación con el acceso de banda ancha a la red. c) Acciones maliciosas dañinas: Este tipo de acciones tienen el propósito de generar molestia al usuario, como era en un principio con el malware desarrollado para la PC, en lugar de realizar operaciones útiles para el atacante. A pesar de que algunos ataques son usualmente fáciles de descubrir, están dirigidas a infligir el mayor daño posible. Los ataques van desde perder datos hasta agotar la batería de los dispositivos y otros recursos como generar mucho tráfico en la red. Ganar acceso al dispositivo pennite al atacante deshabilitar el dispositivo pennanentemente. 3.3 VECTORES DE ATAQUE Cuando se trata de sistemas que involucran dispositivos móviles, es necesario tomar en cuenta aspectos muy similares al análisis de seguridad de otro sistema que contiene elementos ya conocidos y analizados a lo largo de la historia. Un análisis de riesgos involucra detenninar cuáles son las vulnerabilidades que afectan al sistema así como el riesgo de que se concrete una amenaza en particular. Lo primero en identificar en este caso son las vulnerabilidades que se presentan en un sistema que involucra dispositivos móviles. Existen diferentes vectores de ataque que se deben tomar en cuenta cuando se realiza el análisis de riesgos: 1. Vulnerabilidad en las comunicaciones 2. Vulnerabilidad de software 3. Vulnerabilidad de usuario Este análisis se enfocará en vulnerabilidades para platafonna Android, ya que es el sistema que se requiere proteger para propósito
Compartir