Análisis y publicación por:
A principios de agosto, zLabs decidió echar un vistazo a algunas muestras de malware previamente desconocidas que Zimperium z9 Motor basado en aprendizaje automático detectado en la primera mitad del año. z9 for Mobile Malware es el único motor basado en aprendizaje automático capaz de detectar malware previamente desconocido en el dispositivo en tiempo real. Una de estas aplicaciones, “Play Market”, parece ser parte de una campaña dirigida a la monetización a través del abuso de anuncios y suscripciones. Para ayudar a ilustrar la amenaza de las aplicaciones cargadas fuera de Play Store, a continuación presentamos nuestro análisis de Play Market.
Play Market muestra una colección de comportamientos interesantes que están claramente diseñados para la persistencia y para engañar a los usuarios para que inicien la ejecución la primera vez, a saber:
- Imita la aplicación Google Play Store usando el mismo logotipo e ícono de la aplicación y tiene «Play Market» como su etiqueta; este es claramente un truco común para engañar al usuario para que abra el malware al menos una vez, como se muestra aquí:
- Una vez que se ha abierto la aplicación, MainActivity establece dos propiedades llamadas DONT_KILL_APP y COMPONENT_ENABLED_STATE_DISABLED que ocultan el ícono de la aplicación del cajón (y obligaron a nuestro analista a volver a habilitar el componente a través de adb para reiniciarlo);
- AndroidManifest.xml exporta un Broadcast Receiver con el filtro de intención android.provider.Telephony.SMS_RECEIVED; la única acción del método onReceive es abortar la transmisión posterior del mensaje SMS_RECEIVED;
- Una de las clases exporta algunos métodos de utilidad interesantes: un método para deshabilitar la conexión WiFi, uno para habilitar la conexión de datos móviles (a través de la reflexión) y otro para configurar el modo de timbre en RINGER_MODE_SILENT (evitando notificaciones de vibración y sonido);
- MainActivity también se encarga de invitar al usuario a habilitar el acceso al DevicePolicyManager (la configuración incluida es la predeterminada). El autor del malware elaboró dos mensajes para engañar al usuario para que habilite el acceso y posiblemente no lo revoque. De hecho, mientras Device Admin está activo, la aplicación no se puede desinstalar:
- “Для продолжения установки требуется доступ к памяти устройства, подтвердите доступ” que se traduce en “Para continuar con la instalación, es necesario acceder a la memoria del dispositivo, confirmar el acceso”;
- “Отключение данной функции может навредить вашему телефону или планшету, вы согласны ?” que se traduce en «Deshabilitar esta función puede dañar su teléfono o tableta, ¿está de acuerdo?»
La lista de técnicas interesantes antes mencionada se combina activamente con la cadena principal de eventos ejecutados por la aplicación:
-
- La aplicación declara dos métodos para obtener el contenido de una URL y para cargar páginas web en un WebView con JavaScript habilitado. La URL principal incrustada en la aplicación es http://cpw.00xff.net/p.php y está cargado con la información del dispositivo (v es la versión de la API del dispositivo, soy es el IMEI del dispositivo, sv es la versión de Android del dispositivo) y el parámetro acto con los siguientes valores:
- obtener tipo: en nuestras pruebas siempre devolvía la cadena «lleno»; el «lleno» la respuesta indica a la aplicación que deshabilite el WiFi y habilite a la fuerza los datos móviles, luego ejecute las solicitudes con las acciones «getcont» y «getrul»;
- getcont: devuelve la cadena rusa “подп|стоимость” que se tradujo a “sub|costo de”;
- tierra o anuncio: obtiene una URL que redirige a sitios web de publicidad o suscripción;
- obtener: descarga una secuencia de códigos JavaScript que se dividen, se cargan en WebView y se usan claramente para automatizar el clic de anuncios y botones de suscripción.
- La aplicación declara dos métodos para obtener el contenido de una URL y para cargar páginas web en un WebView con JavaScript habilitado. La URL principal incrustada en la aplicación es http://cpw.00xff.net/p.php y está cargado con la información del dispositivo (v es la versión de la API del dispositivo, soy es el IMEI del dispositivo, sv es la versión de Android del dispositivo) y el parámetro acto con los siguientes valores:
- Después de la primera ejecución, la aplicación también configura temporizadores para ejecutar la búsqueda de anuncios y suscripciones cada 24 horas o 1 hora. AndroidManifest.xml también exporta Broadcast Receiver para iniciar la ejecución después de un reinicio.
- Cada vez que se activa la funcionalidad de clic automático, el usuario no se da cuenta porque toda la ejecución se lleva a cabo en un WebView oculto.
Código JavaScript descargado
El siguiente es un ejemplo de código JavaScript descargado. Después de dividir en el ||| separador (que se usa como separador de líneas) y el || separador (que se utiliza como separador de elementos), obtenemos lo siguiente:
Como se puede ver, contiene llamadas javascript escritas ad-hoc para llenar formularios y hacer clic en botones. Este tipo de código es usado tradicionalmente por los clickers. Además, contiene varias URL que prueban que el autor está tratando de desencadenar eventos particulares en sitios cuidadosamente seleccionados.
Aunque no tiene ninguna relación con la cadena de ejecución principal, la aplicación incluye un archivo llamado htrerfgh (md5 e80e8801bebf93fd26c37cca85f32cb6) en la carpeta Activos. Resultó ser un video MP4 con unos segundos del “Nunca va a dar” canción de Rick Astley, y después de unos segundos, la cara de Rick Astley se cambia a la cara de rick harrison.
Durante el análisis dinámico, el malware se ha puesto en contacto con algunos dominios, ya sea durante la fase de configuración o durante la ejecución de las tareas de clic automático de publicidad y suscripción, y cambian según la localización de la solicitud.
El dominio de configuración incrustado en el APK es cpw.00xff.netmientras que algunos de los dominios contactados para publicidad y suscripción son:
- di6sartote.ru
- blw4-1.com
- marcaapuestas.es
- mpsnare.iesnare.com
- r.remarketingpixel.com
- seguimiento.perfecttoolmedia.com
- stats.g.doubleclick.net
- 7xc4n.com
Los hash de la muestra son:
- MD5: 4aa837d0fc1bf57b1e5df3884b6cfc71
- SHA1: 8df961d3722fcd02a5e14e51c2cf14821d40f9bb
- SHA256: 38muertos873bc40db7c6ecfc57c24b33758c4443a62cb179378401f1796cf3c11c
Nombre de la aplicación: Mercado de juego
Nombre del paquete: com.tosveokrtbv.xjortnrkl
SHA256: 38muertos873bc40db7c6ecfc57c24b33758c4443a62cb179378401f1796cf3c11c
Disponibilidad: La muestra no estaba disponible en Play Store y no está disponible en VirusTotal
Detección inicial de z9: Detectado por z9 para malware el 1 de enero de 2018
Como lo ha hecho con muchas otras muestras este año, Zimperium’s z9 El motor basado en aprendizaje automático detectó estas muestras mientras que otros proveedores no lo hicieron… tanto en el momento de la muestra inicial como incluso actualmente.