Les chercheurs de ThreatFabric ont découvert un nouveau malware Android baptisé Hirudo, qui combine les fonctionnalités d’un cheval de Troie bancaire traditionnel et les capacités complètes d’un outil de contrôle à distance. Le malware cible actuellement huit applications bancaires indonésiennes, avec des indicateurs internes laissant penser qu’il pourrait être adapté pour viser des banques en Chine, en Inde, au Mexique, au Maroc et en Thaïlande.
Hirudo ne se contente pas de voler les identifiants sur l’appareil : il permet à l’attaquant de voir l’écran en direct via WebRTC, de contrôler le téléphone grâce aux services d’accessibilité et d’accéder aux caméras avant et arrière. Il collecte également les SMS, notamment au moyen d’une analyse initiale couvrant une période de 90 jours et d’une liste précise d’expéditeurs de banques et de portefeuilles électroniques.
Comment le malware arrive-t-il sur le téléphone ?
Hirudo est distribué au moyen d’un dropper intégré à des applications qui semblent légitimes, comme une application d’achat, de visionnage de vidéos pour adultes ou de dramatiques courtes, et promues sur les réseaux sociaux. Après l’installation de l’application, le dropper vérifie la présence de Hirudo sur l’appareil, puis installe la charge utile malveillante si celle-ci n’est pas déjà présente.
Lorsqu’une application bancaire indonésienne précise est détectée, le malware affiche une fausse demande de mise à jour, puis supprime l’application légitime et télécharge une version modifiée liée à la banque ciblée. L’utilisateur a ainsi l’impression d’utiliser l’application bancaire habituelle, tandis que la fausse version sert d’interface au vol et au contrôle.
Contournement des contrôles de sécurité intégrés à l’application
La version modifiée comprend un moteur destiné à intercepter les appels de l’application, afin de désactiver les contrôles de signature numérique, les services d’accessibilité, la capture d’écran et Play Integrity depuis l’application elle-même. Selon les chercheurs, le moteur peut remplacer le certificat de signature demandé par Android par le certificat original et masquer la signature de test. Il renvoie également une liste vide lors des requêtes concernant les services d’accessibilité, rendant le service de l’attaquant invisible lors de la vérification.
L’importance de cette méthode réside dans le déplacement de la confrontation, des contrôles de l’appareil vers les mécanismes d’intégrité intégrés à l’application remplacée elle-même. Par conséquent, les signaux produits par une application remplacée ne peuvent pas être considérés comme fiables à eux seuls. De plus, la réutilisabilité du moteur pourrait faciliter l’orientation de l’attaque vers d’autres applications et régions.
Que devraient examiner les institutions financières ?
- Vérifier Play Integrity et appliquer ses résultats côté serveur, sans considérer le seul résultat positif comme une preuve suffisante, car Hirudo pourrait faire transiter les demandes de vérification par son serveur.
- Utiliser des analyses comportementales multicouches pour détecter les schémas frauduleux, en considérant l’absence de données comportementales comme un signal nécessitant un examen.
- Considérer les signaux liés à l’accessibilité et à la capture d’écran comme des éléments de preuve complémentaires, et non comme des conditions de blocage isolées, puis les intégrer au calcul du risque.
- Maintenir les contrôles de risque des transactions lors de la connexion, de la récupération des identifiants, de la création d’un bénéficiaire et de l’approbation d’un paiement, car un résultat local falsifié ne peut pas remplacer une décision prise par le serveur.
La mise en garde pratique pour les institutions est que le recours à un seul contrôle intégré à l’application ne suffit plus lorsque le malware peut remplacer l’application elle-même et dissimuler les composants de contrôle. Les détails disponibles sur les opérateurs de Hirudo et l’ampleur des infections ne sont toujours pas mentionnés dans le contenu source, ce qui limite l’estimation de l’étendue réelle de la campagne.