16 junio 2011

La cruda realidad del Market de Android

Últimamente el 'mercado' del malware para dispositivos móviles está al alza, ha pasado de discretas pruebas de concepto a sofisticadas piezas capaces de hacer rotos considerables.

Existe una creencia muy extendida sobre la confiabilidad del market de Android, me he encontrado con mucha gente que tiene su móvil sobre-saturado de aplicaciones de diversa índole y ante mi pregunta: ¿Pero no te da miedo instalar tantas cosas? La respuesta suele ser: Tranquilo, me lo he bajado del Market -sic-

Pero, ¿Es el market ese lugar confiable y seguro donde las aplicaciones están probadas? Para responder esta pregunta hemos hecho un experimento empírico que despeje toda duda.

Introduciendo una aplicación malware en el market

El primer paso consiste en darse de alta en el Market, con una cuenta Google es suficiente, después de eso, tan solo hay que pagar un canon de unos 20 euros para poder subir aplicaciones. Completado ese paso ya tienes la posibilidad de hacer upload de aplicaciones.

El siguiente paso es construir una aplicación malware, para ello he contado con el gran Luis Delgado (colaborador habitual del blog) que ha programado dos aplicaciones: Quote IT y Quote IT-Slim

Quote It es una de esas típicas aplicaciones en apariencia inocentes que ofrece la posibilidad de obtener 'frases divertidas' y mostrarlas al usuario, muy al estilo de las aplicaciones tipo 'Galleta de la fortuna'. La aplicación es 100% funcional solo que, además de hacer eso hace 'mas cosas'.

Quote It necesita para funcionar conexión a Internet ya que necesita 'bajarse las frases' para ello emplea una petición http GET hacia un servidor bajo nuestro control. Además, mientras realiza su función legítima, también es capaz de extraer los contactos de la agenda del teléfono, cifrarlos (empleando el algoritmo 3DES), y en la misma petición hacia el servidor, introducir la información como una aparentemente inocente cookie de sesión, de forma que en cada conexión, un dato privado viaja hacia el servidor. En aras de no causar daños reales, la aplicación auto-censura la información (cambia datos por asteriscos *) cuando la envía hacia fuera [El objetivo del estudio no es causar daños a terceros]

El permiso de acceso a la agenda telefónica se justifica ante el usuario por la capacidad 'social' de la aplicación de compartir las frases con otros usuarios vía correo electrónico


Quote It-Slim tiene la misma funcionalidad pública pero diferente payload de malware, en este caso lo que hace es troyanizar el sistema y abrir el puerto 8080 del teléfono móvil desde el cual, usando un cliente especial, se pueden introducir comandos en el sistema, acceder a ficheros o cambiar configuraciones de forma remota.



Y ahora la pregunta del millón: ¿Hemos podido subir y publicar dichas aplicaciones? La respuesta es: SI, nadie nos ha puesto problema alguno, las aplicaciones se subieron al market y estuvieron disponibles por varios días.

Una vez terminado el estudio retiramos ambas aplicaciones del Market, no obstante para el que esté interesado en verlas las puede descargar de aquí

Quote It

Quote It Slim


Lo divertido del asunto es que dichas aplicaciones, sin promoción alguna, en tan solo 3 días fueron descargadas por decenas de personas, incluso en varios casos hasta nos reportaron fallos que ¡nos ayudaron a solucionar bugs !

Y esta es la cruda realidad del Market de Android

42 comments :

Rubén Díaz dijo...

¿Y qué solución ofrecéis?

José Manuel Martínez dijo...

Sería interesante intentar subir ambas aplicaciones tanto a la AppStore como al Market de WP7, a ver si 'cuelan'

4v4t4r dijo...

Pero que cruda realidad :(
Magnífica la prueba de concepto Yago!!!
La verdad nunca me pregunté sobre el proceso de publicación de dichas apps... Y nosotros felices dando permisos a todas las aplicaciones que descargamos desde allí y nos consultan "Esta aplicación accederá a internet, contactos, etc" "Permitir?" Si...

No me quiero imaginar entonces las famosas apps para ipodtouch-iphone-ipad crackeadas y disponibles desde Installous... Has realizado alguna investigación sobre estas?

Un abrazo desde Colombia...

SiD dijo...

Va, eso no es importante. Lo importante es que gracias a estos
cacharritos nos  podemos conectar hasta en la ducha. ¿Quién no quiere
conectarse a la web 2.0 desde la ducha? }:-)


