
Un nouveau malware bancaire Android nommé MMRat utilise une méthode de communication rarement utilisée, la sérialisation des données protobuf, pour voler plus efficacement les données des appareils compromis.
MMRat a été repéré pour la première fois par Trend Micro fin juin 2023, ciblant principalement les utilisateurs d’Asie du Sud-Est et restant non détecté sur les services d’analyse antivirus comme VirusTotal.
Bien que les chercheurs ne sachent pas comment le malware est initialement promu auprès des victimes, ils ont découvert que MMRat est distribué via des sites Web déguisés en magasins d’applications officiels.
Les victimes téléchargent et installent les applications malveillantes qui portent MMRat, imitant généralement un gouvernement officiel ou une application de rencontres, et accordent des autorisations risquées comme l’accès au service d’accessibilité d’Android lors de l’installation.
Le malware abuse automatiquement de la fonctionnalité d’accessibilité pour s’accorder des autorisations supplémentaires qui lui permettront d’effectuer une large gamme d’actions malveillantes sur l’appareil infecté.
Capacités MMRat
Une fois que MMRat infecte un appareil Android, il établit un canal de communication avec le serveur C2 et surveille l’activité de l’appareil pour découvrir les périodes d’inactivité.
Pendant ce temps, l’acteur malveillant abuse du service d’accessibilité pour réveiller l’appareil à distance, déverrouiller l’écran et effectuer une fraude bancaire en temps réel.
Les principales fonctions de MMRat peuvent être résumées comme suit :
- Collectez des informations sur le réseau, l’écran et la batterie
- Exfiltrer la liste de contacts de l’utilisateur et la liste des applications installées
- Capturez les entrées de l’utilisateur via l’enregistrement au clavier
- Capturez le contenu de l’écran en temps réel de l’appareil en abusant de l’API MediaProjection
- Enregistrez et diffusez en direct les données de la caméra
- Enregistrez et videz les données d’écran sous forme de texte qui sont exfiltrées vers le C2.
- Se désinstaller de l’appareil pour effacer toutes les preuves d’infection

La capacité de MMRat à capturer le contenu de l’écran en temps réel, et même sa méthode plus rudimentaire « d’état du terminal utilisateur » qui extrait les données texte nécessitant une reconstruction, exigent toutes deux une transmission de données efficace.
Sans une telle efficacité, les performances empêcheraient les acteurs malveillants d’exécuter efficacement la fraude bancaire. C’est pourquoi les auteurs de MMRat ont choisi de développer un protocole Protobuf personnalisé pour l’exfiltration de données.

Avantage Protobuf
MMRat utilise un protocole de serveur de commande et de contrôle (C2) unique basé sur des tampons de protocole (Protobuf) pour un transfert de données efficace, ce qui est rare parmi les chevaux de Troie Android.
Protobuf est une méthode de sérialisation de données structurées développée par Google, similaire à XML et JSON, mais plus petite et plus rapide.
MMRat utilise différents ports et protocoles pour échanger des données avec le C2, comme HTTP sur le port 8080 pour l’exfiltration de données, RTSP et le port 8554 pour le streaming vidéo, et Protobuf personnalisé sur 8887 pour la commande et le contrôle.
« Le protocole C&C, en particulier, est unique en raison de sa personnalisation basée sur Netty (un cadre d’application réseau) et Protobuf mentionné précédemment, complété par des structures de messages bien conçues », lit-on dans le rapport de Trend Micro.
« Pour la communication C&C, l’acteur malveillant utilise une structure globale pour représenter tous les types de messages et le mot-clé « oneof » pour représenter différents types de données. »

Outre l’efficacité de Protobuf, les protocoles personnalisés aident également les acteurs malveillants à échapper à la détection par les outils de sécurité réseau qui recherchent des modèles courants d’anomalies connues.
La flexibilité de Protobuf permet aux auteurs de MMRat de définir leurs structures de messages et d’organiser la manière dont les données sont transmises. Dans le même temps, sa nature structurée garantit que les données envoyées adhèrent à un schéma prédéfini et sont moins susceptibles d’être corrompues du côté du destinataire.
En conclusion, MMRat montre la sophistication évolutive des chevaux de Troie bancaires Android, alliant habilement furtivité et extraction efficace des données.
Les utilisateurs d’Android doivent uniquement télécharger des applications depuis Google Play, vérifier les avis des utilisateurs, ne faire confiance qu’à des éditeurs réputés et être prudents lors de l’étape d’installation où il leur est demandé d’accorder des autorisations d’accès.