Este artículo se publica en colaboración con MIT News.
Investigadores del MIT han descubierto que gran parte de los datos transferidos desde y hacia las 500 aplicaciones gratuitas más populares para teléfonos celulares Google Android apenas o en absoluto influyen en la experiencia del usuario.
De esas comunicaciones «encubiertas», aproximadamente la mitad parece iniciarse mediante paquetes estándar de análisis de Android, que informan sobre estadísticas de patrones de uso y de rendimiento de los programas y que están destinados a ayudar a los desarrolladores a mejorar las aplicaciones.
«Lo interesante es que el otro 50 por ciento no puede atribuirse a los análisis», afirma Julia Rubin, becaria posdoctoral del Laboratorio de Informática e Inteligencia Artificial del MIT (CSAIL), que dirigió el nuevo estudio. «Puede haber una razón muy buena para esta comunicación encubierta. No pretendemos decir que deba eliminarse. Solo decimos que el usuario debe ser informado.»
Los investigadores presentaron sus conclusiones la semana pasada en la Conferencia Internacional IEEE/ACM sobre Ingeniería de Software Automatizada. Junto a Rubin figuran como coautores del artículo Martin Rinard, profesor de Informática e Ingeniería en el MIT; Michael Gordon, que obtuvo su doctorado en Ingeniería Eléctrica e Informática en 2010 y permaneció en el CSAIL como investigador hasta julio pasado; y Nguyen Nguyen, de la firma de ingeniería UWin Software.
Las distintas operaciones que realiza una misma aplicación móvil pueden requerir comunicación externa y, en lugar de intentar coordinar el acceso compartido a un único canal de comunicación, la aplicación normalmente abre un canal de comunicación independiente para cada operación.
Los investigadores analizaron el número de canales de comunicación abiertos por las 500 aplicaciones móviles más populares y comprobaron que aproximadamente el 50 por ciento de ellos parece no tener relación con la experiencia del usuario. Eso no se traduce necesariamente de forma directa en la cantidad de datos intercambiados por esos canales, pero en sesiones breves de uso de la aplicación, la proporción de datos transmitidos irrelevante para la experiencia del usuario también puede llegar a ser de hasta el 50 por ciento.
En sesiones más largas, en las que se transfieren archivos grandes al teléfono —por ejemplo, mediante servicios de transmisión de música o vídeo—, el porcentaje de datos transmitidos de forma encubierta disminuye de manera constante. Pero los canales de comunicación encubiertos siguen abiertos.
Levantando el velo
Las aplicaciones móviles suelen ser de propiedad privada: su código fuente no está disponible públicamente, y sus desarrolladores con frecuencia se esfuerzan por disfrazar los detalles de la ejecución de los programas, una técnica conocida como ofuscación.
Pero todos los programas escritos para el sistema operativo Android deben utilizar un conjunto estándar de procedimientos al interactuar con el hardware del teléfono. Por eso es posible determinar qué partes de una aplicación Android controlan lo que se muestra en pantalla o se envía a través de los altavoces, y cuáles abren canales de comunicación.
Mediante el mapeo de todas las posibles vías por las que los datos pueden fluir a través de una aplicación, las herramientas analíticas de los investigadores pueden determinar si un comando dado para abrir un canal de comunicación dará lugar a una señal de control que llegue a la pantalla o al altavoz, y si no lo hará.
Para validar su técnica analítica, los investigadores produjeron versiones modificadas de 47 de las 100 mejores aplicaciones Android, en las que se desactivaron los canales de comunicación que sus herramientas identificaron como encubiertos. Después llevaron a cabo una serie de estudios de usabilidad en los que parejas de sujetos compararon el rendimiento de las versiones modificadas y no modificadas del programa.
En 30 de las 47 aplicaciones, los sujetos no detectaron diferencia alguna entre las dos versiones. En nueve casos faltaban los anuncios, pero la ejecución del programa no se vio afectada. Y en tres casos, los sujetos calificaron las diferencias como «menores». Por ejemplo, una popular aplicación gratuita de linterna ofrece a los usuarios la opción de comprar mejoras de funcionalidad y, en la pantalla de compra de la mejora, faltaba un icono.
Cinco de las aplicaciones dejaron de funcionar por completo. Pero en al menos uno de esos casos, el problema estaba en las protecciones que el desarrollador había implementado para impedir la reventa de su software propietario. Las razones del fallo de las otras cuatro no están claras.
¿Quién escucha?
Los investigadores también analizaron el tráfico de datos de algunas de las aplicaciones más populares, lo que les permitió obtener cierta información sobre los posibles propósitos de sus comunicaciones encubiertas. Una aplicación de Wal-Mart, por ejemplo, permite a los usuarios escanear los códigos de barras de los productos en los estantes de las tiendas Wal-Mart y consultar sus precios. Pero cada vez que lo hace, también envía información a un servidor que parece estar asociado con eBay. Desactivar esa conexión no tuvo efecto alguno en el comportamiento de la aplicación.
Curiosamente, Candy Crush Saga, un juego que recibió mala prensa hace unos años por presuntas violaciones de la privacidad, fue una de las pocas aplicaciones que parecían no llevar a cabo ninguna comunicación encubierta. «Se han convertido en un ciudadano modelo», dice Rubin.
Las herramientas analíticas que utilizaron los investigadores se basaron en un proyecto anterior del grupo de Rinard, que Gordon había dirigido. La Agencia de Proyectos de Investigación Avanzada de Defensa de Estados Unidos (DARPA) había patrocinado equipos de investigación en nueve universidades en una competición de cuatro años para desarrollar técnicas de identificación de software malicioso, o malware, en aplicaciones móviles desarrolladas para el Departamento de Defensa por contratistas externos. El DOD adoptó el sistema del equipo del MIT, que proporcionó el marco básico del nuevo análisis.
«Creo que es un gran trabajo», afirma Omer Tripp, responsable técnico de seguridad y privacidad móvil en el Centro de Investigación T. J. Watson de IBM. «Lo que supone un elemento de sorpresa —y de promesa— es el hecho de que realmente no se puedan localizar todos estos canales encubiertos en la publicidad y los análisis, que es lo que cabría esperar intuitivamente.»
Tripp especula con que parte de la comunicación encubierta podría ser anticipatoria, como intento de protegerse contra interrupciones en la conectividad a Internet. «Puede imaginarse que la aplicación quiera ser más resistente y seguir funcionando sin informar de ningún problema», dice. «Lo cual, si lo piensa bien, es una oportunidad interesante de optimización. Quizá algunos usuarios digan: “Si la aplicación es capaz de funcionar sin conectividad a Internet, y tengo un plan de datos limitado, o estoy en el extranjero y no quiero usar Internet, quiero saber que aún sabe hacerlo”. El estudio nos da en cierto modo la esperanza de que, en muchos casos, este tipo de optimización podría aplicarse.»
Tripp también señala un reciente episodio en el que piratas informáticos malintencionados modificaron herramientas de distribución pública diseñadas para desarrolladores de aplicaciones para iPhone, de modo que inyectaban código malicioso en cualquier aplicación que se creara con ellas. Incluso los desarrolladores mejor intencionados podrían así verse implicados en brechas de seguridad o de privacidad. «Estos son definitivamente casos de uso que nos interesan en IBM», dice.
La publicación no implica el respaldo de los puntos de vista por parte del Foro Económico Mundial.
Para mantenerse al día con la Agenda suscríbase a nuestro boletín semanal.
Autor: Larry Hardesty es colaborador externo de MIT News.
Imagen: Una mujer usa su smartphone mientras espera para cruzar una calle. REUTERS/Lucas Jackson.



