11 millones de dispositivos infectados con malware alojado en Google Play

Hace cinco años, investigadores descubrieron una preocupante amenaza en Google Play: una aplicación legítima que fue infectada con malware debido a una biblioteca que sus desarrolladores usaron para generar ingresos publicitarios. Esto provocó que más de 100 millones de dispositivos descargaran cargas maliciosas desde servidores controlados por atacantes. Hoy, una historia similar vuelve a repetirse.

Investigadores de Kaspersky, la misma firma de seguridad con sede en Moscú que alertó del primer caso, informaron que han encontrado dos nuevas aplicaciones en Google Play con más de 11 millones de descargas que estaban infectadas con el mismo tipo de malware. Se cree que el responsable, una vez más, es un kit de desarrollo de software (SDK) malicioso utilizado para integrar capacidades publicitarias.

Un esqueleto futurista con aspecto metálico y cables expuestos, que lleva auriculares, sostiene un teléfono móvil en un entorno oscuro y cibernético con luces de neón en tonos púrpura y azul. La escena sugiere un ambiente de alta tecnología o ciencia ficción, evocando la fusión entre lo humano y lo digital.

Los SDKs son herramientas que ayudan a los desarrolladores a acelerar el proceso de creación de aplicaciones al ofrecer marcos de trabajo que automatizan tareas repetitivas. Sin embargo, en este caso, un SDK no verificado integró un módulo que, además de mostrar anuncios, facilitaba la comunicación encubierta con servidores maliciosos. A través de este canal, las aplicaciones infectadas enviaban datos de los usuarios y descargaban código malicioso, que podía ser ejecutado o actualizado en cualquier momento.

El malware que infecta estas aplicaciones pertenece a la familia conocida como Necro, una amenaza furtiva que en esta ocasión ha empleado técnicas avanzadas como la esteganografía, un método de ocultación de datos poco habitual en el malware móvil. Este tipo de ataques permite que el código malicioso sea entregado y ejecutado con privilegios elevados en los dispositivos afectados.

Cuando los dispositivos son infectados por este malware, estos se conectan a un servidor de comando y control (C2) controlado por los atacantes. A través de peticiones web que contienen datos JSON cifrados, el dispositivo infectado informa sobre su estado y aplicaciones instaladas. El servidor, en respuesta, envía un enlace a una imagen PNG y metadatos que incluyen un hash. Si el módulo malicioso instalado en el dispositivo confirma que el hash es correcto, descarga la imagen.

Kaspersky explica que el SDK utiliza un algoritmo de esteganografía muy simple. Si el MD5 coincide, extrae el contenido oculto en los valores de los píxeles de la imagen PNG usando herramientas estándar de Android. A través de este método, el malware descifra una carga útil codificada en Base64, que se almacena en un archivo JAR. Este archivo se carga mediante DexClassLoader para ejecutar el código malicioso, siendo el punto de entrada el método «run».

Fragmento de código Java que muestra el proceso de extracción de datos ocultos en una imagen de mapa de bits (bitmap). El código utiliza métodos de manipulación de píxeles para obtener y decodificar la información oculta, incluida la creación de archivos de salida y la gestión de excepciones.

Las cargas posteriores que se instalan en el dispositivo permiten la descarga de plugins maliciosos diseñados para ejecutar distintas acciones, como ejecutar código con derechos elevados. Una de las técnicas empleadas para saltarse las restricciones de seguridad de Android es el ataque de reflexión, que permite a Necro crear una instancia separada de WebView, el componente de Android para mostrar páginas web en aplicaciones.

Este plugin también puede modificar URLs, agregando códigos de confirmación para suscripciones de pago y ejecutando código desde enlaces controlados por los atacantes. Los investigadores identificaron al menos cinco cargas útiles diferentes en su análisis de Necro.

Diagrama de flujo que ilustra la arquitectura modular del malware Necro. Muestra cómo el malware utiliza un cargador en varias etapas, incluyendo la descarga de imágenes PNG con cargas maliciosas ocultas mediante esteganografía, y cómo se conectan diferentes módulos como "Island", "Cube" y "Web" para ejecutar diversas acciones maliciosas en los dispositivos infectados.

