pruebas del modelo de seguridad - trabajos de grado de...

44
Documento de Trabajo de Grado - <Proyecto de investigación> CIS1310SD03 PRUEBAS DEL MODELO DE SEGURIDAD El siguiente documento detalla las pruebas realizadas sobre el Modelo de Seguridad, basado en los ataques encontrados durante la elaboración del Proyecto de Investigación. El primer capítulo describe los elementos usados para la elaboración de las pruebas funcionales: el dispositivo y las herramientas usadas. El segundo capítulo hace referencia al proceso que llevó a cabo para la realización de pruebas funcionales de los ataques en el dispositivo. El tercer capítulo, muestra un breve resumen de las pruebas realizadas sobre el dispositivo y los hallazgos de estas. El cuarto capítulo muestra la confrontación de los hallazgos en las pruebas con el Modelo de Seguridad propuesto y la mitigación sugerida por el mismo. El quinto capítulo establece las conclusiones a las que se llegó mediante el desarrollo de este documento y por último, el sexto capítulo contiene las referencias para la elaboración del presente documento. RAUL CALERO ASENCIOS PONTIFICIA UNIVERSIDAD JAVERIANA FACULTAD DE INGENIERIA CARRERA DE INGENIERIA DE SISTEMAS BOGOTÁ, D.C. 2013

Upload: trantram

Post on 30-Jan-2018

216 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: PRUEBAS DEL MODELO DE SEGURIDAD - Trabajos de Grado de …pegasus.javeriana.edu.co/~CIS1310SD03/Documento de Pruebas del... · Documento de Trabajo de Grado -

Documento de Trabajo de Grado - <Proyecto de investigación>

CIS1310SD03

PRUEBAS DEL MODELO DE SEGURIDAD

El siguiente documento detalla las pruebas realizadas sobre el Modelo de Seguridad, basado en los

ataques encontrados durante la elaboración del Proyecto de Investigación. El primer capítulo

describe los elementos usados para la elaboración de las pruebas funcionales: el dispositivo y las

herramientas usadas. El segundo capítulo hace referencia al proceso que llevó a cabo para la

realización de pruebas funcionales de los ataques en el dispositivo. El tercer capítulo, muestra un

breve resumen de las pruebas realizadas sobre el dispositivo y los hallazgos de estas. El cuarto

capítulo muestra la confrontación de los hallazgos en las pruebas con el Modelo de Seguridad

propuesto y la mitigación sugerida por el mismo. El quinto capítulo establece las conclusiones a las

que se llegó mediante el desarrollo de este documento y por último, el sexto capítulo contiene las

referencias para la elaboración del presente documento.

RAUL CALERO ASENCIOS

PONTIFICIA UNIVERSIDAD JAVERIANA

FACULTAD DE INGENIERIA

CARRERA DE INGENIERIA DE SISTEMAS

BOGOTÁ, D.C.

2013

Page 2: PRUEBAS DEL MODELO DE SEGURIDAD - Trabajos de Grado de …pegasus.javeriana.edu.co/~CIS1310SD03/Documento de Pruebas del... · Documento de Trabajo de Grado -

Documento de Trabajo de Grado - <Proyecto de investigación>

Contenido

1. DESCRIPCION DE LAS PRUEBAS ...................................................................................... 3

1.1 Dispositivo .............................................................................................................................. 3

1.2 Herramientas usadas............................................................................................................. 3

2. PRUEBAS DE LOS ATAQUES .............................................................................................. 4

2.1 Primer ataque: iCalendar ..................................................................................................... 4

2.2 Segundo ataque: Android.stels ............................................................................................ 19

2.3 Tercer ataque: live.photo.savanna / savageknife ............................................................... 26

3. RESUMEN DE LOS ATAQUES REALIZADOS ................................................................ 37

3.1 iCalendar .............................................................................................................................. 37

3.2 Android.stels ......................................................................................................................... 37

3.3 BadNews ............................................................................................................................... 37

4. CONFRONTACION DE LOS RESULTADOS DE LAS PRUEBAS CON EL MODELO

DE SEGURIDAD PROPUESTO .................................................................................................. 38

4.1 Resultados de la primera prueba ......................................................................................... 38

4.2 Resultados de la segunda prueba ......................................................................................... 39

4.3 Resultados de la tercera prueba ........................................................................................... 40

5. MITIGACION DE LOS ATAQUES PROBADOS .............................................................. 41

5.1 Mitigación del primer ataque ............................................................................................... 41

5.2 Mitigación del segundo ataque ............................................................................................ 41

5.3 Mitigación del tercer ataque ................................................................................................ 42

6. LISTAS DE CHEQUEO ......................................................................................................... 43

7. CONCLUSIONES ................................................................................................................... 43

8. REFERENCIAS ...................................................................................................................... 44

Page 3: PRUEBAS DEL MODELO DE SEGURIDAD - Trabajos de Grado de …pegasus.javeriana.edu.co/~CIS1310SD03/Documento de Pruebas del... · Documento de Trabajo de Grado -

Documento de Trabajo de Grado - <Proyecto de investigación>

1. DESCRIPCION DE LAS PRUEBAS

1.1 Dispositivo

Para la elaboración de las pruebas de los ataques y confrontación con el modelo de seguridad

propuesto en el Proyecto de Investigación, se usó un dispositivo proporcionado por la Pontificia

Universidad Javeriana con las siguientes características:

- Modelo: SAMSUNG galaxy NEXUS S

- Versión de Android: Sistema Operativo Android 4.1.1 JellyBean

- Versión de banda base: I9020AUCKJ1

- Versión de núcleo: 3.0.8 –g6656123 android – build@vpbs1 #1

- Numero de compilación: IMM76D

- Memoria: 16GB, 512 MB de RAM

1.2 Herramientas usadas

Para realizar las pruebas en el dispositivo se usaron cuatro herramientas:

Dex2jar: herramienta para convertir un archivo con extensión .dex a .jar. Generalmente un archivo

con extensión .dex, se encuentra contenido en un archivo de Android APK [1].

JD-GUI (Java) decompiler: utilidad gráfica independiente que muestra el código fuente de los

archivos .class de un archivo ejecutable de java con extensión .jar. Por medio de JD-GUI, se puede

