Ú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í
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 :
¿Y qué solución ofrecéis?
Sería interesante intentar subir ambas aplicaciones tanto a la AppStore como al Market de WP7, a ver si 'cuelan'
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...
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...
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.
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?
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 ... :/
Pues si llegáis a meter unas tetillas en la app entonces ya...
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?
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
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
¡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! :)
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
Entonces ya... me la bajo yo también :P
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.
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.
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é
Hombre, vandalizar la Wikipedia, per se, no supone un riesgo a tu intimidad y la integridad de tus datos
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
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".
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,
Y peor aún si la conexión se produce cuando el jabón está caído
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.
@outime:disqus Crea un cliente P2P para Android con Jisko descentralizado!
Pilla un poco tarde ya jaja
APPLE!! (es broma)
Malware con acciones inicuas basadas en los dos ejemplos en 3... 2... 1...
Esta conexion telnet no funciona desde fuera de la red local verdad?
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
ja!
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...
Pero habeis solucionado los bugs
.??mjajaja
Un poquito de educación informática para la gente
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.
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.
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!
¿Entonces no sirve de nada tener instalada una app de seguridad?, yo tengo lookout instalado
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"......
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!
¿Habéis probado si con una app antivirus en el dispositivo como por ejemplo Lookout https://www.mylookout.com/ deja instalarla sin más?
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
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.
Publicar un comentario