L’équipe de sécurité de Google Cloud a reconnu une tactique courante connue sous le nom de versioning utilisée par des acteurs malveillants pour glisser des logiciels malveillants sur les appareils Android après avoir échappé au processus d’examen et aux contrôles de sécurité du Google Play Store.
La technique fonctionne soit en introduisant les charges utiles malveillantes via des mises à jour fournies aux applications déjà installées, soit en chargeant le code malveillant à partir de serveurs sous le contrôle des acteurs de la menace dans ce que l’on appelle le chargement de code dynamique (DCL).
Il permet aux acteurs de la menace de déployer leurs charges utiles sous forme de code natif, Dalvik ou JavaScript sur les appareils Android en contournant les contrôles d’analyse statique de l’App Store.
« L’un des moyens par lesquels les acteurs malveillants tentent de contourner les contrôles de sécurité de Google Play consiste à créer des versions », indique la société dans le rapport sur les tendances des menaces de cette année.
« Le versionnement se produit lorsqu’un développeur publie une version initiale d’une application sur le Google Play Store qui semble légitime et passe nos vérifications, mais reçoit plus tard une mise à jour d’un serveur tiers modifiant le code sur l’appareil de l’utilisateur final qui permet une activité malveillante. «
Alors que Google indique que toutes les applications et tous les correctifs soumis pour inclusion dans le Play Store sont soumis à un examen rigoureux PHA (Application potentiellement nuisible), « certains de ces contrôles » sont contournés via DCL.
Google a expliqué que les applications trouvées se livrant à de telles activités enfreignent la politique de comportement trompeur de Google Play et pourraient être qualifiées de portes dérobées.
Conformément aux directives du Play Policy Center de l’entreprise, il est explicitement interdit aux applications distribuées via Google Play de se modifier, de se substituer ou de se mettre à jour par tout autre moyen que le mécanisme de mise à jour officiel fourni par Google Play.
De plus, il est strictement interdit aux applications de télécharger du code exécutable (tel que des fichiers dex, JAR ou .so0 à partir de sources externes vers l’App Store officiel d’Android.
Google a également mis en évidence une variante spécifique de malware nommée SharkBot, repérée pour la première fois par l’équipe Threat Intelligence de Cleafy en octobre 2021 et connue pour utiliser cette technique dans la nature.
SharkBot est un malware bancaire qui effectuera des transferts d’argent non autorisés via le protocole ATS (Automated Transfer Service) après avoir compromis un appareil Android.
Pour échapper à la détection par les systèmes Play Store, les acteurs de la menace responsables de SharkBot ont adopté la stratégie désormais courante de publier des versions avec des fonctionnalités limitées sur Google Play, dissimulant la nature suspecte de leurs applications.
Cependant, une fois qu’un utilisateur télécharge l’application cheval de Troie, il télécharge la version complète du logiciel malveillant.
Sharkbot a été camouflé en tant que logiciel antivirus Android et divers utilitaires système et a infecté avec succès des milliers d’utilisateurs via des applications qui ont réussi les contrôles de soumission du Google Play Store pour détecter les comportements malveillants.
Le journaliste en cybersécurité Brian Krebs a également souligné l’utilisation d’une autre technique d’obscurcissement des logiciels malveillants mobiles dans le même but, récemment dévoilée par les chercheurs en sécurité de ThreatFabric.
Cette méthode brise efficacement les outils d’analyse d’applications de Google, les empêchant d’analyser les APK malveillants (packages d’applications Android). Par conséquent, ces fichiers APK nuisibles peuvent s’installer avec succès sur les appareils des utilisateurs, même s’ils sont étiquetés comme non valides.