Nous avons découvert une nouvelle opération dans le cadre d'une longue campagne de cyber-espionnage au Moyen-Orient. Ciblant les utilisateurs d'Android via l'application malveillante Welcome Chat, l'opération semble avoir des liens avec le logiciel malveillant nommé BadPatch, qui est lié au groupe d'acteurs de la menace des pirates de Gaza connu également sous le nom de Molerats.

Notre analyse montre que l'application Welcome Chat permet d'espionner ses victimes. Cependant, il ne s'agit pas d'un simple espiongiciel. Le Welcome Chat est une application de chat qui fonctionne et qui offre les fonctionnalités promises ainsi que sa capacité d'espionnage cachée.

Nous avons découvert que cet espiongiciel faisait l'objet de publicité auprès d'utilisateurs avides de bavardage (ces applications sont interdites dans certains pays de la région du Moyen-Orient) sur un site web dédié (voir figure 1). Le fait que le site soit en arabe est conforme au ciblage de l'ensemble de la campagne à laquelle nous pensons que cette opération appartient. Le domaine a été enregistré en octobre 2019. Nous n'avons cependant pas pu déterminer quand le site web a été lancé.

Figure 1. Le site Web de l'application malveillante Welcome Chat

Le site web malveillant fait la promotion de l'application Welcome Chat, prétendant qu'il s'agit d'une plateforme de chat sécurisée disponible sur la boutique Google Play. Les deux affirmations sont fausses. En ce qui concerne la prétendue sécurité de l’application, rien ne pourrait être plus éloigné de la vérité. Non seulement le Welcome Chat est un outil d'espionnage, mais en plus, ses opérateurs ont laissé les données récoltées auprès de leurs victimes librement accessibles sur Internet. Et l'application n'a jamais été disponible sur la boutique officielle d'Android.

Figure 2. Malgré la légende indiquant que le produit est de « Haute qualité, sécurisé et disponible sur Google Play », le bouton conduit au téléchargement du fichier d'installation directement sur le site Web malveillant

Fonctionnalité/Analyse

Une fois que l'utilisateur a téléchargé l'application, il doit activer le paramètre « Autoriser l'installation d'applications de sources inconnues », car l'application n'a pas été téléchargée depuis le Play Store.

Après l'installation, l'application malveillante demandera à la victime d'autoriser des autorisations telles que l'envoi et l'affichage de SMS, l'accès à des fichiers, l'enregistrement audio, et l'accès aux contacts et à l'emplacement de l'appareil. Une liste aussi longue d'autorisations intrusives pourrait normalement rendre les victimes suspectes - mais avec une application de messagerie, il est naturel qu'elles soient nécessaires pour que l'application puisse fournir les fonctionnalités promises.

Figure 3. Demandes d'autorisation par l’espiongiciel Welcome Chat

Afin de pouvoir communiquer avec les autres utilisateurs de cette application, l'utilisateur doit s'enregistrer et créer un compte personnel (voir figure 4).

Figure 4. La boîte de dialogue d'inscription/connection de l'application Welcome Chat

Immédiatement après avoir reçu ces autorisations, le Welcome Chat envoie des informations sur l'appareil à son C&C et est prêt à recevoir des commandes. Il est conçu pour contacter le serveur C&C toutes les cinq minutes.

En plus de sa fonction principale d'espionnage - la surveillance des communications de ses utilisateurs - l'application Welcome Chat peut effectuer les actions malveillantes suivantes : exfiltration des messages SMS envoyés et reçus, historique des appels de log, liste de contacts, photos des utilisateurs, appels téléphoniques enregistrés, localisation GPS de l'appareil et informations sur l'appareil.

Une application cheval de Troie ou développée par un attaquant?

Une question intéressante se pose avec les applications de cheval de Troie effectivement fonctionnelles. L'application est-elle une version d'une application propre développée par un attaquant ou les attaquants ont-ils développé une application malveillante à partir de zéro?

Dans les deux cas, il est facile pour les attaquants d'espionner les messages échangés dans l'application car ils disposent - naturellement - des clés d'autorisation de la base de données utilisateur.

Bien que la première option soit typique pour les applications cheval de Troie, nous pensons que dans ce cas particulier, la deuxième explication est plus probable.

En général, les applications pirates sont créées par un processus d'ajout de la fonctionnalité malveillante à une application légitime. Les malfaiteurs trouvent et téléchargent une application appropriée. Après l'avoir décompilée, ils ajoutent la fonctionnalité malveillante et recompilent l'application, qui est maintenant malveillante mais fonctionne toujours, pour la diffuser auprès du public souhaité.

Cette option apporte un questionnement majeur : à ce jour, nous n'avons pu découvrir aucune version propre de l'application Welcome Chat. Non seulement elle ne se trouve sur aucun des marchés Android que nous avons sur notre radar, mais en se basant sur les algorithmes de correspondance binaire de nos systèmes de classification d'échantillons, nous n'avons trouvé aucune application propre avec cette même fonctionnalité de chat. Il est intéressant de noter à cet égard qu'une version propre de Welcome Chat, sans la fonctionnalité d'espionnage, a été téléchargée sur VirusTotal à la mi-février 2020 (hachage : 757bd41d5fa99e19200cee59a3fd1577741ccd82). La version malveillante a été soumise pour la première fois à VirusTotal une semaine plus tôt.

Cela nous amène à penser que les attaquants ont développé l'application de chat malveillante de leur propre chef. Créer une application de chat pour Android n'est pas difficile; il existe de nombreux tutoriels détaillés sur Internet. Grâce à cette approche, les attaquants ont un meilleur contrôle sur la compatibilité des fonctionnalités malveillantes de l'application avec ses fonctions légitimes, ce qui leur permet de s'assurer que l'application de chat fonctionnera.

