Hier, le moteur d’analyse comportementale de Pradeo a remonté une alerte concernant l'application “Dune!”, disponible sur Google Play. Dune! est une appli de jeu qui a été téléchargée entre 5 et 10 millions de fois et fait partie des “Top Apps” de la boutique d’applis.
En observant Dune! de plus près, la conclusion est sans équivoque: l’appli divulgue massivement les données de ses utilisateurs. Voici les principaux résultats de notre analyse :
- Dune! géolocalise ses utilisateurs et transmet leur localisation
- Dune! diffuse les données du terminal
- Les données collectées sont envoyées vers 32 serveurs distants
- Dune! contient 11 vulnérabilités OWASP
"La fuite de données est une des menaces les plus inquiétantes pour la sécurité des entreprises" écrit JR Raphael dans son récent article pour le magazine CSO.
Divulgation des données de localisation
L’application Dune! géolocalise ses utilisateurs, même si cela n’est pas nécessaire à l’exécution du jeu. Une fois collectées, les données de localisation sont envoyées vers des dizaines de serveurs distants. Selon le contexte, pour des employés du gouvernement par exemple, la localisation peut s’avérer être une donnée très sensible.
Divulgation des données du terminal
Dune! collecte des données provenant des terminaux (smartphones et tablettes) de ses utilisateurs et les envoie vers des dizaines de serveurs. Parmi les données diffusées (liste complète en bas de page) figure la version du système d’exploitation, information qui permet d'identifier les vulnérabilités d’un terminal. Cette donnée est souvent utilisée par les hackers pour déterminer si l’appareil est piratable.
De nombreuses vulnérabilités OWASP
Le OWASP Mobile Security Project classifie les vulnérabilités inhérentes aux applications mobiles afin d’aider les développeurs à créer et maintenir des applis sécurisées. Le moteur de Pradeo a détecté 11 vulnérabilités OWASP dans l’appli Dune!. Plus spécifiquement, ces failles la rendent vulnérable au vol de données, au déni de service et à la corruption de données. (Voir liste complète en bas de page)
Un nombre de librairies bien au-dessus de la moynne
Les librairies tierces sont intégrées aux applis pour fournir des services précis (paiement, analytique…). Provenant de sources externes, ces librairies ne peuvent pas être modifiées par les développeurs d’applis. Très souvent, elles réalisent des actions superflues en arrière-plan (telles que des connexions à des serveurs distants…) et sont à l'origine de fuite de données.
L’appli Dune! héberge 20 librairies, un nombre largement au-dessus de la moyenne. Plus de la moitié d’entre elles ont pour objectif de traquer les utilisateurs et d’obtenir un maximum d’informations à leur sujet. De plus, l’analyse a démontré que certaines de ces librairies sont peu sécurisées et vulnérables aux attaques.
Découvrez notre analyse de l’application Uber dans cet article : La face cachée de l'application Uber
Fiche d’identité de l’appli Dune! :
Package: io.voodoo.duneVersion : 2.2
sha1: fe6c24c9c201ebbd73a70195941f9ea2c983adaa
Données divulguées par Dune! :
- Version de l’OS- Informations sur la connexion téléphonique
- Nom de l'opérateur
- Code pays et code réseau du fournisseur de la carte SIM
- Code pays du fournisseur de la carte SIM
- Type de réseau téléphonique auquel l'appareil est connecté (3G, 4G, UMTS…)
- Constructeur du périphérique
- Nom commercial du produit (ex: Nexus 4)
- Niveau de batterie
- Informations sur le périphérique
Vulnérabilités OWASP détectées dans Dune! :
BROADCAST-ACTIVITY | Cela a pour effet de permettre à toute application tierce d’accéder aux données potentiellement sensibles partagées par le composant. |
BROADCAST-PROVIDER |
Cela a pour effet de permettre à toute application tierce de contourner d'éventuelles mesures de sécurité pour accéder directement à des données potentiellement sensibles. |
BROADCAST-SERVICE |
Cela a pour effet de permettre à toute application tierce de lancer ou de se lier au service. En fonction du rôle du service, cela peut engendrer la fuite de données ou le lancement de tâches non autorisées. |
BROADCST-RECEIVER |
Cela a pour effet de permettre à toute application tierce d’envoyer des messages à l'application. Cette faille peut être exploitée pour compromettre l'application, en la détournant de sa tâche première pour la faire exécuter un certain nombre d'actions. |
URLCANONICALISATION |
L'échec de mise en forme canonique d'une URL reçue par l'application peut amener à une attaque de type « vulnérabilité transversale » de répertoire qui peut entraîner la divulgation de données sensibles ou la corruption malveillante de données. |
LOG | Il est risqué de mettre en production une application qui affiche des sorties de log. Une application tierce pourra exécuter une commande et récupérer les logs contenant des informations potentiellement sensibles. |
IMPLICIT-INTENT |
Des informations diffusées en utilisant la méthode de l'"intent" implicite sont susceptibles d'être interceptées par une application tierce malveillante. |
X.509TRUSTMANAGER |
Implémentation non sécurisée de l'interface X509TrustManager, qui ignore toutes les erreurs de validation du certificat SSL lors de l'établissement d'une connexion en HTTPS à un hôte distant, ce qui a pour effet de rendre l'application vulnérable à une attaque de type Man-in-the-Middle. |
WIDGET |
Faire transiter des données potentiellement sensibles dans ce composant permet à des applications tierces d'y avoir accès. |
POTENTIALLYBYPASS SSLCONNECTION |
Implémentation non sécurisée contournant la validation du certificat SSL lors de l'établissement d'une connexion en HTTPS à un hôte distant, ce qui a pour effet de rendre l'application vulnérable à une attaque de type Man-in-the-Middle. |
RSA_NO_PAD |
Cette application utilise le chiffrement RSA sans rembourrage OAEP. Le but du programme de rembourrage est d'éviter un certain nombre d'attaques sur RSA qui ne fonctionne que lorsque le chiffrement est effectué sans rembourrage. |