navegar por el código fuente para un acceso instantáneo a los métodos, variables, entre otros [2].

AndroidAssistant: herramienta para el manejo del dispositivo y su desempeño, disponible en el

mercado de aplicaciones Google Play [3]. Con esta herramienta se pueden monitorear: procesos,

información del CPU, información de la memoria, información de la batería, permisos, control de

volumen, limpiador de cache y manejadores de archivos en el dispositivo.

Winzip: herramienta para comprimir y descomprimir archivos, en el caso del Proyecto de

Investigación, esta herramienta se usó para extraer los archivos que contenían el archivo ejecutable

de Android con extensión APK [4].

Page 4: PRUEBAS DEL MODELO DE SEGURIDAD - Trabajos de Grado de …pegasus.javeriana.edu.co/~CIS1310SD03/Documento de Pruebas del... · Documento de Trabajo de Grado -

Documento de Trabajo de Grado - <Proyecto de investigación>

2. PRUEBAS DE LOS ATAQUES

2.1 Primer ataque: iCalendar

La aplicación tipo malware iCalendar pertenece a la clasificación Amenaza basada en aplicación

tipo PREMIUM SMS, descrita en el Documento de ataques según Principios de Seguridad. A

continuación se describe el proceso para llevar a cabo la prueba en el dispositivo Android.

Se descargó la aplicación iCalendar.apk en un equipo de escritorio primero (ver Ilustración 1),

para luego pasarlo al dispositivo Android. Como en el equipo se contaba con un antivirus en

ejecución, se detuvo este programa para que se pueda realizar la descarga del archivo con

extensión APK (de lo contrario, el sistema no permitía la descarga).

Ilustración 1: Descarga del malware ICalendar

Se abrió el archivo iCalendar.apk con el programa Winzip y se vieron los archivos que

conformaban la aplicación, ver Ilustración 2 (una carpeta META-INF, una carpeta res, el

archivo principal de la aplicación AndroidManifest.xml, un archivo de recursos resources.arsc y

el archivo contenedor de las clases classes.dex).

Page 5: PRUEBAS DEL MODELO DE SEGURIDAD - Trabajos de Grado de …pegasus.javeriana.edu.co/~CIS1310SD03/Documento de Pruebas del... · Documento de Trabajo de Grado -

Documento de Trabajo de Grado - <Proyecto de investigación>

Ilustración 2: Archivos que conforman la aplicación ICalendar.apk

El archivo que se tomó en cuenta para esta prueba fue classes.dex , que se genera al extraer el

archivo iCalendar.apk. Se copió este archivo, para luego pegarlo en la ubicación donde se

extraerá la herramienta dex2jar [1].

Page 6: PRUEBAS DEL MODELO DE SEGURIDAD - Trabajos de Grado de …pegasus.javeriana.edu.co/~CIS1310SD03/Documento de Pruebas del... · Documento de Trabajo de Grado -

Documento de Trabajo de Grado - <Proyecto de investigación>

Ilustración 3: Copiando el archivo classes.dex

Se descargó el programa dex2jar [1] y se colocó el archivo clasess.dex en la ubicación de la

carpeta dex2jar que se generó (ver Ilustración 4).

Page 7: PRUEBAS DEL MODELO DE SEGURIDAD - Trabajos de Grado de …pegasus.javeriana.edu.co/~CIS1310SD03/Documento de Pruebas del... · Documento de Trabajo de Grado -

Documento de Trabajo de Grado - <Proyecto de investigación>

Ilustración 4: Incluir el archivo classes.dex en la ubicación del programa dex2jar

Se buscó la ubicación de la carpeta dex2jar por medio de la consola de comandos (ver

Ilustración 5). Para esto, es necesario tener instalado el programa Java [5] en el equipo.

Page 8: PRUEBAS DEL MODELO DE SEGURIDAD - Trabajos de Grado de …pegasus.javeriana.edu.co/~CIS1310SD03/Documento de Pruebas del... · Documento de Trabajo de Grado -

Documento de Trabajo de Grado - <Proyecto de investigación>

Ilustración 5: Buscar la carpeta del programa dex2jar en el equipo

Después de colocar el comando dex2jar.bat classes.dex, se genera un archivo con extensión .jar

en la carpeta del programa llamado classes_dex2jar.jar (ver Ilustración 6).

Ilustración 6: Archivo classes_dex2jar.JAR generado

Page 9: PRUEBAS DEL MODELO DE SEGURIDAD - Trabajos de Grado de …pegasus.javeriana.edu.co/~CIS1310SD03/Documento de Pruebas del... · Documento de Trabajo de Grado -

Documento de Trabajo de Grado - <Proyecto de investigación>

Luego de descargar el programa JD-GUI (Java Decompiler) [2], es posible ver el contenido del

archivo classes_dex2jar.jar

Ilustración 7: Archivo classes_dex2jar.JAR abierto con JD-GUI

Revisando las clases que componen el archivo con extensión .jar , se puede ver que en la clase

SmsReceiver, hay tres números : 1066185829, 1066133 y 106601412004 (ver Ilustración 7).

Además, parece como si se intentaran bloquear los mensajes de este número viniendo del

dispositivo Android donde la aplicación iCalendar.apk se encuentra instalada y ejecutando.

Page 10: PRUEBAS DEL MODELO DE SEGURIDAD - Trabajos de Grado de …pegasus.javeriana.edu.co/~CIS1310SD03/Documento de Pruebas del... · Documento de Trabajo de Grado -

Documento de Trabajo de Grado - <Proyecto de investigación>

Ilustración 8: Búsqueda de los números encontrados en el código fuente en Google

Ilustración 9: Búsqueda de los números encontrados en el código fuente en Google

Page 11: PRUEBAS DEL MODELO DE SEGURIDAD - Trabajos de Grado de …pegasus.javeriana.edu.co/~CIS1310SD03/Documento de Pruebas del... · Documento de Trabajo de Grado -

Documento de Trabajo de Grado - <Proyecto de investigación>

Después de buscar estos números en Google (ver Ilustración 8 e Ilustración 9), se descubrió que

son números de mensajería PREMIUM pertenecientes a China Mobile [6].

