Des versions modifiées d’applications Android légitimes associées à Spotify, WhatsApp et Minecraft ont été utilisées pour diffuser une nouvelle version d’un chargeur de malware connu appelé Necro.
Kaspersky dit Certaines applications malveillantes ont également été détectées sur le Google Play Store. Elles ont été téléchargées au total 11 millions de fois. Elles incluent :
- Wuta Camera – Nice Shot Always (com.benqu.wuta) – Plus de 10 millions de téléchargements
- Max Browser-Private & Security (com.max.browser) – Plus d’un million de téléchargements
Au moment de la rédaction de cet article, Max Browser n’est plus disponible en téléchargement sur le Play Store. Wuta Camera, en revanche, a été mise à jour (version 6.3.7.138) pour supprimer le malware. La dernière version de l’application, 6.3.8.148, est sortie le 8 septembre 2024.
On ne sait pas encore clairement comment les deux applications ont été compromises par le malware, mais on pense qu’un kit de développement logiciel (SDK) malveillant permettant d’intégrer des fonctionnalités publicitaires en est la cause.
Necro (à ne pas confondre avec un botnet du même nom) a été découvert pour la première fois par la société de cybersécurité russe en 2019 alors qu’il était caché dans une application de numérisation de documents populaire appelée CamScanner.
CamScanner plus tard blâmé le problème sur un SDK publicitaire fourni par un tiers nommé AdHub qui, selon lui, contenait un module malveillant pour récupérer les logiciels malveillants de niveau supérieur à partir d’un serveur distant, agissant essentiellement comme un chargeur pour toutes sortes de logiciels malveillants sur les appareils des victimes.
La nouvelle version du malware n’est pas différente, même si elle intègre des techniques d’obfuscation pour échapper à la détection, en exploitant notamment la stéganographie pour masquer les charges utiles.
« Les charges utiles téléchargées pourraient, entre autres, afficher des publicités dans des fenêtres invisibles et interagir avec elles, télécharger et exécuter des fichiers DEX arbitraires, installer des applications téléchargées », a déclaré Dmitry Kalinin, chercheur de Kaspersky.
Il peut également « ouvrir des liens arbitraires dans des fenêtres WebView invisibles et exécuter n’importe quel code JavaScript dans celles-ci, exécuter un tunnel à travers l’appareil de la victime et potentiellement s’abonner à des services payants ».
L’un des principaux vecteurs de diffusion de Necro est la version moddée d’applications et de jeux populaires hébergés sur des sites non officiels et des boutiques d’applications. Une fois téléchargées, les applications initialisent un module nommé Coral SDK, qui, à son tour, envoie une requête HTTP POST à un serveur distant.
Le serveur répond ensuite avec un lien vers un prétendu fichier image PNG hébergé sur adoss.spinsok[.]com, après quoi le SDK procède à l’extraction de la charge utile principale – un fichier d’archive Java (JAR) codé en Base64.
Les fonctions malveillantes de Necro sont réalisées via un ensemble de modules supplémentaires (également appelés plugins) téléchargés à partir du serveur de commande et de contrôle (C2), lui permettant d’effectuer un large éventail d’actions sur l’appareil Android infecté.
- NProxy – Créer un tunnel à travers l’appareil de la victime
- île – Génère un nombre pseudo-aléatoire utilisé comme intervalle de temps (en millisecondes) entre les affichages de publicités intrusives
- web – Contacter périodiquement un serveur C2 et exécuter du code arbitraire avec des autorisations élevées lors du chargement de liens spécifiques
- Cube SDK – Un module d’aide qui charge d’autres plugins pour gérer les publicités en arrière-plan
- Appuyez sur – Téléchargez du code JavaScript arbitraire et une interface WebView à partir du serveur C2 qui sont responsables du chargement et de l’affichage secrets des publicités
- Happy SDK/Jar SDK – Un module qui combine NProxy et les modules Web avec quelques différences mineures
La découverte de Happy SDK a soulevé la possibilité que les acteurs de la menace derrière la campagne expérimentent également une version non modulaire.
« Cela suggère que Necro est très adaptable et peut télécharger différentes itérations de lui-même, peut-être pour introduire de nouvelles fonctionnalités », a déclaré Kalinin.
Les données de télémétrie recueillies par Kaspersky montrent qu’il a bloqué plus de dix mille attaques Necro dans le monde entre le 26 août et le 15 septembre 2024, la Russie, le Brésil, le Vietnam, l’Équateur, le Mexique, Taïwan, l’Espagne, la Malaisie, l’Italie et la Turquie représentant le plus grand nombre d’attaques.
« Cette nouvelle version est un chargeur à plusieurs étapes qui utilise la stéganographie pour masquer la charge utile de la deuxième étape, une technique très rare pour les logiciels malveillants mobiles, ainsi que l’obfuscation pour échapper à la détection », a déclaré Kalinin.
« L’architecture modulaire offre aux créateurs du cheval de Troie un large éventail d’options pour la livraison massive et ciblée de mises à jour du chargeur ou de nouveaux modules malveillants en fonction de l’application infectée. »