Aplicación de bus coreano en Google Play lanza malware

El equipo de McAfee Mobile Research descubrió recientemente una nueva aplicación maliciosa para Android que se hace pasar por un complemento de la serie de aplicaciones de tráfico desarrollada por desarrolladores coreanos. La serie ofrece una variedad de información para varias regiones de Corea, como la ubicación de la parada de autobús, la hora de llegada del autobús, etc. Hay cuatro aplicaciones en la serie, tres de las cuales están disponibles en Google Play desde 2013 y otra aplicación alrededor de 2017. Actualmente, se han eliminado cuatro aplicaciones de Google Play y el complemento de enmascaramiento no se ha cargado en la tienda. Al analizar el pseudo-plugin, también estamos buscando el descargador inicial y otras cargas útiles. Encontramos que una versión específica de cada aplicación de la serie (cargada el mismo día) libera el malware en el dispositivo en el que está instalada, que También explica que después de cinco años de desarrollo finalmente fueron eliminados por Google Play.

Figura 1. La página de Google Play Cache de la aplicación Daegu Bus, una aplicación de la serie.

Después de instalar la aplicación de tráfico malicioso, descarga cargas adicionales del servidor web pirateado, incluidos los pseudo-complementos que adquirimos originalmente. Después de descargar e instalar el pseudo-complemento, hace algo completamente diferente: actúa como un complemento de la aplicación de tráfico e instala un troyano en el dispositivo, tratando de seducir a los usuarios para que ingresen la contraseña de su cuenta de Google y controlen completamente el dispositivo. Curiosamente, el malware utiliza una biblioteca nativa para controlar el dispositivo y eliminar la biblioteca para ocultar la detección. Utiliza nombres de servicios populares coreanos como Naver, KakaoTalk, Daum y SKT. Según nuestros datos de telemetría, la cantidad de dispositivos infectados es muy pequeña, lo que indica que la carga útil final solo se instala en una pequeña cantidad de destinos.

Primero, acciones maliciosas.

El siguiente diagrama ilustra el proceso general desde la distribución de malware a la infección del dispositivo.

Figura 2. Proceso de infección del dispositivo.

Al instalar una aplicación de tráfico malintencionado, verifica si el pseudo-plugin está instalado, y si no, lo descarga y lo instala desde el servidor. Después de eso, descarga y ejecuta un binario troyano nativo adicional, similar al troyano lanzado por el pseudo plugin. Una vez hecho todo, se comunicará con el servidor C2 y procesará los comandos que recibe.

En segundo lugar, el descargador inicial.

La siguiente tabla muestra información sobre la versión de cada aplicación de tráfico malicioso en la serie. Como se muestra en las estadísticas de instalación de Google Play, muchas aplicaciones han descargado estas aplicaciones.

A diferencia de la versión limpia, la versión maliciosa contiene una biblioteca nativa llamada «libAudio3.0.so».

Figura 3. Aplicación de transporte con biblioteca maliciosa incrustada.

En la clase BaseMainActivity de la aplicación, carga la biblioteca maliciosa y llama a startUpdate y updateApplication.

Figura 4. Biblioteca maliciosa cargada y ejecutada en la aplicación.

startUpdate comprueba si la aplicación está instalada correctamente al verificar si existe un archivo de bandera específico llamado «background.png» y si hay un complemento ficticio instalado. Si el dispositivo no ha sido infectado, el pseudo-plugin se descarga desde el servidor web pirateado y se instala después de mostrar el mensaje de Toast a la víctima. updateApplication descarga el binario desde el mismo servidor pirateado y lo carga dinámicamente. El archivo descargado (guardado como libSound1.1.so) se eliminará después de cargarlo en la memoria. Finalmente, ejecutará la función de exportación del troyano. Como se mencionó anteriormente, este archivo es similar al archivo eliminado por el pseudo-complemento, que se explicará más adelante en este artículo.

Figura 5 otras cargas

Tercero, el pseudo plugin.

El complemento falso se descarga desde un servidor web pirateado con una extensión de archivo «.mov» que parece un archivo multimedia. Cuando se instala y ejecuta, muestra un mensaje de Toast que indica que el complemento se ha instalado correctamente (en coreano) y llama a una función nativa llamada playMovie. El icono del pseudo plugin pronto desaparecerá de la pantalla. Las funciones nativas implementadas en LibMovie.so se almacenan en la carpeta de activos, que libera el troyano malicioso en el directorio de la aplicación que se está ejecutando actualmente, simulando ser el archivo libpng.2.1.so. El troyano liberado se incrustó originalmente en LibMovie.so xor’ed y se decodificó en el tiempo de ejecución. Después de otorgar el permiso, use dlsym para recuperar dinámicamente la dirección de la función exportada «Libfunc» en el troyano liberado. Elimine los archivos binarios publicados en el sistema de archivos para evitar la detección y finalmente ejecute Libfunc.

Figura 6 Mensaje de Toast al instalar malware

En otro proceso de rama, intenta acceder al archivo «naver.property» (si existe) en la tarjeta SD instalada y, si tiene éxito, intenta iniciar la acción «.KaKaoTalk» que muestra la página de Phishing de Google (detalles, por favor Vea la siguiente sección). El flujo total del gotero se muestra a continuación:

Figura 7. Flujo de ejecución del cuentagotas.

El siguiente es un fragmento del archivo de manifiesto que muestra que «.KaKaoTalk» se ha exportado.

Figura 8. El manifiesto de Android define «.KaKaoTalk» como una exportación

En cuarto lugar, utilizar la página de pesca de JavaScript

La clase KakaoTalk abre un archivo HTML local, javapage.html, y el correo electrónico del usuario registrado en el dispositivo infectado se configura automáticamente para iniciar sesión en su cuenta.