Ilustración 10: Búsqueda de los números de mensajería premium

Ilustración 11: Página traducida al idioma Español con información sobre los números de mensajería

Page 12: PRUEBAS DEL MODELO DE SEGURIDAD - Trabajos de Grado de …pegasus.javeriana.edu.co/~CIS1310SD03/Documento de Pruebas del... · Documento de Trabajo de Grado -

Documento de Trabajo de Grado - <Proyecto de investigación>

Revisando la clase iCalendar.class, se encontró que el método showImg() después de un intento

de 5 clicks llama a la función sendSms(), ver Ilustración 12.

Ilustración 12: Llamado a la función sendSms()

Luego de examinar la función sendSms(), se puede ver que cuando se hace el llamado de esta

función, un MENSAJE DE TEXTO es enviado al número 1066185829 con el mensaje “921x1”

(ver Ilustración 13). Para esta operación, se invoca el componente de Android SMSManager.

Page 13: PRUEBAS DEL MODELO DE SEGURIDAD - Trabajos de Grado de …pegasus.javeriana.edu.co/~CIS1310SD03/Documento de Pruebas del... · Documento de Trabajo de Grado -

Documento de Trabajo de Grado - <Proyecto de investigación>

Ilustración 13: Función sendSms() envía un mensaje de texto al número 1066185829 con el mensaje "921x1"

Ilustración 14: Función save(), llamada al final de la función que envía el mensaje de texto

Page 14: PRUEBAS DEL MODELO DE SEGURIDAD - Trabajos de Grado de …pegasus.javeriana.edu.co/~CIS1310SD03/Documento de Pruebas del... · Documento de Trabajo de Grado -

Documento de Trabajo de Grado - <Proyecto de investigación>

Al final de la función sendSms(), se invoca otra función save(), la cual permitió obtener el

siguiente análisis:

- La función pasa como parámetro un carácter Y, cada vez que es llamada

- La función sendSms() , solo es llamada una vez, así que solo se envía un mensaje de texto a

ese número

- Esta aplicación envía un mensaje de texto al número 1066185829 y bloquea cualquier

intento de respuesta, para que así el usuario no se dé cuenta de que está enviando el mensaje

Luego de esto, se pasó a probar la aplicación iCalendar en el dispositivo Android

Ilustración 15: Aplicación iCalendar ubicada en la carpeta de descargas del dispositivo

Al momento de instalación, podemos notar la primera deficiencia o las primeras sospechas de

que iCalendar es una aplicación maliciosa, debido a los permisos que requiere (ver Ilustración

16):

Page 15: PRUEBAS DEL MODELO DE SEGURIDAD - Trabajos de Grado de …pegasus.javeriana.edu.co/~CIS1310SD03/Documento de Pruebas del... · Documento de Trabajo de Grado -

Documento de Trabajo de Grado - <Proyecto de investigación>

Ilustración 16: Instalación de la aplicación iCalendar

Una aplicación como iCalendar, en la que se tiene como función principal, darle otro tipo de

vista al calendario que viene instalado por defecto en los dispositivos Android, no debería

requerir ninguno de los siguientes permisos: envío de mensajes de texto (SMS), ubicación del

dispositivo, leer el estado del dispositivo (llamadas telefónicas), entre otros.

Page 16: PRUEBAS DEL MODELO DE SEGURIDAD - Trabajos de Grado de …pegasus.javeriana.edu.co/~CIS1310SD03/Documento de Pruebas del... · Documento de Trabajo de Grado -

Documento de Trabajo de Grado - <Proyecto de investigación>

Ilustración 17: Aplicación instalada correctamente en el dispositivo

La aplicación se instala y aparece junto a las demás aplicaciones que se encuentran en el

dispositivo (ver Ilustración 18).

Ilustración 18: Aplicación ICalendar

Page 17: PRUEBAS DEL MODELO DE SEGURIDAD - Trabajos de Grado de …pegasus.javeriana.edu.co/~CIS1310SD03/Documento de Pruebas del... · Documento de Trabajo de Grado -

Documento de Trabajo de Grado - <Proyecto de investigación>

Al ejecutar la aplicación, se obtuvo lo siguiente (ver Ilustración 19):

Ilustración 19: Ejecución de la aplicación iCalendar

Al parecer funciona correctamente y se puede observar que el calendario esta en idioma

Mandarín.

Después de cerrar la aplicación y confirmar que no hay otras aplicaciones corriendo en el

background del dispositivo, se inició la aplicación AndroidAssistant, para ver que procesos y

recursos se estaban usando en ese momento (ver Ilustración 19).

Page 18: PRUEBAS DEL MODELO DE SEGURIDAD - Trabajos de Grado de …pegasus.javeriana.edu.co/~CIS1310SD03/Documento de Pruebas del... · Documento de Trabajo de Grado -

Documento de Trabajo de Grado - <Proyecto de investigación>

Ilustración 20: Información de los procesos y recursos con la aplicación AndroidAssistant

La Ilustración 20 e Ilustración 21, comprueban que la aplicación iCalendar, se está ejecutando

en el dispositivo, sin consentimiento del usuario.

Ilustración 21: Consumo de recursos de la aplicación sin consentimiento del usuario

Al momento de ejecutar la aplicación iCalendar nuevamente en el dispositivo, se encuentra lo

siguiente: un mensaje de error diciendo que la aplicación dejó de funcionar (ver Ilustración 22).

Page 19: PRUEBAS DEL MODELO DE SEGURIDAD - Trabajos de Grado de …pegasus.javeriana.edu.co/~CIS1310SD03/Documento de Pruebas del... · Documento de Trabajo de Grado -

Documento de Trabajo de Grado - <Proyecto de investigación>

Ilustración 22: Mensaje de error de la aplicación ICalendar

Con esto se pudo determinar que la aplicación iCalendar, envía un SMS a un servidor remoto y

deja de funcionar. Esto solo se realiza una vez, como se pudo apreciar en el análisis de código

de la aplicación.

2.2 Segundo ataque: Android.stels

Para probar el ataque basado en web, descrito en el Documento de ataques según Principios de

Seguridad se tuvo en cuenta la aplicación Android.stels. Esta aplicación conlleva a la pérdida de

