// Énumération horizontale d’applications sur Google Play Store - ORHUS

Article originellement publié sur blog.bssi.fr

Introduction

Dans le cadre de l’OSINT (Open Source INTelligence), la recherche de domaines liés au domaine principal est une phase particulièrement importante, très utile dans les campagnes de RedTeam ou encore dans les BugBounty. En effet, cette étape permet à un auditeur (ou un attaquant) d’élargir sa surface d’attaque et ainsi s’attaquer à des périmètres moins visibles et donc probablement moins audités.

Figure 1 : différents types d’énumération DNS

Deux grandes catégories se distinguent dans cette énumération de domaines :

  • L’énumération verticale de domaines

Cette dernière a pour but d’identifier les sous-domaines appartenant à notre domaine principal.

Ainsi, dans l’exemple du domaine google.com, l’identification des sous-domaines news.google.com, shopping.google.com, developers.google.com résulte d’une énumération verticale.

  • L’énumération horizontale de domaines

Quant à elle, l’énumération horizontale a pour but d’identifier les domaines racines appartenant à la même société. En reprenant l’exemple de google.com, l’énumération horizontale permettra de mettre en avant youtube.com ou encore android.com.

Énumération sous Google Play Store

L’énumération DNS, qu’elle soit horizontale ou verticale est un sujet abordé des dizaines de fois sur Internet, il n’y a pas beaucoup d’éléments intéressants à rajouter à ce jour.

Néanmoins, l’énumération d’application au sein de Google Play Store est un sujet nettement moins abordé (pas du tout ?), mais particulièrement intéressant. En effet, les applications mobiles étant de plus en plus présentes dans la vie d’une entreprise, ces dernières sont un réel point d’entrée pour les attaquants ou les BugHunter.

Ainsi, l’objectif de cet article est plutôt d’apporter une méthodologie afin d’élargir sa surface d’attaque.

Au sein de cet article, nous aurons comme point de départ l’application Uber :

Figure 2 : Application Uber accessible depuis le Google Play Store

Comme il est possible de le voir au sein de l’encadré rouge, le nom de la société à qui appartient est disponible. Un clic sur ce lien permet alors d’identifier l’ensemble des applications développées par la même société (énumération horizontale).

La page affiche donc les applications développées par la société Uber Technologies, Inc. :

Figure 3 : Applications développées par la société Uber Technologies, Inc.

Le bouton « Plus » permet d’afficher les applications supplémentaires. En effet, seulement 6 sont affichées au sein de cette première page :

Figure 4 : Applications développées par la société Uber Technologies, Inc. (détails)

Néanmoins, en creusant un peu, il est possible d’afficher de « nouvelles » applications en modifiant légèrement le lien initial en y rajoutant la chaîne &hl=fr&gl=US de la sorte : https://play.google.com/store/apps/dev?id=7908612043055486674&hl=fr&gl=US :

Figure 5 : Applications développées par la société Uber Technologies, Inc. suite au changement d’URL

Dès lors, on peut y voir l’apparition de deux applications : Postmates et Uber Freight ainsi que la disparition de Campus VTC. Néanmoins, l’image précédente affiche 8 applications, les calculs ne sont pas bons Kévin !

Pour se faire, un petit peu de python (3, cela va sans dire), des requêtes avec requests, du parsing de données grâce à beautifulsoup4 et nous voilà avec EYAPS (Enlarge Your Android Pentest Scope) permettant de combiner l’ensemble des recherches de manière automatique :

Figure 6 : Récupération de l’ensemble des applications grâce à EYAPS