Une mystérieuse famille de malwares cachée dans Google Play depuis des années

Une mystérieuse famille de malwares Android, dont l’historique de dissimulation efficace de ses innombrables activités d’espionnage a été démontré, a de nouveau été découverte sur Google Play après plus de deux ans de dissimulation à la vue de tous.

Les applications, déguisées en applications de partage de fichiers, d’astronomie et de cryptomonnaie, hébergeaient Mandrake, une famille de malwares très intrusifs que la société de sécurité Bitdefender a dénoncée en 2020. Bitdefender a déclaré que les applications sont apparues en deux vagues, une de 2016 à 2017, puis de 2018 à 2020. La capacité de Mandrake à passer inaperçue était alors le résultat de mesures inhabituellement rigoureuses pour passer sous le radar. Elles comprenaient :

  • Ne fonctionne pas dans 90 pays, y compris ceux de l’ex-Union soviétique
  • Délivrant sa charge finale uniquement à des victimes extrêmement ciblées
  • Contenant un kill switch que les développeurs ont nommé seppuku (forme japonaise de suicide rituel) qui a complètement effacé toutes les traces du malware
  • Applications leurres entièrement fonctionnelles dans des catégories telles que la finance, l’automobile et les véhicules, les lecteurs et éditeurs vidéo, l’art et le design et la productivité
  • Corrections rapides pour les bugs signalés dans les commentaires
  • Épinglage de certificat TLS pour masquer les communications avec les serveurs de commande et de contrôle.

Se cachant dans l’ombre

Bitdefender a estimé le nombre de victimes à plusieurs dizaines de milliers pour la vague 2018-2020 et « probablement à plusieurs centaines de milliers sur toute la période de quatre ans ».

Après le rapport 2020 de Bitdefender, les applications infectées par Mandrake semblaient avoir disparu de Play. Aujourd’hui, la société de sécurité Kaspersky a signalé que les applications sont réapparues en 2022 et sont passées inaperçues jusqu’à présent. Outre une nouvelle série d’applications leurres, les opérateurs de Mandrake ont également introduit plusieurs mesures pour mieux dissimuler leur comportement malveillant, éviter l’analyse des « sandbox » utilisés par les chercheurs pour identifier et étudier les malwares, et lutter contre les protections contre les malwares introduites ces dernières années.

« Le logiciel espion Mandrake évolue de manière dynamique, améliorant ses méthodes de dissimulation, d’évasion du sandbox et de contournement de nouveaux mécanismes de défense », écrivent Tatyana Shishkova et Igor Golovin, chercheurs de Kaspersky. « Après que les applications de la première campagne soient restées indétectables pendant quatre ans, la campagne actuelle est restée dans l’ombre pendant deux ans, tout en étant toujours disponible en téléchargement sur Google Play. Cela met en évidence les formidables compétences des acteurs de la menace, et aussi le fait que des contrôles plus stricts des applications avant leur publication sur les marchés ne se traduisent que par des menaces plus sophistiquées et plus difficiles à détecter qui s’infiltrent dans les marchés d’applications officiels. »

L’une des caractéristiques clés de la dernière génération de Mandrake est la présence de plusieurs couches d’obfuscation conçues pour empêcher l’analyse par les chercheurs et contourner le processus de vérification utilisé par Google Play pour identifier les applications malveillantes. Les cinq applications découvertes par Kaspersky sont apparues pour la première fois sur Play en 2022 et sont restées disponibles pendant au moins un an. L’application la plus récente a été mise à jour le 15 mars et retirée du marché des applications plus tard dans le mois. Au début du mois, aucune des applications n’avait été détectée comme malveillante par un fournisseur majeur de détection de logiciels malveillants.

L’un des moyens d’obscurcissement consistait à déplacer les fonctionnalités malveillantes vers des bibliothèques natives, qui étaient alors obscurcies. Auparavant, Mandrake stockait la logique malveillante de la première étape dans ce qu’on appelle le fichier DEX de l’application, un type de fichier facile à analyser. En changeant l’emplacement vers la bibliothèque native libopencv_dnn.so, le code Mandrake est plus difficile à analyser et à détecter, car les bibliothèques natives sont plus difficiles à inspecter. En obscurcissant ensuite la bibliothèque native à l’aide de l’obfuscateur OLLVM, les applications Mandrake sont devenues encore plus furtives.