Figura 9. La clase KakaoTalk carga archivos HTML locales maliciosos

Después de cargar la página, la dirección de correo electrónico de la víctima se configura en la página local a través de la función de JavaScript setEmailAddress. Mostrar falso sitio de inicio de sesión de Google en coreano:

Figura 10. JavaScript malicioso muestra una página de inicio de sesión de Google bien diseñada con una cuenta de usuario

Hemos encontrado que los autores de malware utilizan los servicios legítimos de Google de la siguiente manera:

· Robar la cuenta de Google de la víctima y la contraseña

· Solicitar recuperación de contraseña para una cuenta específica

· Configure una dirección de correo electrónico de recuperación al crear una nueva cuenta de Google

Un elemento interesante de los ataques de phishing es que los autores de malware intentan configurar sus correos electrónicos como direcciones de recuperación para los servicios legítimos de Google. Por ejemplo, cuando un usuario hace clic en una nueva cuenta de Google en una página de phishing para crear un enlace, se abre un enlace cuidadosamente diseñado y la dirección de correo electrónico del autor del malware se usa como parámetro para RecoveryEmailAddress.

Figura 11. JavaScript bien diseñado intenta crear una dirección de correo electrónico de recuperación para una nueva cuenta de Google

Afortunadamente, para el usuario final, las intenciones maliciosas anteriores no han tenido éxito. Durante la fase de creación de la cuenta, los parámetros que contienen la dirección de correo electrónico del autor del malware se ignoran.

Cinco troyanos

Además de la página de phishing de Google, cuando se ejecuta la función «Libfunc» del troyano (liberada por el complemento falso o descargada del servidor), el teléfono está totalmente controlado. Recibe los comandos de la siguiente lista de servidores C2 codificados. La función principal del troyano se implementa en una función llamada «doMainProc». Tenga en cuenta que algunas variantes de caballo de Troya tienen funciones diferentes, pero en general son casi idénticas.

Figura 12. Lista codificada de servidores C2

La ubicación geográfica del servidor C2 codificado es la siguiente:

Figura 13. Ubicación del servidor C2

Dentro de la función doMainProc, el troyano recibe comandos del servidor C2 y llama al controlador apropiado. Parte del siguiente conmutador nos permite comprender los tipos de comandos admitidos por este troyano.

Figura 14. Un subconjunto de los controladores de comandos implementados en el troyano liberado

Como puede ver, tiene todas las características de un troyano común. Descargue, cargue y elimine archivos en su dispositivo, filtre información a servidores remotos y más. La siguiente tabla describe los comandos de C2 admitidos:

Figura 15. Comando C2

El troyano realiza una inicialización antes de ingresar al ciclo de procesamiento de comandos, como enviar un archivo de información del dispositivo al servidor y verificar el UID del dispositivo. El bucle se ingresa solo después de que el control de UID devuelve 1.

Figura 16 Servidor conectado antes de ingresar al bucle de comando

La indexación de directorios es especialmente importante en estos comandos. La estructura del directorio se almacena en un archivo llamado «kakao.property», y al indexar una ruta determinada en el dispositivo del usuario, verifica el archivo con una palabra clave específica y, si coincide, carga el archivo al servidor de carga remoto. Estas palabras clave son coreanas y se traducen al inglés como se muestra en la siguiente tabla:

Figura 17 palabra clave de búsqueda

Al observar las palabras clave, podemos predecir que los autores de malware buscan archivos relacionados con militares, políticos, etc. Estos archivos serán cargados en un servidor separado.

Figura 18 servidor de carga de archivos coincidentes de palabras clave

Resumen

Las aplicaciones pueden engañar fácilmente a los usuarios para que instalen información confidencial antes de que se filtre. Además, no es raro que el malware se infiltre en la tienda oficial de Google Play y dificulte que los usuarios protejan sus dispositivos. Este malware no es un intento de phishing normal, sino un ataque muy específico que busca archivos militares y políticos en el dispositivo de la víctima para intentar revelar información confidencial. Los usuarios siempre deben instalar aplicaciones en las que puedan confiar por completo, incluso si se descargan de una fuente confiable.

McAfee Mobile Security detecta esta amenaza como Android / MalBus y alerta a los usuarios móviles (si existen) mientras los protege de cualquier pérdida de datos. Para obtener más información sobre McAfee Mobile Security, visite https://www.mcafeemobilesecurity.com .

Hashes (SHA-256)

El programa de descarga inicial (APK)
• 19162b063503105fdc1899f8f653b42d1ff4fcfcdf261f04467fad5f563c0270 
• bed3e665d2b5fd53aab19b8a62035a5d9b169817adca8dfb158e3baf71140ceb 
• 3252fbcee2d1aff76a9f18b858231adb741d4dc07e803f640dcbbab96db240f9 
• e71dc11e8609f6fd84b7af78486b05a6f7a2c75ed49a46026e463e9f86877801

Pseudo-plugin (APK)
• ecb6603a8cd1354c9be236a3c3e7bf498576ee71f7c5d0a810cb77e1138139ec 
• b8b5d82eb25815dd3685630af9e9b0938bccecbb3d82ebcc

Troya
• b9d9b2e39247744723f72f63888deb191eafa3ffa137a903a474eda5c0c335cf 
• 12518eaa24d405debd014863112a3c00a652f3416df27c424310520a8f55b2ec 
• 91f8c1f11227ee1d71f096fd97501c17a1361d71b81c3e16bcdabad52bfa5d9f 
• 20e6391cf3598a517467cfbc5d327a7bb1248313983cba2b56fd01f8e88bb6b9

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.

A %d blogueros les gusta esto: