Le cheval de Troie Android.MagicAd affiche des publicités malgré toutes les restrictions

Hot news | Menaces ciblant les appareils mobiles | Toutes les actualités | Alertes virales

Les spécialistes du laboratoire antivirus de Doctor Web ont découvert le cheval de Troie Android.MagicAd, qui contourne les restrictions du système d'exploitation Android de différentes manières et affiche des publicités lorsqu'il s'exécute en arrière-plan. L'une de ces méthodes est universelle, tandis que d'autres sont conçues pour des appareils de fabricants spécifiques. Parmi celles-ci, l'utilisation d'applications tierces et du lecteur multimédia système.

Android.MagicAd.1 a été distribué via la boutique d'applications officielle Xiaomi GetApps, ce Trojan a été caché dans plus de 50 jeux et programmes différents. Ils apparaissaient dans la boutique en ligne pour une courte durée – généralement un mois maximum, avant d’être retirés et remplacés par de nouveaux programmes. Il s'agissait peut-être d'une tentative des pirates de protéger Android.MagicAd.1 contre une détection prématurée tout en maintenant son activité. En effet, même après leur suppression de la boutique, les applications infectées restent installées sur les appareils des utilisateurs et peuvent continuer à exécuter des activités malveillantes. Actuellement, aucune des applications que nous avons identifiées et qui contenaient Android.MagicAd.1 n'est disponible en téléchargement dans le catalogue GetApps, et les développeurs qui les ont distribuées ont cessé de créer de nouveaux programmes contenant le cheval de Troie.

Une étude menée par les analystes de Doctor Web a révélé que les premières versions d'Android.MagicAd.1 sont apparues en 2025. Outre le catalogue GetApps, elles ont également été trouvées dans le Samsung Galaxy Store.

Exemples de jeux et de programmes du catalogue GetApps ayant contenu Android.MagicAd.1. Au moment de la publication de notre article, ces modifications du cheval de Troie, ainsi que d'autres, ne sont plus disponibles au téléchargement.

Certaines fonctionnalités malveillantes d’Android.MagicAd.1 résident dans des modules dex cachés dans des bibliothèques natives chiffrées au sein du répertoire de ressources de fichiers du cheval de Troie. Lors de son exécution, il déchiffre ces bibliothèques, en extrait les composants et les exécute.

Avant d'afficher des publicités, le cheval de Troie effectue une série de vérifications pour s'assurer de la sécurité de son environnement. Par exemple, il recherche des signes d'exécution dans un environnement virtuel, vérifie si son installation était organique, si l'adresse IP du périphérique infecté figure sur sa liste noire, etc.

Si Android.MagicAd.1 ne détecte aucune activité suspecte, il masque son icône dans la liste des programmes du menu de l'écran d'accueil. Il crée ensuite un canal de notification par lequel il lance plusieurs services persistants malveillants qui doivent s'exécuter en arrière-plan lorsque la fenêtre de l'application malveillante est fermée. Ensuite, à l'aide du planificateur de tâches, Android.MagicAd.1 crée une tâche qui redémarre périodiquement les services qui vérifient le fonctionnement du canal de notification et, si nécessaire, le redémarre. De plus, lorsqu'il est exécuté sur des appareils dotés de versions relativement anciennes du système d'exploitation Android, le cheval de Troie lance un écran virtuel afin que le fonctionnement de l'un de ses composants ne soit pas interrompu par le système.

Pour afficher des publicités en arrière-plan lorsque sa fenêtre est fermée, Android.MagicAd.1 utilise un certain nombre de techniques, sélectionnées en fonction du fabricant de l'appareil infecté. Dans ce cas, elles sont implémentées sans demander explicitement l'autorisation système SYSTEM_ALERT_WINDOW, qui permet à l'application d'être affichée par-dessus d'autres programmes.

Quelle que soit la méthode utilisée, toutes les bannières publicitaires sont chargées en tant qu'activité translucide (Translucent Activity), ce qui permet au cheval de Troie de les dessiner par-dessus les fenêtres existantes.

Exemples de publicités affichées par Android.MagicAd.1

Une des techniques consiste à utiliser des intentions (intents) adressées à d'autres applications. Cela permet au cheval de Troie de contourner les restrictions des versions récentes d'Android qui empêchent les programmes de se lancer automatiquement. En fonction du modèle de l'appareil infecté, Android.MagicAd.1 utilise cette technique soit pour afficher lui-même des publicités, soit pour « forcer » directement les programmes cibles à afficher des bannières publicitaires.

