Cuando alguien tiene un dispositivo con Android por defecto sólo se pueden instalar apps que vengan desde Google Play. Esto viene protegido de esta forma con la opción de configuración "No instalar APKs desde fuentes no confiables" del sistema operativo. El usuario tiene que, libremente, configurar el terminal para que se puedan instalar apps provenientes de esas fuentes no confiables. Por supuesto, el adware más agresivo o directamente el malware, vienen habitualmente desde fuentes "no confiables" por medio de downloaders, ya que a pesar de todos los casos que hemos visto de software "no pensado para el bien" en Google Play - como los casos de Shuabang Botnet, la campañas de JSDialers o de JSSMSers, las apps clickers, etcétera - por regla general hay más controles en Google Play que en algunos markets externos - como por ejemplo Mobogenie -.
El caso es que nuestro equipo del laboratorio de Eleven Paths, haciendo uso de los filtros de Tacyt y tirando de olfato, han sido capaces de descubrir una campaña de downloaders que utiliza la molestia masiva al usuario para poder forzar la instalación de apps desde markets no oficiales y meter lo que quieran. Es el Alarmware.
Como ya he comentado en muchas ocasiones, la forma en la que descubrimos apps con malas intenciones en Tacyt es mediante la detección de anomalías. Aplicaciones que prometen magia como hacerse Rayos X con el móvil en el caso de Shuabang Botnet, apps para el control remoto sin permisos de infrarojos en el caso de la campaña de clickers o apps de sexo porno vídeos gratis y HD con permisos de hacer llamadas en la investigación de JSDialers. En esta ocasión el desencadenante fue la vigilancia de Fake Apps en el mundo de los juegos.
La app que generaron las sospecha fue una fake app que utilizaba el nombre del juego Minecraft con el término Free en le título, y que contenía enlaces a dominios .ru con enlaces en PHP. Ya sabéis que con Tacyt la búsqueda de enlaces da mucho juego, como hemos visto en las investigaciones de apps con procesos de Login inseguro, la búsqueda de apps con enlaces a Dropbox y ficheros de contraseñas o la última que publicamos con las apps que usan servidores con WebServices en .NET inseguros.
Figura 3: Enlaces de la app apuntando a servidores .ru con ficheros PHP |
Sí, en este caso podría haber sido una app normal y corriente, pero la experiencia hace que los que han visto ya muchas veces este tipo de campañas del mundo del Fraude Online valoren positivamente el invertir un poco de tiempo en revisar manualmente a ver si son buenas o tienen malas intenciones. Y no, no tenían buenas intenciones.
Bastó con conectarse al enlace que aparece en la app para ver que el fichero JSON que se obtiene devuelve otro enlace PHP. Conectándose a este segundo se produce, mágicamente, la descarga de una nueva app, lo que deja claro que estas apps son Downloaders, como los que ya habíamos visto en el pasado.
Figura 4: El JSON de respuesta al conectar al enlace PHP visto en el código |
Tras mirar el código, se puede ver que la app lanza la ejecución de un servicio que se corre aleatoriamente minutos u horas después de haberse instalado la app, para hacer mucho más difícil el análisis automático mediante Sandbox de este tipo de apps.
Ejecutándola manualmente en un entorno de prueba, la app muestra inicialmente unos anuncios y luego oculta el icono de la app. A partir de ese momento, continuamente intenta la instalación de la app que se le sirve vía el enlace que aparece en el fichero JSON que se ha descargado del servidor web que aparece en el link que nos llevó a la investigación, tal y como se muestra en el siguiente gráfico.
Figura 5: Esquema de funcionamiento del Alarmware |
Lógicamente, si el terminal Android está configurado para "no instalar APKs de fuentes no confiables", la instalación fallará y se recibirá un mensaje como este continuamente.
Figura 6: Intento de instalación de app desde markets no oficiales |
Para conseguir que el usuario acabe por aceptar la instalación, la app utiliza mensajes TOAST para sacar alertas por pantalla en primer plano y lanzar sonidos de alarma asociados a ellos incluso aunque el terminal esté en modo vibración, lo que hace que el uso del sistema operativo sea prácticamente imposible hasta que el usuario acepta la instalación.
Figura 7: Mensaje con alerta de sonido que molesta para forzar la instalación |
Desinstalación y la campaña completa de apps
Si el usuario consigue parar la app que genera los mensajes y llega a asociar que todo proviene de aquella app que bajo que no funcionó, lo siguiente que tendrá que hacer es localizarla, y para ponerlo fácil se oculta como Google Service, lo que para la mayoría de los usuarios será una barrera insalvable.
Figura 8: El Alarmware se instala como "Servicio de Google" |
Una vez que teníamos la certeza de que esa app era maliciosa, descubrir el resto no era difícil ya que en esta ocasión se habían publicada todas las apps maliciosas con la misma cuenta de desarrollador. No obstante, buscar apps relacionadas con ella para localizar otras cuentas que pudiera estar utilizando la misma persona, localizamos más apps.
Figura 9: Apps relacionadas con esta campaña. Muchas de Minecraft |
Las revisamos y no eran maliciosas, pero nos dio más detalles de quién podría estar de esta campaña. Lo pondremos bajo vigilancia, para ver qué nos depara el futuro con esta fábrica de desarrollo. Las 5 apps maliciosas son las que hemos publicado en el blog de Eleven Paths.
Muchas gracias por la info¡
ResponderEliminarSalu2!
Una pregunta, ¿subir aplicaciones a google play que te localizan por gps está permitido?
ResponderEliminar