Les principaux objectifs de Mandrake sont de voler les identifiants de l’utilisateur et de télécharger et d’exécuter des applications malveillantes de niveau supérieur. Mais ces actions ne sont réalisées que dans les infections de stade avancé qui ne sont transmises qu’à un petit nombre de cibles soigneusement sélectionnées. La principale méthode consiste à enregistrer l’écran pendant que la victime saisit un mot de passe. L’enregistrement de l’écran est lancé par un serveur de contrôle qui envoie des commandes telles que start_v, start_i ou start_a. Les chercheurs expliquent :

Lorsque Mandrake reçoit une commande start_v, le service démarre et charge l’URL spécifiée dans une vue Web appartenant à l’application avec une interface JavaScript personnalisée, que l’application utilise pour manipuler la page Web qu’elle charge.

Pendant le chargement de la page, l’application établit une connexion WebSocket et commence à prendre des captures d’écran de la page à intervalles réguliers, tout en les codant en chaînes base64 et en les envoyant au serveur C2. Les attaquants peuvent utiliser des commandes supplémentaires pour ajuster la fréquence d’images et la qualité. Les acteurs malveillants appellent cela « vnc_stream ». Dans le même temps, le serveur C2 peut renvoyer des commandes de contrôle qui obligent l’application à exécuter des actions, telles que glisser vers une coordonnée donnée, modifier la taille et la résolution de la vue Web, basculer entre les modes d’affichage de la page de bureau et mobile, activer ou désactiver l’exécution de JavaScript, modifier l’agent utilisateur, importer ou exporter des cookies, revenir en arrière et en avant, actualiser la page chargée, zoomer sur la page chargée, etc.

Lorsque Mandrake reçoit une commande start_i, il charge une URL dans une vue Web, mais au lieu de lancer un flux « VNC », le serveur C2 commence à enregistrer l’écran et à sauvegarder l’enregistrement dans un fichier. Le processus d’enregistrement est similaire au scénario « VNC », mais les captures d’écran sont enregistrées dans un fichier vidéo. Dans ce mode également, l’application attend que l’utilisateur saisisse ses informations d’identification sur la page Web, puis collecte les cookies de la vue Web.

La commande start_a permet d’exécuter des actions automatisées dans le contexte de la page en cours, comme un glissement, un clic, etc. Si c’est le cas, Mandrake télécharge des scénarios d’automatisation à partir de l’URL spécifiée dans les options de la commande. Dans ce mode, l’écran est également enregistré.

Les enregistrements d’écran peuvent être téléchargés sur le C2 avec les commandes upload_i ou upload_d.

Ni Kaspersky ni Bitdefender n’ont fourni d’informations sur l’identité du groupe ou sur ses motivations pour diffuser un logiciel espion et une application de vol d’identifiants aussi sophistiqués que Mandrake. Les applications découvertes par Kaspersky apparaissent dans le tableau ci-dessous. Google les a depuis supprimées de Play. D’autres indicateurs de compromission peuvent être trouvés dans le message de Kaspersky.

Nom du paquet Nom de l’application MD5 Développeur Libéré Dernière mise à jour sur Google Play Téléchargements
com.airft.ftrnsfr AirFS 33fdfbb1acdc226eb177eb42f3d22db4 it9042 28 avril
2022
15 mars
2024
30 305
com.astro.dscvr Astro Explorer 31ae39a7abeea3901a681f847199ed88 Shevabad 30 mai,
2022
06 juin,
2023
718
com.shrp.sight ambre b4acfaeada60f41f6925628c824bb35e kodaslda 27 février
2022
19 août,
2023
19
com.cryptopulsing.browser CryptoPulsing e165cda25ef49c02ed94ab524fafa938 Shevabad 02 novembre
2022
06 juin,
2023
790
com.brnmth.mtrx Matrice cérébrale kodaslda 27 avril,
2022
06 juin,
2023
259

Source-147