Dans une variante de cette méthode, le cheval de Troie cible :

  • le navigateur Mi Browser sur les appareils Xiaomi ;
  • l’interface utilisateur graphique MIUI SystemUI sur les appareils Xiaomi ;
  • Lanceur Amazon Fire TV Home Screen sur les appareils Amazon TV.

Il s'agit d'applications système sur les appareils correspondants ; elles peuvent donc gérer les intentions même si elles ne sont pas lancées directement par l'utilisateur. Tant que ces programmes sont actifs et peuvent recevoir des intentions, Android.MagicAd.1 peut les utiliser pour afficher des publicités.

Il est important de noter que si Mi Browser est installé sur un appareil Xiaomi en tant qu'application non système, le cheval de Troie peut également l'utiliser pour afficher des publicités, jusqu'à ce que la fenêtre du navigateur ne soit pas fermée.

Lorsqu’Android.MagicAd.1 détecte Mi Browser sur un appareil compatible, il envoie une intention reportée de lancer de la publicité à son composant dex (qui est détecté par Dr.Web comme Android.MagicAd.1.origin). Ce composant génère sa propre intention à partir de celle-ci et la transmet au navigateur, qui extrait l'intention originale et lance la publicité en conséquence.

L'interaction avec les deux autres programmes est légèrement différente : ils servent à exécuter le cheval de Troie en arrière-plan. Tout d'abord, Android.MagicAd.1 envoie une intention reportée au module Android.MagicAd.1.origin pour exécuter la publicité, et ce dernier transmet sa propre intention aux programmes cibles afin qu'ils le réveillent. Si l'application cible est MIUI SystemUI, elle répond en envoyant son intention de lancer le module. Si l'application cible est Amazon Fire TV Home Screen, elle lance directement le module en utilisant son nom de package. Une fois que le module Android.MagicAd.origin prend le contrôle, il lance les publicités qu'il a reçues dans une intention différée de l'application malveillante principale.

Si le cheval de Troie ne parvient pas à afficher la publicité, il réessaie cette méthode deux fois, et si cela échoue, il tente d'afficher la publicité directement, sans utiliser d'intentions reportées ni son module dex malveillant.

Une autre variante de cette méthode, similaire à la précédente, est utilisée pour faire fonctionner des programmes sur les appareils Vivo. La différence réside dans le fait que l’affichage des publicités est déclenché via Android Binder, un composant système qui assure l'interaction entre les processus. Dans ce cas, le cheval de Troie cible les programmes système suivants :

  • iManager,
  • Répértoire téléphonique,
  • Vivo Browser,
  • Baidu IME Customized.

Android.MagicAd.1 les exécute via Android Binder, en lui envoyant des intentions régulières via le conteneur de données Parcel. Ces programmes lancent ensuite le composant de cheval de Troie Android.MagicAd.origin qui, après avoir quitté l'arrière-plan, affiche des publicités.

Android.MagicAd.1 prévoit également plusieurs autres méthodes pour afficher des publicités en arrière-plan, notamment via le lecteur multimédia. Contrairement aux méthodes ciblant des appareils spécifiques, celle-ci est universelle et fonctionne sur la plupart des modèles de différents fabricants. Android.MagicAd.1 décrypte le fichier audio de son contenu et l'enregistre dans le répertoire de travail.

Le malware lance ensuite sa propre instance du lecteur multimédia système, règle son volume au minimum et l'associe au système global de gestion multimédia du système d'exploitation Android. Ensuite, pour lancer la publicité, Android.MagicAd.1 installe un récepteur de diffusion qui suit les clics dans ce lecteur. Le cheval de Troie utilise ensuite une commande adb spécialisée pour imiter les actions de l'utilisateur en appuyant sur le bouton d'enregistrement du lecteur, après quoi il ferme immédiatement la fenêtre. Appuyer sur le bouton déclenche le récepteur multimédia du système, ce qui permet à Android.MagicAd.1 de prendre le contrôle et de lancer la publicité.

Dr.Web Security Space pour appareils mobiles détecte et supprime de manière fiable toutes les versions connues du logiciel malveillant Android.MagicAd.1, qui ne représente donc aucune menace pour nos utilisateurs.

Indicateurs de compromission

Plus d'info sur Android.MagicAd.1

Plus d'info sur Android.MagicAd.1.origin

0
Dernières news Toutes les news