información en el dispositivo. A continuación se describe el proceso para llevar a cabo la prueba en

el dispositivo Android.

Page 20: PRUEBAS DEL MODELO DE SEGURIDAD - Trabajos de Grado de …pegasus.javeriana.edu.co/~CIS1310SD03/Documento de Pruebas del... · Documento de Trabajo de Grado -

Documento de Trabajo de Grado - <Proyecto de investigación>

Ilustración 23: Descarga de la aplicación FLASHPLAYER.UPDATE

Como se puede observar en la Ilustración 23, el malware Android.stels, se baja con el nombre de

flashplayer.android y con el mismo icono del programa Adobe Flash Player [7]. Este malware es

bajado de una página web, en la cual se asegura que se encuentra el programa requerido por el

usuario. El usuario descarga esta aplicación, porque en los dispositivos Android muchas veces se

solicita este programa, para poder ver videos o páginas web (muchas requieren de este

complemento).

Lo que se puede observar es que el malware se hace pasar por un programa legítimo, en este caso

Adobe Flash Player.

Page 21: PRUEBAS DEL MODELO DE SEGURIDAD - Trabajos de Grado de …pegasus.javeriana.edu.co/~CIS1310SD03/Documento de Pruebas del... · Documento de Trabajo de Grado -

Documento de Trabajo de Grado - <Proyecto de investigación>

Ilustración 24: Instalación de la aplicación FLASHPLAYER.UPDATE

Al momento de instalar la aplicación, se puede observar que el malware pide permisos que no

están relacionados con los de una aplicación como Adobe Flash Player, como por ejemplo:

mensajes, información personal o servicios que cuestan dinero, llamadas, entre otros (ver

Ilustración 24).

Page 22: PRUEBAS DEL MODELO DE SEGURIDAD - Trabajos de Grado de …pegasus.javeriana.edu.co/~CIS1310SD03/Documento de Pruebas del... · Documento de Trabajo de Grado -

Documento de Trabajo de Grado - <Proyecto de investigación>

Después de que se instala la aplicación y se ejecuta en el dispositivo, se muestra el siguiente

mensaje: “Your Android device version does not support this update! Setup is cancelled”. Lo

cual significa que la aplicación deja de funcionar en el dispositivo (ver Ilustración 25).

Ilustración 25: Mensaje de error de la aplicación FLASHPLAYER.UPDATE

Por medio de la herramienta AndroidAssistant, se puede determinar que así la aplicación deje de

funcionar, sigue consumiendo recursos en el dispositivo (ver Ilustración 26).

Ilustración 26: Consumo de recursos de la aplicación FLASHPLAYER.UPDATE sin consentimiento del usuario

Page 23: PRUEBAS DEL MODELO DE SEGURIDAD - Trabajos de Grado de …pegasus.javeriana.edu.co/~CIS1310SD03/Documento de Pruebas del... · Documento de Trabajo de Grado -

Documento de Trabajo de Grado - <Proyecto de investigación>

Otro aspecto importante de este malware, que se pudo determinar por medio de las pruebas en

el dispositivo es que luego de instalar FLASHPLAYER.UPDATE, esta aplicación no aparece

en las aplicaciones instaladas en el dispositivo, como se puede apreciar en la Ilustración 27.

Ilustración 27: Aplicaciones instaladas en el dispositivo

Por medio de la aplicación AndroidAssistant, se ven los permisos que está usando una

aplicación en el dispositivo (ver Ilustración 28) y se puede observar que la aplicación

FLASHPLAYER.UPDATE tiene permisos potencialmente maliciosos para el dispositivo del

usuario.

Ilustración 28: Permisos de la aplicación FLASHPLAYER.UPDATE

Page 24: PRUEBAS DEL MODELO DE SEGURIDAD - Trabajos de Grado de …pegasus.javeriana.edu.co/~CIS1310SD03/Documento de Pruebas del... · Documento de Trabajo de Grado -

Documento de Trabajo de Grado - <Proyecto de investigación>

Luego de analizar la aplicación durante un periodo de tiempo, se determinaron dos cosas:

- Después de la primera vez que se ejecuta la aplicación, esta abre el navegador del

dispositivo con la siguiente dirección electrónica: Ynfdbdybdd1.freeiz.com. Se asume que

esta dirección pertenece a la del servidor remoto con el cual se comunica la aplicación. Sin

embargo, esta dirección no puede ser accedida desde el dispositivo infectado.

Ilustración 29: Dirección del servidor remoto

- La aplicación FLASHPLAYER.UPDATE eliminó todos los contactos del dispositivo

Android en donde fue instalada. Como se puede observar en la Ilustración 30 y la

Ilustración 31.

Page 25: PRUEBAS DEL MODELO DE SEGURIDAD - Trabajos de Grado de …pegasus.javeriana.edu.co/~CIS1310SD03/Documento de Pruebas del... · Documento de Trabajo de Grado -

Documento de Trabajo de Grado - <Proyecto de investigación>

Ilustración 30: Lista inicial de contactos antes de ejecutar la aplicación

Ilustración 31: Número de contactos en el dispositivo antes de la ejecución de la aplicación Android.stels

Page 26: PRUEBAS DEL MODELO DE SEGURIDAD - Trabajos de Grado de …pegasus.javeriana.edu.co/~CIS1310SD03/Documento de Pruebas del... · Documento de Trabajo de Grado -

Documento de Trabajo de Grado - <Proyecto de investigación>

- La Ilustración 32 muestra como la aplicación FLASHPLAYER.UPDATE eliminó todos los

contactos del dispositivo Android en donde fue instalada.

Ilustración 32: Lista de contactos después de la instalación de Android.stels o FLASHPLAYER.UPDATE

2.3 Tercer ataque: live.photo.savanna / savageknife

Las aplicaciones live.photo.savanna y savageknife son un ejemplo de Aplicación de tipo adware

BadNews, descrita en el Documento de ataques según Principios de Seguridad.

Para probar este tipo de ataque, se instalaron ambas aplicaciones en el dispositivo y luego se

examinó una de estas por medio de las herramientas dex2jar y Java Decompiler. A continuación se