Analyse du code

L'application d'espionnage Welcome Chat semble avoir ciblé les utilisateurs arabophones. En effet, la langue par défaut du site web comme de l'application est l'arabe. Cependant, sur la base des journaux de débogage laissés dans le code, des chaînes de caractères, des noms de classe et de variables uniques, nous avons pu déterminer que la plupart du code malveillant était copié à partir de projets de code open source accessibles au public et d'exemples de code disponibles sur des forums publics.

Figure 5. Le développeur a utilisé différents morceaux de code open source pour créer l'application malveillante

Dans certains cas, le code source ouvert copié est assez ancien - voir le tableau 1. Comme explication possible, tous les exemples énumérés figurent en tête des résultats de la simple recherche sur Google pour les fonctionnalités respectives.

Tableau 1. Les origines du code malveillant

Functionality Source Age (years)
Call recording open source, GitHub 8
SMS stealing open source, GitHub 6
Google Maps coordinates open source, Blogspot (plus other sources) 5
GEO tracking open source, GitHub 8
GPS tracking open source, GitHub 5

Exfiltration des données des utilisateurs

L'application Welcome Chat, y compris son infrastructure, n'a pas été construite dans un souci de sécurité. L'application télécharge toutes les données volées par l'utilisateur sur le serveur contrôlé par l'attaquant via un protocole HTTP non sécurisé.

Les données transmises ne sont pas chiffrées et, de ce fait, non seulement elles sont à la disposition de l'attaquant, mais elles sont aussi librement accessibles à toute personne se trouvant sur le même réseau.

La base de données contient des données telles que le nom, l'adresse électronique, le numéro de téléphone, le jeton de l'appareil, la photo du profil, les messages et la liste d'amis - en fait, toutes les données des utilisateurs, à l'exception des mots de passe des comptes, peuvent être trouvées téléchargées sur le serveur non sécurisé.

Figure 6. L'appareil de la victime télécharge les données de l'utilisateur sur le serveur de l'application

Figure 7. Exfiltration de la base de données des utilisateurs

Figure 8. Exfiltration d'informations sur l'utilisateur

Figure 9. Exemple d'un message in-app accessible librement sur le serveur non sécurisé de l'application

Une fois que nous avons découvert que les informations sensibles étaient accessibles au public, nous avons intensifié nos efforts pour découvrir le développeur de l'application de chat légitime (c'est-à-dire l'application dont l'outil d'espionnage était - finalement - une version trojanisée) afin de lui révéler la vulnérabilité. Nous n'avons trouvé ni le développeur ni l'application, ce qui nous a convaincus que l'application avait été conçue dès le départ comme étant malveillante. Naturellement, nous n'avons fait aucun effort pour atteindre les acteurs malveillants derrière l'application.

Connexion possible avec BadPatch

L’espiongiciel Welcome Chat appartient à la même famille de logiciels malveillants Android que nous avons identifiée au début de l'année 2018. Ce logiciel malveillant utilisait le même serveur C&C, pal4u.net, que la campagne d'espionnage ciblant le Moyen-Orient qui a été identifiée fin 2017 par Palo Alto Networks et nommée BadPatch. Fin 2019, Fortinet a décrit une autre opération d'espionnage centrée sur des cibles palestiniennes avec le domaine pal4u.net parmi ses indicateurs de compromis.

Pour toutes ces raisons, nous pensons que cette campagne avec les nouveaux chevaux de Troie Android vient des acteurs de la menace qui se trouvent derrière la campagne BadPatch à long terme.

Recommandation

Bien que l'opération d'espionnage basée sur le Welcome Chat semble être étroitement ciblée, nous recommandons vivement aux utilisateurs de ne pas installer d'applications provenant de l'extérieur de la boutique officielle de Google Play - à moins qu'il ne s'agisse d'une source fiable telle que le site web d'un fournisseur de sécurité établi ou d'une institution financière réputée. En outre, les utilisateurs doivent faire attention aux autorisations requises pour leurs applications et se méfier de celles qui nécessitent des autorisations au-delà de leurs fonctionnalités.

Indicateurs de compromission (IoCs)

Hash ESET detection name
C60D7134B05B34AF08023155EAB3B38CEDE4BCCD Android/Spy.Agent.ALY
C755D37D6692C650692F4C637AE83EF6BB9577FC Android/Spy.Agent.ALY
89AB73D4AAF41CBCDBD0C8C7D6D85D21D93ED199 Android/Spy.Agent.ALY
2905F2F60D57FBF13D25828EF635CA1CCE81E757 Android/Spy.Agent.ALY

C&C: emobileservices.club

Techniques MITRE ATT&CK

Tactic ID Name Description
Initial Access T1444 Masquerade as Legitimate Application Welcome Chat impersonates a legitimate chat application.
Persistence T1402 App Auto-Start at Device Boot Welcome Chat listens for the BOOT_COMPLETED broadcast, ensuring that the app's functionality will be activated every time the device starts.
Discovery T1426 System Information Discovery Welcome Chat collects information about the device.
Collection T1412 Capture SMS Messages Welcome Chat exfiltrates sent and received SMS messages.
T1430 Location Tracking Welcome Chat spies on the device's location.
T1433 Access Call Log Welcome Chat exfiltrates call log history.
T1432 Access Contact List Welcome Chat exfiltrates the user contact list.
T1429 Capture Audio Welcome Chat records surrounding audio.
T1533 Data from Local System Welcome Chat steals user photos stored on device.
Command and Control T1437 Standard Application Layer Protocol Welcome Chat uploads exfiltrated data using the HTTP protocol.