Bueno algo bueno tienen, puedo poner de fondo de "escritorio" el tiempo que va a hacer hoy.

Con
esto de los nuevos cacharritos tengo la sensación de volver al
windows95 y los modems; todo muy guay, todo muy molón pero de la
seguridad que se encarguen los demás.

La principal preocupación
de "las tiendas" y de los "uploaders" es ganar dinero. Ganarlo a
cualquier precio. Con esto como premisa...

mcklaw dijo...

Lo del market es algo sabido y comentado varias veces en este mismo foro que el control que existe en la apple store NO es el mismo que en el android market (para lo bueno y para lo malo). 

Igualmente la única solución es que como hace en algunas roms, se puedan deshabilitar permisos por aplicación en la instalación mismamente. Si no quiero que el angry birds acceda a mis contactos ¿porque tengo que dejarles? Bastaria tener dos o tres perfiles de aplicación para los usuarios menos avanzados y posibilidad de desactivar permisos específicos para los usuarios avanzados. El problema sería si las apps pudieran saltarse el sandbox de permisos, pero eso ya seria un bug.

sereno dijo...

Opino lo mismo que Rubén Díaz, ¿Qué solución ofrecéis? ¿Testear las aplicaciones es suficiente? 

Ya se ha dado esto en app store, no sé por qué atacar sólo al market de android cuando esta problemática es general. 

Con respecto a lo de pagar un canon, creo que te confundes muy mucho. No todo lo de Google es gratis, normalmente si, y hemos de agradecérselo, pero hay otras que no lo son. Google saca dinero de las ventas del market siempre, pero al contrario que Apple o Windows, no le cobra al usuario la licencia de su Sistema Operativo, además nos cobra por usar el market a los desarrolladores y NO a los "clientes". Esto se lo podrían aplicar en España muchas empresas (aunque hay más bien pocas) como por ejemplo Telefónica, pero bueno, eso es otra batalla perdida que tenemos los españoles.¿Es que Google lleva toda la vida viviendo del aire? Es fácil poner a parir a una empresa con motivos poco fundados. Por la regla de tres que aplicas aquí en tu web, todos los sistemas operativos son culpables directos y deben ir a la hoguera por el mero hecho de existir. El malware fué, ha sido y será un siempre un problema, cuando no se permita entrar al bicho de una manera se hará de otra, además el culpable directo siempre es el usuario y su desconocimiento. Políticas de concienciación vendrían bien, pero aquí en España la informática se la toman los políticos como el pito del sereno, así nos va claro...

Comprendería este ataque a Android cuando se detecten fallos de seguridad, pero no por aplicaciones de terceros.


saludos

PD: No está el código posteado ¿no?

wakkah dijo...

Si hubiese una aplicacion tipo wireshark para android que te permitiera escuchar lo que hace 1 cierta app, se podria monitorizar el trafico de esta y ver si hace cosas estrañas, si ves que hace un simple get pero envia un chorro de bites raro raro, pues ya sabes que algo puede estar detras, pero es lo de siempre, trabajamos con cajas negras ... :/

Invitado dijo...

Pues si llegáis a meter unas tetillas en la app entonces ya...

Waskas dijo...

Esta claro que la solución es que google apruebe todas las aplicaciones que se suban como apple... y ya de paso, que microsoft cambie Windows para que solo puedas instalar aplicaciones aprobadas por ellos, y nos cargamos tambien el malware en windows... total, quien quiere libertad si otros pueden protegerte del malware y de paso censurar para protegerte de ti mismo? 

Yago Jesus dijo...

Desde mi punto de vista, lo único que puedes hacer es aplicar el sentido común. Descargar aplicaciones solo que provengan de compañías solventes, que la aplicación esté probada y tenga cierta fama

Yago Jesus dijo...

Sí, en el artículo está referenciado aquí http://ldelgado.es/index.php?dir=seguridad/android Respecto al canon etc. Yo solo me he limitado a documentar el proceso, cada uno que saque sus propias conclusiones

Alberto Ballano dijo...