describe el proceso para llevar a cabo la prueba en el dispositivo Android.

Se descargaron ambas aplicaciones en el dispositivo (ver Ilustración 33), la primera aplicación

se descarga con el nombre live.photo.savanna pero cambia dicho nombre, al momento de

instalarse y la segunda con el nombre ru.blogspot.playsib.savageknife.

Page 27: PRUEBAS DEL MODELO DE SEGURIDAD - Trabajos de Grado de …pegasus.javeriana.edu.co/~CIS1310SD03/Documento de Pruebas del... · Documento de Trabajo de Grado -

Documento de Trabajo de Grado - <Proyecto de investigación>

Ilustración 33: Descarga de las aplicaciones BadNews

Al instalar la primera aplicación (live.photo.savanna), se pueden ver las primeras sospechas de

aplicación maliciosa: la aplicación solicita permisos de acceso total a internet, llamadas

telefónicas y de espacio de almacenamiento (ver Ilustración 34). Una aplicación de protectores

de pantalla como esta, no debería solicitar esa cantidad de permisos.

Ilustración 34: Permisos solicitados por la aplicación live.photo.savanna

Page 28: PRUEBAS DEL MODELO DE SEGURIDAD - Trabajos de Grado de …pegasus.javeriana.edu.co/~CIS1310SD03/Documento de Pruebas del... · Documento de Trabajo de Grado -

Documento de Trabajo de Grado - <Proyecto de investigación>

La segunda sospecha de aplicación maliciosa, es que live.photo.savanna no aparece junto a las

aplicaciones instaladas en el dispositivo como se puede ver en la Ilustración 35.

Ilustración 35: Vista de las aplicaciones instaladas en el dispositivo

Page 29: PRUEBAS DEL MODELO DE SEGURIDAD - Trabajos de Grado de …pegasus.javeriana.edu.co/~CIS1310SD03/Documento de Pruebas del... · Documento de Trabajo de Grado -

Documento de Trabajo de Grado - <Proyecto de investigación>

La aplicación live.photo.savanna solo es encontrada cuando el usuario intenta cambiar el fondo

de pantalla de su dispositivo.

Luego de instalar la aplicación, nos aseguramos de que ninguna otra aplicación se esté

ejecutando e iniciamos la aplicación AndroidAssistant, para ver los procesos que se ejecutan en

el dispositivo en ese momento (ver Ilustración 36).

Ilustración 36: Aplicaciones ASTRO y AndroidAssistant ejecutándose

Ilustración 37: Procesos ejecutándose

Page 30: PRUEBAS DEL MODELO DE SEGURIDAD - Trabajos de Grado de …pegasus.javeriana.edu.co/~CIS1310SD03/Documento de Pruebas del... · Documento de Trabajo de Grado -

Documento de Trabajo de Grado - <Proyecto de investigación>

Luego de examinar la Ilustración 37, se puede determinar que la aplicación live.photo.savanna

está ejecutando procesos sin el consentimiento del usuario. Además, cuando se ingresó a la

sección de Permisos en la aplicación AndroidAssistant (ver Ilustración 38), se encontró que la

aplicación tenía permisos para ver el estado del dispositivo, lo cual le permite realizar cualquier

tipo de acción maliciosa al dispositivo del usuario.

Ilustración 38: Permisos de la aplicación live.photo.savanna

Después de esto, se pasa a revisar el código de la aplicación por medio de las herramientas

dex2jar y Java decompiler y se encuentra lo siguiente:

Ilustración 39: Archivos que componen la aplicación live.photo.savanna

Page 31: PRUEBAS DEL MODELO DE SEGURIDAD - Trabajos de Grado de …pegasus.javeriana.edu.co/~CIS1310SD03/Documento de Pruebas del... · Documento de Trabajo de Grado -

Documento de Trabajo de Grado - <Proyecto de investigación>

Ilustración 40: Revisión de código de la aplicación

Ilustración 41: Función maliciosa

Page 32: PRUEBAS DEL MODELO DE SEGURIDAD - Trabajos de Grado de …pegasus.javeriana.edu.co/~CIS1310SD03/Documento de Pruebas del... · Documento de Trabajo de Grado -

Documento de Trabajo de Grado - <Proyecto de investigación>

Ilustración 42: Función maliciosa

La Ilustración 40 muestra el análisis de código que se realizó de la aplicación. Se encontró que

la clase que realizaba actos maliciosos era AdService.class.

Específicamente, la funcion fillPostData(), era la encargada de enviar los datos del dispositivo

al servidor remoto. Primero la aplicación ataca al dispositivo con publicidad y luego mediante

esta función, la aplicación consigue información del dispositivo como el identificador, el

operador, el modelo, el lenguaje y la información de las aplicaciones instaladas en el dispositivo

(getPackageInfo()).

La segunda prueba de este ataque tipo adware BadNews, se realizó con la aplicación

savageknife. Esta aplicación es un juego que al parecer fue infectado con este adware y que

estaba disponible en el mercado de aplicaciones de Google.

Page 33: PRUEBAS DEL MODELO DE SEGURIDAD - Trabajos de Grado de …pegasus.javeriana.edu.co/~CIS1310SD03/Documento de Pruebas del... · Documento de Trabajo de Grado -

Documento de Trabajo de Grado - <Proyecto de investigación>

Ilustración 43: Instalación del juego Savage Knife

Al momento de instalar la aplicación, se pueden observar los permisos que solicita (primera

sospecha de aplicación maliciosa): Comunicación de red, llamadas telefónicas, herramientas del

sistema, estado de la red, herramientas del sistema (ver Ilustración 43). Se puede notar que un

juego como estos no debería requerir de tales permisos.

Luego se ejecuta la aplicación (ver Ilustración 44):

Page 34: PRUEBAS DEL MODELO DE SEGURIDAD - Trabajos de Grado de …pegasus.javeriana.edu.co/~CIS1310SD03/Documento de Pruebas del... · Documento de Trabajo de Grado -

Documento de Trabajo de Grado - <Proyecto de investigación>

Ilustración 44: Ejecución del juego Savage Knife

Se procede a salir de la aplicación sin cerrarla y se inicia la aplicación AndroidAssistant para

ver los procesos que se están ejecutando en ese momento en el dispositivo:

Ilustración 45: Procesos ejecutándose

Page 35: PRUEBAS DEL MODELO DE SEGURIDAD - Trabajos de Grado de …pegasus.javeriana.edu.co/~CIS1310SD03/Documento de Pruebas del... · Documento de Trabajo de Grado -

Documento de Trabajo de Grado - <Proyecto de investigación>

De la Ilustración 45 se puede determinar que hay ciertos procesos que se están ejecutando en el

dispositivo cuando solo se tiene el juego SavageKnife ejecutándose.

Ilustración 46: Permisos del juego Savage Knife en ese momento

Después de finalizar el juego por primera vez, se puede notar que empieza el ataque publicitario

por parte de la aplicación y no solo cuando el juego Savage Knife se está ejecutando, sino

cuando se ejecuta cualquier aplicación instalada en el dispositivo, algo que no ocurría antes (ver

Ilustración 47).

Ilustración 47: Ataque tipo adware, publicidad al ejecutar aplicaciones

Luego de un periodo de tiempo, se encuentra lo siguiente (ver Ilustración 48): la aplicación

intenta enviar un correo electrónico a la persona tipo spam.

Page 36: PRUEBAS DEL MODELO DE SEGURIDAD - Trabajos de Grado de …pegasus.javeriana.edu.co/~CIS1310SD03/Documento de Pruebas del... · Documento de Trabajo de Grado -

Documento de Trabajo de Grado - <Proyecto de investigación>

Ilustración 48: Envío de correo por parte de la aplicación

Con la herramienta AndroidAssistant, monitorizamos los procesos que se están ejecutando y

vemos que la aplicación Savage Knife, ejecutó la aplicación Gmail, para enviar este correo al

usuario (ver Ilustración 49).

Ilustración 49: Procesos ejecutándose

Page 37: PRUEBAS DEL MODELO DE SEGURIDAD - Trabajos de Grado de …pegasus.javeriana.edu.co/~CIS1310SD03/Documento de Pruebas del... · Documento de Trabajo de Grado -

Documento de Trabajo de Grado - <Proyecto de investigación>

3. RESUMEN DE LOS ATAQUES REALIZADOS

3.1 iCalendar

Las pruebas de este ataque demostraron lo siguiente:

- La aplicación envía un MENSAJE DE TEXTO a un número de mensajería premium

ubicado en China sin el consentimiento del usuario y luego deja de funcionar

- La aplicación bloquea cualquier intento de respuesta para que el usuario no se dé cuenta

que está enviando el mensaje

- La aplicación además solicita permisos de: ubicación, mensajes, comunicación de red,

espacio de almacenamiento, llamadas telefónicas y envío de mensajes de texto

- La aplicación se sigue ejecutando aun después de haber sido finalizada su ejecución

3.2 Android.stels

Las pruebas de este ataque demostraron lo siguiente:

- La aplicación es descargada de una página web consultada desde el dispositivo y se hace

pasar por un programa legitimo (Adobe Flash Player)

- Para su instalación, la aplicación solicita permisos de: mensajes, información personal,

comunicación de red, espacio de almacenamiento, servicios que cuestan dinero y llamadas

telefónicas

- Después de que se instala y ejecuta, la aplicación deja de funcionar, pero sigue

consumiendo recursos en el dispositivo

- La aplicación no se encuentra dentro del dispositivo junto a las demás aplicaciones

instaladas (no aparece el icono de la aplicación)

- Luego de la primera vez que se ejecuta, la aplicación abre el navegador del dispositivo con

la página web del servidor remoto del cual recibe comandos. Dicha página no puede ser

vista desde el dispositivo infectado

- La aplicación elimina todos los contactos existentes del dispositivo

3.3 BadNews

Las pruebas de este ataque demostraron lo siguiente:

- Las aplicaciones live.photo.savanna y SavageKnife, se descargan en el dispositivo como

aplicaciones de protector de pantalla y de juego respectivamente

- Para su instalación, la aplicación live.photo.savanna solicita permisos de: espacio de

almacenamiento, comunicación de red, llamadas telefónicas, herramientas del sistema

(alertas), estado de la red, controles de hardware, herramientas del sistema (ejecutar

automáticamente al iniciar e instalar accesos directos)

- La aplicación no aparece junto a las demás aplicaciones instaladas en el dispositivo

- Para ejecutar la aplicación se debe cambiar el fondo de pantalla del dispositivo

Page 38: PRUEBAS DEL MODELO DE SEGURIDAD - Trabajos de Grado de …pegasus.javeriana.edu.co/~CIS1310SD03/Documento de Pruebas del... · Documento de Trabajo de Grado -

Documento de Trabajo de Grado - <Proyecto de investigación>

- Después de cambiar el fondo de pantalla del dispositivo, la aplicación ejecuta procesos sin

el consentimiento del usuario

- Luego de la revisión de código, se detectó que la aplicación envía datos del dispositivo a un

servidor remoto. Los datos que envía la información son: el identificador, el operador de

telefonía, el modelo del dispositivo, el lenguaje y la información de las aplicaciones

instaladas en el dispositivo

- La instalación de la segunda aplicación: SavageKnife, solicita los siguientes permisos:

espacio de almacenamiento, comunicación de red, llamadas telefónicas, herramientas del

sistema (inactividad del dispositivo), estado de la red, controles de hardware, herramientas

del sistema (ejecutar automáticamente al iniciar, eliminar procesos de fondo e instalar

accesos directos)

- La aplicación muestra publicidad en el dispositivo después de la primera vez que se ejecuta

o se juega

- Desde ese momento, cuando se ejecuta cualquier otra aplicación, se sigue mostrando

publicidad

- La aplicación ejecuta Gmail [8] para enviar a la persona un correo electrónico con

archivos adjuntos que aparentemente son spam

4. CONFRONTACION DE LOS RESULTADOS DE LAS PRUEBAS

CON EL MODELO DE SEGURIDAD PROPUESTO

4.1 Resultados de la primera prueba

Basados en los componentes identificados por el Modelo de Seguridad para el ataque iCalendar y

en los resultados de las pruebas presentadas en este documento para dicho ataque, se elaboró la

siguiente tabla de confrontación de resultados.

ATAQUE MODELO DE SEGURIDAD

Envío de mensaje de texto a numero premium SMS/MMS

TELEPHONY MANAGER

Solicitud de permiso de ubicación APPLICATION SANDBOX

LOCATION MANAGER

Solicitud de permiso de mensajes

APPLICATION SANDBOX

TELEPHONY MANAGER

SMS/MMS

Solicitud de permiso de comunicación de red APPLICATION SANDBOX

WIFI DRIVER

Solicitud de llamadas telefónicas APPLICATION SANDBOX

TELEPHONY MANAGER

Ejecución después de cerrar aplicación ¿?

Page 39: PRUEBAS DEL MODELO DE SEGURIDAD - Trabajos de Grado de …pegasus.javeriana.edu.co/~CIS1310SD03/Documento de Pruebas del... · Documento de Trabajo de Grado -

Documento de Trabajo de Grado - <Proyecto de investigación>

4.2 Resultados de la segunda prueba

Basados en los componentes identificados por el Modelo de Seguridad para el ataque Android.stels

y en los resultados de las pruebas presentadas en este documento para dicho ataque, se elaboró la

siguiente tabla de confrontación de resultados.

ATAQUE MODELO DE SEGURIDAD

Descarga de aplicación de una página web desde el dispositivo

LIBWEBCORE

WIFI DRIVER

Solicitud de permiso de mensajes

APPLICATION SANDBOX

TELEPHONY MANAGER

SMS/MMS

Solicitud de permiso de información personal

APPLICATION SANDBOX

TELEPHONY MANAGER

CONTACTOS

Solicitud de permiso de comunicación de red APPLICATION SANDBOX

WIFI DRIVER

Solicitud de permiso de espacio de almacenamiento

¿?

Servicios que cuestan dinero

APPLICATION SANDBOX

TELEPHONY MANAGER

SMS/MMS

Solicitud de permiso de llamadas telefónicas APPLICATION SANDBOX

TELEPHONY MANAGER

La aplicación sigue consumiendo recursos en el dispositivo

¿?

La aplicación no aparece junto a las demás aplicaciones instaladas

PACKAGE MANAGER

La aplicación abre el navegador del dispositivo con la página web del servidor remoto

LIBWEBCORE

WIFI DRIVER

Eliminación de los contactos del dispositivo TELEPHONY MANAGER

CONTACTOS

Page 40: PRUEBAS DEL MODELO DE SEGURIDAD - Trabajos de Grado de …pegasus.javeriana.edu.co/~CIS1310SD03/Documento de Pruebas del... · Documento de Trabajo de Grado -

Documento de Trabajo de Grado - <Proyecto de investigación>

4.3 Resultados de la tercera prueba

Basados en los componentes identificados por el Modelo de Seguridad para el ataque BadNews y en

los resultados de las pruebas presentadas en este documento para dicho ataque, se elaboró la

siguiente tabla de confrontación de resultados.

ATAQUE MODELO DE SEGURIDAD

Solicitud de permiso de espacio de almacenamiento

¿?

Solicitud de permiso de comunicación de red APPLICATION SANDBOX

WIFI DRIVER

Solicitud de permiso de llamadas telefónicas APPLICATION SANDBOX

TELEPHONY MANAGER

Solicitud de permiso de herramientas del sistema (alertas)

¿?

Solicitud de permiso de controles de hardware ¿?

Solicitud de permiso herramientas del sistema (ejecución automática al iniciar e instalar

accesos directos)

APPLICATION SANDBOX

HOME

La aplicación no aparece junto a las demás aplicaciones instaladas

PACKAGE MANAGER

La aplicación ejecuta procesos sin el consentimiento del usuario

¿?

Envío de datos del dispositivo a un servidor remoto

WIFI DRIVER

TELEPHONY MANAGER

PACKAGE MANAGER

Solicitud de permiso herramientas del sistema (inactividad del dispositivo)

¿?

Solicitud de permiso estado de la red APPLICATION SANDBOX

WIFI DRIVER

Publicidad en el dispositivo HOME

PACKAGE MANAGER

Ejecución de Gmail para envío de correo electrónico

PACKAGE MANAGER

WIFI DRIVER

EMAIL

Page 41: PRUEBAS DEL MODELO DE SEGURIDAD - Trabajos de Grado de …pegasus.javeriana.edu.co/~CIS1310SD03/Documento de Pruebas del... · Documento de Trabajo de Grado -

Documento de Trabajo de Grado - <Proyecto de investigación>

5. MITIGACION DE LOS ATAQUES PROBADOS

5.1 Mitigación del primer ataque

Para mitigar el ataque iCalendar, el modelo propone a nivel de capas que se tenga en cuenta:

En la capa más baja de Kernel de Linux:

- Denegación de permisos que no sean necesarios al momento de instalación de la aplicación

por parte del Application Sandbox [9]

En la capa del Framework de aplicaciones:

- Denegación de permisos de “Llamadas telefónicas”, “Tus mensajes” y “Estado actual del

teléfono”, cuando la aplicación los solicite

- Denegación del permiso “Tu ubicación” cuando la aplicación lo solicite

- Desactivar opción de “Usar satélites GPS”, por parte del dispositivo cuando se esté usando

la aplicación

En la capa de aplicaciones:

- Uso de políticas dinámicas SELinux [10], para cambiar en tiempo de ejecución los modos

permisivos del dispositivo con respecto a las solicitudes que realiza la aplicación

5.2 Mitigación del segundo ataque

Para mitigar el ataque Android.stels, el modelo propone a nivel de capas que se tenga en cuenta:

En la capa más baja de Kernel de Linux:

- Conexión solo a redes con seguridad Wifi Protegida (WPA o WPA2) [11] [12]

En la capa de librerías / tiempo de ejecución Android:

- Deshabilitar la opción de “Recordar claves” en el dispositivo, para que el navegador no las

recuerde

- Sitios web con certificado HTTPS [13] [14] [15] (acceder solo a sitios web con certificado

HTTPS desde el dispositivo)

- Habilitar la opción de “Mostrar advertencias de Seguridad” en el navegador del dispositivo,

