Se han utilizado versiones alteradas de aplicaciones legítimas de Android asociadas con Spotify, WhatsApp y Minecraft para distribuir una nueva versión de un cargador de malware conocido llamado Necro.
Kaspersky afirmó que algunas de las aplicaciones maliciosas también se encontraron en Google Play Store y se descargaron 11 millones de veces en total. Entre ellas se incluyen:
- Wuta Camera - Nice Shot Always (com.benqu.wuta) - Más de 10 millones de descargas
- Max Browser-Private & Security (com.max.browser): más de 1 millón de descargas
Ahora mismo, Max Browser ya no está disponible para descargar desde Play Store. Wuta Camera, por otro lado, se ha actualizado (versión 6.3.7.138) para eliminar el malware. La última versión de la aplicación, 6.3.8.148, se lanzó el 8 de septiembre de 2024.
Actualmente no está claro cómo ambas aplicaciones fueron comprometidas con el malware en primer lugar, aunque se cree que un kit de desarrollo de software (SDK) fraudulento para integrar capacidades publicitarias es el culpable.
Necro (que no debe confundirse con una botnet del mismo nombre) fue descubierto por primera vez por la empresa rusa de ciberseguridad en 2019 cuando estaba oculto dentro de una popular aplicación de escaneo de documentos llamada CamScanner.
Posteriormente, CamScanner atribuyó el problema a un SDK de publicidad proporcionado por un tercero llamado AdHub que, según dijo, contenía un módulo malicioso para recuperar malware de la siguiente etapa desde un servidor remoto, actuando esencialmente como un cargador para todo tipo de malware en los dispositivos de las víctimas.
La nueva versión del malware no es diferente, aunque incorpora técnicas de ofuscación para evadir la detección, aprovechando en particular la esteganografía para ocultar sus cargas útiles.
"Las cargas útiles descargadas, entre otras cosas, podrían mostrar anuncios en ventanas invisibles e interactuar con ellos, descargar y ejecutar archivos DEX arbitrarios e instalar las aplicaciones descargadas", dijo el investigador de Kaspersky, Dmitry Kalinin.
También puede "abrir enlaces arbitrarios en ventanas WebView invisibles y ejecutar cualquier código JavaScript en ellas, ejecutar un túnel a través del dispositivo de la víctima y potencialmente suscribirse a servicios pagos".
Uno de los principales vehículos de distribución de Necro son las versiones modificadas de aplicaciones y juegos populares que se encuentran alojados en sitios no oficiales y tiendas de aplicaciones. Una vez descargadas, las aplicaciones inicializan un módulo llamado Coral SDK, que, a su vez, envía una solicitud HTTP POST a un servidor remoto.
Posteriormente, el servidor responde con un enlace a un supuesto archivo de imagen PNG alojado en adoss.spinsok[.]com, tras lo cual el SDK procede a extraer la carga principal (un archivo Java (JAR) codificado en Base64).
Las funciones maliciosas de Necro se realizan a través de un conjunto de módulos adicionales (también conocidos como complementos) que se descargan desde el servidor de comando y control (C2), lo que le permite realizar una amplia gama de acciones en el dispositivo Android infectado.
- NProxy: crea un túnel a través del dispositivo de la víctima
- isla - Genera un número pseudoaleatorio que se utiliza como intervalo de tiempo (en milisegundos) entre las visualizaciones de anuncios intrusivos
- web - Contacta periódicamente a un servidor C2 y ejecuta código arbitrario con permisos elevados al cargar enlaces específicos
- Cube SDK: un módulo auxiliar que carga otros complementos para gestionar anuncios en segundo plano
- Tap - Descarga código JavaScript arbitrario y una interfaz WebView del servidor C2 que se encarga de cargar y ver anuncios de forma encubierta
- Happy SDK/Jar SDK: un módulo que combina NProxy y módulos web con algunas diferencias menores
El descubrimiento de Happy SDK ha planteado la posibilidad de que los actores de amenazas detrás de la campaña también estén experimentando con una versión no modular.
"Esto sugiere que Necro es altamente adaptable y puede descargar diferentes iteraciones de sí mismo, quizás para introducir nuevas características", dijo Kalinin.
Los datos de telemetría recopilados por Kaspersky muestran que bloqueó más de diez mil ataques de Necro en todo el mundo entre el 26 de agosto y el 15 de septiembre de 2024, siendo Rusia, Brasil, Vietnam, Ecuador, México, Taiwán, España, Malasia, Italia y Turquía los que representaron la mayor cantidad de ataques.
"Esta nueva versión es un cargador de múltiples etapas que utiliza esteganografía para ocultar la carga útil de la segunda etapa, una técnica muy rara para el malware móvil, así como ofuscación para evadir la detección", dijo Kalinin.
"La arquitectura modular ofrece a los creadores del troyano una amplia gama de opciones para la entrega masiva y dirigida de actualizaciones del cargador o nuevos módulos maliciosos dependiendo de la aplicación infectada".
Google compartió la siguiente declaración:
Todas las versiones maliciosas de las aplicaciones identificadas en este informe se eliminaron de Google Play antes de la publicación del informe. Los usuarios de Android están protegidos automáticamente contra las versiones conocidas de este malware mediante Google Play Protect, que está activado de forma predeterminada en los dispositivos Android con los Servicios de Google Play. Google Play Protect puede advertir a los usuarios o bloquear aplicaciones que se sabe que presentan un comportamiento malicioso, incluso cuando esas aplicaciones provienen de fuentes externas a Play.