¡Gran post! La verdad es que es bastante interesante lo que se puede hacer con un par de sockets y algo de ingenio. El código además está muy bien, bastante legible y sobretodo instructivo.

En cuanto al tema del Market, sinceramente no creo que se pueda hacer mucho... Siempre se pueden buscar patrones (abrir un puerto y ejecutar algo que te envían por ahí es sospechoso cuanto menos), pero realmente creo que acaba dependiendo del usuario y del sentido común.

¡Un saludo! :)

Juan Aguilera dijo...

Eso mismo he pensado yo. Aunque en la AppStore tengan un control muy férreo creo que esto colaría. Habría que probarlo... :P

Juan Aguilera dijo...

Entonces ya... me la bajo yo también :P

Rubén González dijo...

Para enviar emails, sms, twits, mensajes de facebook... NO hace falta el permiso de la agenda. Para algo existen los Intent. Es OBVIO que si una aplicación te pide permiso para leer tu agenda es para... leer tu agenda, no para otra cosa.

Frandj72 dijo...

Esta prueba es como el que "hackea" la Wikipedia para decir que funciona mal.

Quitada esta mala comparación las aplicaciones del telefono hay que tratarlas como las aplicaciones del PC. No deberías instalar nada que venga de una fuente poco fiable y usar el sentido común cuando las uses.

http://lecturayescritura.com dijo...

Como siempre que leo los artículos del blog saco partido. Enhorabuena, el sitio web se ha convertido para mí en una referencia. Podré estar o no de acuerdo con algunos planteamientos pero siempre es enriquecedor leer los artículos colgados. Felicidades nuevamente, seguid así y animo a la gente a que participe con sus comentarios en este tipo de sitios.
Ánimo y suerte con las publicaciones, os seguiré

Yago Jesus dijo...

Hombre, vandalizar la Wikipedia, per se, no supone un riesgo a tu intimidad y la integridad de tus datos

alejandro nf dijo...

Una duda , para los que no tenemos el telefono rooteado y no podemos instalar un cliente para consola , busybox. Se puede "troyanizar" queriendo con tu programa y poder ejecutar aunque sea en remoto comandos?, con que usuario o que privilegios tendria.
Tambien se le puede buscar la parte buena a todo esto no? 

saludos

Luis Delgado dijo...

Si, las pruebas de QuoteIT-Slim las hice con mi teléfono que no está rooteado. Tendrás los privilegios de la aplicación (y no root) a la hora de ejecutar comandos pero es bastante "flexible".

Leo Fishman dijo...

Conociendo los antecedentes de Google, probablemente ya esten trabajando al respecto, y seguramente van a encontrar una solución que permita mantener la libertad del market y a la vez puede detectar y borrar automáticamente la mayoría de malwares usando sus algoritmos y muy pronto decantaran solo los desarrolladores que no tengan buena reputación contra los que hagan las cosas bien.
Otra alternativa que se me ocurre, seria que una organización externa, pueda certificar las aplicaciones que sus desarrolladores lo soliciten, dandole un grado extra y optativo de credibilidad.

Muy buena la nota.
Gracias,

Invitado dijo...

Y peor aún si la conexión se produce cuando el jabón está caído

Miguel Barreiro dijo...

De hecho este tema lo discutimos en el I/O del mes pasado y el AndroidTeam nos dijo que estaban ya trabajando en ello para dar más opciones al desarrollador de cara a definir mejor permisos y que sea todo más entendible de cara al usuario.

Sin embargo del lado del usuario sí que no planean dar demasiadas opciones, sólo intentar que sea todo más entendible a la hora de bajar una aplicación y qué es lo que ésta puede hacer con tus datos.

Hostmaster dijo...

@outime:disqus  Crea un cliente P2P para Android con Jisko descentralizado!

Rubén Díaz dijo...

Pilla un poco tarde ya jaja

patziku dijo...

APPLE!! (es broma)

Estupefacto dijo...

Malware con acciones inicuas basadas en los dos ejemplos en 3... 2... 1...

Miguelpc85 dijo...

Esta conexion telnet no funciona desde fuera de la red local verdad?

Joxelito dijo...

