lunes, 27 de junio de 2011

google mobile app tus mails en plano

Si estás leyendo esto, estoy seguro de que tú también eres un curioso y que te gusta investigar y saber cómo funcionan las aplicaciones que usas.

Todos sabemos que a estas alturas los teléfonos móviles son ordenadores de bolsillo, los cuales cuentan con su propio sistema operativo. En estos dispositivos almacenamos información de carácter personal, casi exclusivamente, por eso debemos tener cuidado a la hora de elegir las aplicaciones que usamos.

Uno de los mayores problemas que tenemos con los teléfonos móbiles, o smartphones, a día de hoy, son las aplicaciones, diseñadas bajo el mítico lema "malo será". El diseño de las aplicaciones está orientado al uso de un único usuario.

Al estar el dispositivo mínimamente protegido, parece que algunos desarrolladores se olvidan de los casos de pérdida, robo y/o aplicación de técnicas forenses sobre el dispositivo. Dejando así nuestros datos e información personal expuestos al control de casi cualquiera, y ya sabemos aquello de "Un usuario malintencionado podría..." >;)

Personalmente, que pase esto en una aplicación de terceros de dudosa confianza, no me extraña, ni me preocupa, cada cual las instala bajo su cuenta y riesgo, pero que pase en un software propiedad de una compañía como Google, sí me parece preocupante.

Totalmente de forma casual, hoy le toca un análisis forense a google mobile app para symbian. En mi caso en un Nokia N85, que no es precisamente de última generación, pero, supongo que, lo hallado se puede extrapolar a cualquier otro teléfono con symbian s60.
Si alguno lo comprueba y quiere dejar un comentario, siempre es de agradecer ;)

Análisis a google mobile app




Lo primero que tenemos que hacer es conectar el teléfono como dispositivo de almacenamiento externo, para ver lo que tiene en el interior de forma cómoda.

Se puede analizar todo en el propio teléfono, aunque es recomendable volcar todo el contenido del teléfono a un directorio en nuestro ordenador y trabajar en ese directorio, así podemos hacer pruebas con tranquilidad y nos ahorraremos problemas si tocamos algo que no debemos ;)

Una vez tengamos el teléfono montado, o el contenido volcado, vamos al directorio /Private/102033E6/MIDlets/[101601f4] dónde encontramos los siguientes ficheros:


  • mail.jad - fichero de texto ASCII
  • mail_n60-3.jar - archivo jar
  • rms - directorio
  • scratch - directorio (vacío)
  • uids - fichero de datos (ilegible :( )

Así a simple vista, los que interesan son los ficheros mail.jad, mail_n60-3.jar y los ficheros alojados en rms/

mail.jad


Este fichero es puramente de configuración de la aplicación, en él se guarda la siguiente información


Nada demasiado interesante, sólo un par de variables con las que podemos juguetear >;)

mail_n60-3.jar


Este fichero es de tipo java archiver, al descomprimirlo vemos que contiene 161 archivos, entre ellos otro directorio.
Después de analizarlos todos con un pequeño script en bash encargado de buscar cadenas, no he encontrado nada interesante.

rms/


Al entrar en este directorio nos encontramos con un montón de ficheros de datos con extensión .rs.


Para empezar a analizarlos, por aquello de llevar un orden, empecé por _p_p_s3a3a_i_n_d_e_x.rs.

_p_p_s3a3a_i_n_d_e_x.rs


En este fichero lo único que encontramos son las direcciones de las cuentas configuradas en la aplicación, en mi caso dos. Y un montón de campos conv con una codificación (de los que luego hablaremos).


_p_p_s3a_0.rs


WTF? En este fichero, totalmente en texto plano aparecen las etiquetas de una de las cuentas de gmail, indicada al principio del fichero en la cadena mail.accounts?CUENTA@gmail.com


Si nos fijamos en el fichero podemos sacar otro par de curiosidades:
  • Las etiquetas que contienen "show" son las que están configuradas para ver siempre.
  • Si nos fijamos, al final de las etiquetas, aparece una segunda dirección gmail -tapada-, que pertenece a un filtro hecho exclusivamente para esa etiqueta.

_p_p_s3a_1.rs


Este fichero contiene los textos de la aplicación


ficheros _p_p_s3a_1_X.rs y _p_p_s3a_X.rs


Contienen los e-mails en texto plano


En mi caso, aquí me encontré 4 excepciones, _p_p_s3a_2.rs, _p_p_s3a_7.rs, _p_p_s3a_8.rs, y _p_p_s3a_b.rs.

_p_p_s3a_2.rs y _p_p_s3a_7.rs contienen las cookies de las dos cuentas configuradas.

_p_p_s3a_8.rs Parece un galimatías que contiene -siempre en texto plano- información sobre los contactos (alias + mail), y sobre los mails (etiqueta + fecha + título). En un par de líneas veremos la utilidad de este fichero.

_p_p_s3a_b.rs contiene información, sobre los contactos (alias + dirección de correo) y sobre conversaciones (fecha + hora + título)

En los ficheros que contienen los mails, no nos encontramos la dirección legible, en su lugar encontramos con una serie de campos separados por ":". Llaman la atención el campo conv y el campo msg, por llevar pegados textos cifrados. Si cogemos un mail al azar y anotamos el cifado de conv (y/o el de msg):


Y ahora vamos a _p_p_s3a_8.rs y buscamos ese texto cifrado, sabremos a quien iba dirigido ese mail en concreto (alias + dirección), la fecha (día/mes/año hora), el asunto del mensaje, carpeta (etiqueta) en la que está alojado y si está leído o no.


Sabiendo esto, no es difícil hacer un pequeño programa/script que automatice la tarea y nos saque nuevos ficheros con el contenido de los mails de forma, todavía, más comprensible >;)

No hay comentarios:

Publicar un comentario