Une vulnerabilite dans la bibliotheque Google Play Core n’est toujours nullement corrigee dans les applications Google Play

03/03/2022

Une vulnerabilite dans la bibliotheque Google Play Core n’est toujours nullement corrigee dans les applications Google Play

Check Point

D’innombrables applications Android toujours vulnerables a un bug majeur, mettant en danger des centaines de millions d’utilisateurs. Beaucoup de applications sur le Play Store de Google sont encore vulnerables a un bug connu, CVE-2020-8913, qui permet aux acteurs d'une menace d’injecter du code malveillant dans des applications vulnerables, afin d’acceder a toutes les memes ressources de l’application d’hebergement. Les acteurs d'une menace pourront se servir de les applications vulnerables pour usurper des precisions sensibles d’autres applications sur le aussi appareil, en volant les precisions privees des utilisateurs, telles que les details de connexion, les mots de passe, les details financiers et le courrier.

Notre faille de securite trouve le origine dans la bibliotheque Play Core de Google, tres utilisee, qui permet aux developpeurs d’integrer des mises a jour ainsi que nouveaux modules de fonctionnalites a leurs applications Android

Google a corrige ma faille en avril 2020, mais les developpeurs eux-memes doivent installer la nouvelle bibliotheque Play Core afin de faire disparaitre completement la menace Mes chercheurs de Check Point ont selectionne au hasard un certain nombre d’applications de premier plan pour confirmer l’existence une vulnerabilite CVE-2020-8913. Vulnerabilite confirmee dans Grindr, Bumble, OKCupid, Cisco Teams, Moovit, Yango Pro, Edge, Xrecorder, PowerDirector Plusieurs chercheurs de Check Point demontrent l’exploitation une vulnerabilite de l’application Google Chrome d’Android

Vue d’ensemble : Une nouvelle vulnerabilite dans la bibliotheque Google Play Core a ete publiee fin aout, qui permet l’execution locale de code (Local-Code-Execution, LCE) dans le contexte de toute application qui utilise la version vulnerable d'une bibliotheque Google Play Core. Dans ce document, nous analysons l’impact et l’ampleur de cette vulnerabilite du angle d'approche d'une securite.

Contexte : Qu’est-ce que Notre bibliotheque Google Play Core ? Tire de la documentation de developpement Android de Google

J'ai bibliotheque Play Core Library reste l’interface d’execution de votre application avec Google Play Store. Voici quelques-unes des actions que vous pouvez effectuer avec Google Play Core : Telecharger des ressources linguistiques supplementaires Gerer la fourniture de modules de fonctionnalites Gerer la fourniture de packs de ressources Declencher des mises a jour dans l’application reclamer des avis depuis l’application

Ainsi, la bibliotheque Google Play Core reste une passerelle permettant d’interagir avec les services Google Play depuis l’application elle-meme, a commencer par le chargement de code dynamique (tel le telechargement de niveaux supplementaires en cas de besoin uniquement), la fourniture de ressources localisees bien particuliers et l’interaction au milieu des mecanismes d’avis de Google Play.

Facebook et Instagram representent a eux seuls 5 milliards et 1 milliard de telechargements respectivement a ce jour depuis Google Play Store. Imaginez le nombre d’appareils ayant ete touches via une telle vulnerabilite.

Qu’est-ce que

OverSecured a deja presente les aspects techniques de une telle vulnerabilite. Pour une analyse technique plus approfondie, veuillez vous referer a le blog. Un bref apercu : Dans Notre sandbox de chaque application, Il est 2 dossiers : 1 Afin de des fichiers « verifies » recus de Google Play, et un nouvelle Afin de des fichiers « non verifies ». Mes fichiers telecharges de des services Google Play vont dans le dossier verifie, tandis que les fichiers telecharges d’autres sources seront envoyes dans le dossier non verifie. Lorsqu’un fichier reste ecrit dans le get it on dossier verifie, il interagit avec la bibliotheque Google Play Core qui le charge et l’execute.

Une intention exportee est une autre fonctionnalite qui permet a d’autres sources de pousser des fichiers dans la sandbox de l’application. Il existe cependant des limitations : le fichier est pousse au dossier non verifie, ainsi, il n’est pas directement traite par la bibliotheque. J'ai vulnerabilite reside dans la combinaison des deux fonctionnalites mentionnees ci-dessus, et utilise egalement la traversee de fichiers, un concept aussi vieux qu’Internet lui-meme. Lorsqu’une source tierce pousse un fichier dans une autre application, elle doit fournir un chemin d’acces pour que le fichier puisse etre ecrit. Lorsqu’un pirate utilise la traversee de fichiers (../verified_splits/mon_code_malveillant.apk), le code malveillant reste ecrit au dossier verifie, ainsi, est directement charge au sein d' l’application vulnerable et execute dans le contexte.

Google a corrige votre vulnerabilite le 6 avril 2020

Impact et ampleur : Lorsque nous combinons des applications populaires qui utilisent la bibliotheque Play Core de Google et Notre vulnerabilite d’execution locale de code, nous pouvons vraiment voir les dangers. Lorsqu’une application malveillante exploite votre vulnerabilite, elle peut executer du code dans des applications populaires et beneficier du meme acces que l’application vulnerable.

Mes possibilites ne semblent limitees que avec notre creativite. Voici certains exemples : Injection de code dans des applications bancaires Afin de s’emparer des identifiants, et en meme moment beneficier des autorisations i  propos des SMS Afin de voler les codes d’authentification a 2 facteurs (2FA). Injection de code dans des applications d’entreprise pour acceder aux ressources de l’entreprise. Injection de code dans des applications de reseaux sociaux pour espionner la victime, ainsi, choisir l’acces a la geolocalisation Afin de suivre l’appareil. Injection de code dans des applications de messagerie instantanee Afin de capturer l'integralite des messages, ainsi, eventuellement envoyer des messages au nom une victime.

Comme la vulnerabilite a ete corrigee en avril, pourquoi s’inquieter maintenant ? Notre reponse reste que les developpeurs doivent pousser le correctif au sein d' leurs applications. Contrairement aux vulnerabilites cote serveur, qui peuvent etre entierement corrigees une fois que le correctif est applique sur le serveur, pour les vulnerabilites cote client, chaque developpeur devra utiliser la derniere version une bibliotheque et l’inserer dans le application.

Le facteur humain etant l’un des plus difficiles a surmonter en matiere de securite, nous avons decide de determiner quelles applications ont corrige la vulnerabilite et lesquelles sont encore vulnerables, afin d’avoir une meilleure comprehension globale de l’ampleur d'la vulnerabilite. Depuis la publication de votre vulnerabilite, nous avons commence a surveiller les applications vulnerables.

I  l'occasion du mois de septembre 2020, 13 % des applications Google Play analysees par SandBlast Mobile utilisaient cette bibliotheque, et 8 % des applications comprenaient une version vulnerable.