cuando se abran páginas web

Page 42: PRUEBAS DEL MODELO DE SEGURIDAD - Trabajos de Grado de …pegasus.javeriana.edu.co/~CIS1310SD03/Documento de Pruebas del... · Documento de Trabajo de Grado -

Documento de Trabajo de Grado - <Proyecto de investigación>

En la capa de Framework de aplicaciones:

- Remover servicios de aplicaciones innecesarios mediante un asistente para procesos y

servicios (aplicación)

En la capa de aplicaciones:

- Denegar permisos de lectura de información del teléfono (en donde se pueda obtener

información por ejemplo: de los contactos del dispositivo)

5.3 Mitigación del tercer ataque

Para mitigar el ataque BadNews, el modelo propone a nivel de capas que se tenga en cuenta:

En la capa de Framework de aplicaciones:

- Denegación de permisos de “Llamadas telefónicas”, “Tus mensajes” y “Estado actual del

teléfono”, cuando la aplicación los solicite

En la capa de aplicaciones:

- Configurar el servidor de correos para bloquear o remover correos que contengan archivos

adjuntos que se usan generalmente para lanzar amenazas

Page 43: PRUEBAS DEL MODELO DE SEGURIDAD - Trabajos de Grado de …pegasus.javeriana.edu.co/~CIS1310SD03/Documento de Pruebas del... · Documento de Trabajo de Grado -

Documento de Trabajo de Grado - <Proyecto de investigación>

6. LISTAS DE CHEQUEO

Anexo Lista de chequeo CxOne para arquitectura

7. CONCLUSIONES

La aproximación de identificación de componentes que interactúan a la hora de realizar los

ataques propuestos para el modelo de seguridad es apropiada, pero hay algunos elementos que

no fueron tomados en cuenta por el mismo.

El modelo de seguridad propuesto puede ser usado para identificar posibles problemas futuros

con respecto a la Integridad, Confidencialidad y Disponibilidad en la plataforma.

El modelo de seguridad propuesto sirve como base para la elaboración de nuevos componentes

y nuevos mecanismos de seguridad que deben ser implementados en la plataforma para lograr

mitigar las amenazas y los perjuicios en los componentes que este identifico.

La confrontación realizada entre el modelo de seguridad y las pruebas funcionales permite

establecer el nivel de confianza que se puede tener del modelo de seguridad a la hora de

identificar componentes de la arquitectura que comprometen los principios de Integridad,

Confidencialidad y Disponibilidad.

El modelo de seguridad propuesto tuvo propuesto tuvo fallas en la identificación de

componentes en algunos casos porque el comportamiento de los ataques puede variar

dependiendo del modelo del dispositivo móvil en que se pruebe y la configuración que se tenga

del dispositivo.

Algunos de los ataques que se tuvieron en cuenta en la investigación, pueden reducir su impacto

en el dispositivo del usuario, si este usa de manera “correcta” dicho dispositivo.

Page 44: PRUEBAS DEL MODELO DE SEGURIDAD - Trabajos de Grado de …pegasus.javeriana.edu.co/~CIS1310SD03/Documento de Pruebas del... · Documento de Trabajo de Grado -

Documento de Trabajo de Grado - <Proyecto de investigación>

8. REFERENCIAS

[1] “Downloads - dex2jar - Tools to work with android .dex and java .class files - Google Project Hosting.” [Online]. Available: https://code.google.com/p/dex2jar/downloads/list. [Accessed: 08-Apr-2013].

[2] “JD-GUI | Java Decompiler.” [Online]. Available: http://java.decompiler.free.fr/?q=jdgui. [Accessed: 08-Apr-2013].

[3] “Android Assistant(18 features) - Aplicaciones de Android en Google Play.” [Online]. Available: https://play.google.com/store/apps/details?id=com.advancedprocessmanager&hl=es. [Accessed: 08-Apr-2013].

[4] “WinZip - La utilidad de compresión para Windows - Comprime y descomprime archivos.” [Online]. Available: http://www.winzip.com/win/es/index.htm. [Accessed: 08-Apr-2013].

[5] “Java SE Downloads.” [Online]. Available: http://www.oracle.com/technetwork/es/java/javase/downloads/index.html. [Accessed: 10-Apr-2013].

[6] “China Mobile Limited.” [Online]. Available: http://www.chinamobileltd.com/en/global/home.php. [Accessed: 08-Apr-2013].

[7] “Adobe - Instalación de Adobe Flash Player.” [Online]. Available: http://get.adobe.com/es/flashplayer/. [Accessed: 06-Apr-2013].

[8] “Gmail: Email from Google.” [Online]. Available: https://accounts.google.com/ServiceLogin?service=mail&passive=true&rm=false&continue=https://mail.google.com/mail/&ss=1&scc=1&ltmpl=default&ltmplcache=2. [Accessed: 30-Apr-2013].

[9] “Android Security Overview | Android Open Source.” [Online]. Available: http://source.android.com/tech/security/index.html. [Accessed: 18-Feb-2013].

[10] S. Bugiel, S. Heuser, and A.-R. Sadeghi, “Towards a Framework for Android Security Modules : Extending SE Android Type Enforcement to Android Middleware.” Intel Collaborative Research Institute for Secure Computing, 2012.

[11] “Glossary | Wi-Fi Alliance.” [Online]. Available: http://www.wi-fi.org/knowledge-center/glossary/wpa2%25E2%2584%25A2. [Accessed: 29-Apr-2013].

[12] “IEEE 802.11, The Working Group Setting the Standards for Wireless LANs.” [Online]. Available: http://www.ieee802.org/11/. [Accessed: 29-Apr-2013].

[13] “RFC 2818 - HTTP Over TLS.” [Online]. Available: http://tools.ietf.org/html/rfc2818. [Accessed: 13-Mar-2013].

[14] “HTTPS Security Improvements in Internet Explorer 7.” [Online]. Available: http://msdn.microsoft.com/en-us/library/bb250503.aspx. [Accessed: 13-Mar-2013].

[15] “HTTPS Everywhere FAQ,” Electronic Frontier Foundation. [Online]. Available: https://www.eff.org/https-everywhere/faq. [Accessed: 29-Apr-2013].