Lo habéis notificado a google?? creo que lo mejor es bombardearlos con pruebas como esta, por nuestra propia seguridad, la de todos. prefiero un market mas porculero y con filtros algo más exigentes que uno totalmente abierto a cualquier desgraciado, no debería ser demasiado problema hacer una especie de antivirus por el que pasen las aplicaciones subidas, y cuando una genere alarma, que se estudie su código para ver si realmente es maliciosa, google seguro que tiene medios para ello

Invitado dijo...

ja!

Friedrich G dijo...

Esto es igual que cuando te pides una hipoteca y firmas sin leer el documento, pues lo mismo. O si un extraño en la calle te pide todos los números que tengas en tu telefono porque les va a llamar para enviarle unos chuches.

Me parece que la solución a este tema son permisos más restrictivos para las aplicaciones y más información al usuario en el momento de la instalación de las aplicaciones. 
¿Qué va a ser un coñazo para el usuario? ¿qué a veces no tiene ni puta idea de que le están preguntando? ¿qué se puede asustar y dejar de usar el teléfono?.  Pues yo creo que vale la pena eso en vez de lo que tenemos ahora.

Esto tiene que ser como todo. O te lo aprendes tú o le preguntas a alguien que sepa. O lo dejas porque no es para ti. Y si alguien dice que la mayoría no quiere interesarse en nada y que no tiene tiempo para leer nada y que la plataforma que va a triunfar es la que sea más fácil de usar. Pues entonces creo que ya sabemos porque han habido tantas ejecuciones de hipotecas este año, pero creo que eso se sale del tema...

Pimpik dijo...

Pero habeis solucionado los bugs
.??mjajaja

Epe dijo...

Un poquito de educación informática para la gente

Juan Manuel Dato dijo...

La solución que yo pondría sería que en la compañía incluyan dentro de la subida al market una información sobre el nivel de privacidad que usa el servicio (como el acceso a la lista de contactos y tal) y, al menos declarándolo, la gente podría saber a qué atenerse al descargar el programa.

Dubfire dijo...

Bueno, el canon que nos cobra apple para desarollar esta mas que justificado por todo el proceso que realizan y la verificacion de la estabilidad de tu codigo y del consumo de recursos del terminal, te ayudan a optimizar en ocasiones y otras te rechazan la app por que no les parece etica o no les interesa... Ese canon no hace que no se pueda colar malware, es obvio que es practicamente imposible detectar el 100% del codigo que podemos esconder los desarrolladores dentro de un app, pero si evitan un 70% u 80% del que podria tener en la app store.

Yo creo que Google deberia pedir un canon por publicar en Android Market como hace Apple, ya que apple no cobra por desarrollar pero si por publicar ;), eso evitaria mucha basura dentro de la tienda, y mucho malware... pero no todo, esa es la medida que deberian tomar para empezar a limpiar.

Sergio dijo...

O poderse conectar con la camara de tu Android cuando estas en la ducha... no es como tener gafas de rayos X, pero se parece un poco! 

Ezra2206 dijo...

¿Entonces no sirve de nada tener instalada una app de seguridad?, yo tengo lookout instalado

Brais dijo...

Pues, tengo que decir que me la he descargado, instalado, y he tratado de pasarle en AntiSpyware, Antivirus, Antimalware que tengo instalado y su respuesta es "Quote IT is Safe"......

Luis Delgado dijo...

Es complicado que algun "antiX" lo detecte como peligroso puesto que accede a datos habiendo declarado los permisos correctamente... aquí el peligro está en el uso que se hace de los mismos... la clave, el sentido común.

App: internet + contactos -> permisos ok
Uso: contactos -> internet!

Mario Berdonces dijo...

¿Habéis probado si con una app antivirus en el dispositivo como por ejemplo Lookout https://www.mylookout.com/ deja instalarla sin más?

Anónimo dijo...

Tengo una aplicación en el market y no pasa x.ningún.tipo de control..aunque supuestamente este si.lo hace, lo.sigo porque.cuando subí la.app tardo menos de.30 minutos en.ser aprobada para ser puesta en el market mientras que.en. App Store tardo 1 semana y media

Elena dijo...

Esto cuela sólo con la mierda de Android que es lo peor que he probado en cuanto a privacidad y publicidad.
Nos queda iPhone (demasiado caro a mi parecer) o los nuevos Nokia Lumia con Windows Phone que son espectaculares y seguros.