Entre las aplicaciones infectadas por Necro, se encuentran Wuta Camera, que ha sido descargada más de 10 millones de veces, y Max Browser, con aproximadamente 1 millón de descargas. Ambas aplicaciones ya han sido actualizadas o eliminadas de Google Play. Sin embargo, Necro también ha infectado aplicaciones distribuidas en tiendas alternativas, como versiones modificadas de aplicaciones populares como Spotify, Minecraft y WhatsApp.

Para evitar ser víctima de este malware, es recomendable seguir las siguientes precauciones:

  1. Actualizar o eliminar las aplicaciones infectadas: Si tienes alguna de las aplicaciones mencionadas de Google Play y las versiones están infectadas, asegúrate de actualizarlas a una versión limpia o eliminarlas de tu dispositivo.
  2. Descargar aplicaciones solo de fuentes oficiales: Instalar aplicaciones de plataformas no oficiales puede exponer tu dispositivo a funcionalidades maliciosas.
  3. Utilizar una solución de seguridad confiable: Protege tu dispositivo con software de seguridad para prevenir la instalación de malware.

Indicadores de compromiso

Aplicaciones infectadas con el cargador:

AplicaciónVersiónMD5
Wuta Camera6.3.6.1481cab7668817f6401eb094a6c8488a90c
6.3.5.14830d69aae0bdda56d426759125a59ec23
6.3.4.1484c2bdfcc0791080d51ca82630213444d
6.3.2.1484e9bf3e8173a6f3301ae97a3b728f6f1
Max Browser1.2.428b8d997d268588125a1be32c91e2b92
1.2.352a2841c95cfc26887c5c06a29304c84
1.2.2247a0c5ca630b960d51e4524efb16051
1.2.0b69a83a7857e57ba521b1499a0132336
Spotify Plus18.9.40.5 (spotiplus[.]xyz)acb7a06803e6de85986ac49e9c9f69f1
GBWhatsApp2.22.63.160898d1a6232699c7ee03dd5e58727ede
FMWhatsApp20.65.081590d5d62a4d97f0b12b5899b9147aea

Servidores C2 del cargador:

  • oad1.bearsplay[.]com

Versiones del plugin shellPlugin:

URLMD5 del archivo extraído
hxxps://adoss.spinsok[.]com/plugin/shellP_100.png.pngfa217ca023cda4f063399107f20bd123
hxxps://adoss.spinsok[.]com/plugin/shellE_30.png59b44645181f4f0d008c3d6520a9f6f3

Carga útil de segunda etapa:

  • 37404ff6ac229486a1de4b526dd9d9b6

Servidor C2 de segunda etapa:

  • oad1.azhituo[.]com

Plugins de tercera etapa:

PluginMD5Veredicto
NProxyed6c6924201bc779d45f35ccf2e463bbTrojan.AndroidOS.Necro.g
Cube874418d3d1a761875ebc0f60f9573746Trojan.AndroidOS.Necro.j
cfa29649ae630a3564a20bf6fb47b928
Islandb3ba3749237793d2c06eaaf5263533f2Trojan.AndroidOS.Necro.i
Web/Lotus SDKccde06a19ef586e0124b120db9bf802eTrojan.AndroidOS.Necro.d
Happy SDK36ab434c54cce25d301f2a6f55241205Trojan-Downloader.AndroidOS.Necro.b
Jar SDK1eaf43be379927e050126e5a7287eb98Trojan-Downloader.AndroidOS.Necro.b
Tap522d2e2adedc3eb11eb9c4b864ca0c7fTrojan.AndroidOS.Necro.l

Servidores C2 de los plugins:

  • 47.88.246[.]111
  • 174.129.61[.]221
  • 47.88.245[.]162
  • 47.88.190[.]200
  • 47.88.3[.]73
  • hsa.govsred[.]buzz
  • justbigso[.]com
  • bear-ad.oss-us-west-1.aliyuncs[.]com

Las últimas noticias en nuestro podcast semanal

Comentarios

No hay comentarios aún. ¿Por qué no comienzas el debate?

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

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