Rachetée par Google en 2014, Firebase est une plateforme mobile qui aide les utilisateurs à développer des applications rapidement et en toute sécurité. C’est la plateforme favorite de beaucoup de développeurs pour sa base de données synchronisée sur le cloud. Elle facilite la collaboration entre différentes plateformes, et est accessible au grand public.

Elle garantit aux développeurs de configurer leurs applications en toute sécurité. Mais de nouvelles recherches de Comparitech suggèrent que, suite à des erreurs de configuration, certaines applications Firebase exposent des informations sensibles, y compris des mots de passe, des numéros de téléphone et des messages numériques à quiconque veut les consulter. Voici ce que vous devez savoir.


Les erreurs de configuration d’applications Android

Une équipe de recherche de Comparitech dirigée par Bob Diachenko a analysé un regroupement de 515 735 applications Android disponibles sur Google Play. Parmi celles-ci, 155 066 utilisaient Firebase. D’après l’analyse de Comparitech, 11 730 de ces applications exposaient publiquement les bases de données des utilisateurs.

Pire encore, 9 014 ont exposé les autorisations d’écriture nécessaires pour permettre à un attaquant potentiel de modifier des données, y compris de les ajouter ou de les supprimer, ainsi que de les visualiser ou de les télécharger. Par ailleurs, l’analyse a aussi révélé que 4 282 applications faisaient fuiter des informations sensibles. 

Selon le rapport, ces données comprenaient 7 millions d’adresses mails, et presque autant de messages électroniques. Sans oublier que 4,4 millions d’identifiants et 1 million de mots de passe ont été divulgués, ainsi que 5 millions de numéros de téléphone dévoilés. Ces chiffres sont particulièrement troublants, mais il faut les remettre en contexte. Il a été estimé que plus de 1,5 million d’applications utilisaient la plateforme Firebase, sur Android et iOS, en mars 2020. Même si on extrapole à partir des chiffres de l’analyse, comme l’a fait Comparitech, cela ne représente que 1,6 % de toutes les applications utilisant Firebase et 0,94 % de toutes les applications disponibles en téléchargement sur Google Play.

La chasse aux applications dangereuses de Firebase

Les chercheurs de Comparitech ont pu débusquer les applications dangereuses en recherchant dans les ressources, des chaînes de texte indiquant l’utilisation de Firebase. Ensuite, en ajoutant une requête à l’URL de la base de données, ils ont pu accéder aux données publiques via l’API REST de Firebase pour les données stockées. Les chercheurs voulaient obtenir une réponse de refus d’accès, car cela indiquerait une exposition non publique, mais comme le montre le rapport, ils se sont souvent retrouvés avec le contenu complet de la base de données. C’est là que les chercheurs ont eu accès à des informations sensibles qui ont ensuite été vérifiées manuellement pour détecter les faux positifs.

« Toutes les données consultées ont été détruites », ont déclaré les chercheurs. Ils se sont assurés que leur recherche était « entièrement conforme aux normes et procédures de sécurité ». Pour révéler tout accès en écriture aux bases de données, une requête PUT a été utilisée pour créer un nouveau nœud puis le supprimer.

Réduire le risque d’erreurs de configuration

Comme pour tous les problèmes de fuites de bases de données liés à une erreur de configuration, la marche à suivre est assez simple : il faut veiller à ce que la base de données soit correctement configurée lors de sa mise en place. Malheureusement, ce n’est pas aussi simple que ça. 
Alors, bien sûr, les conseils offerts aux développeurs en ce qui concerne les règles et la protection de la base de données sont légitimes. Recommander aux développeurs d’applications de suivre les directives telles que définies dans la documentation Firebase de Google devrait être une évidence, mais ce n’est pas le cas.
Cela a été démontré à maintes reprises, des bases de données mal configurées donnent lieu à des fuites de données. En effet, au début de cette année, il a été rapporté qu’un pourcentage étonnant de 82 % des failles de sécurité étaient dû à des erreurs de configuration de toutes sortes.

La responsabilité repose-t-elle uniquement sur Google et Firebase ?

Outre le fait qu’il ne soit pas utile de chercher un coupable, tout n’est pas noir ou blanc. « Quiconque ne pense pas que l’informatique et le développement de logiciels ne sont pas un processus dangereux ne comprend tout simplement pas comment tout cela fonctionne », déclare Ian Thornton-Trump, responsable sécurité des systèmes d’information chez Cyjax, « le problème n’est pas l’erreur, mais notre réaction face à celle-ci ». 

L’expert en sécurité John Opdenakker est du même avis et affirme que la solution réside dans « un système de développement de logiciels sécurisés, car il intègre la sécurité dans le processus, et en tant que tel, le temps nécessaire que l’on accorde à la configuration de la sécurité peut être entièrement planifié ».

S’il y a une chose qui porte préjudice aux développeurs, c’est le temps. Sean Wright, formateur en sécurité des applications et co-directeur de l’Open Web Application Security Project (OWASP), en est convaincu. « Une chose que j’ai vue si souvent, c’est que de nombreux développeurs sont constamment sous pression pour lancer leur application », explique Wright. « Cela signifie qu’en fin de compte, ils prendront le chemin le plus court pour la lancer le plus tôt possible ».

Il n’est donc pas rare que les développeurs d’applications se réfèrent à des exemples déjà existants de systèmes de sécurité de la base de données plutôt qu’à la documentation originale. « Ce n’est pas un problème s’ils copient un système sûr », dit Wright, « mais le plus souvent, ce n’est pas le cas. Les développeurs doivent comprendre ce qu’ils font, mais étant donné les contraintes de temps auxquelles ils sont soumis, cela est souvent impossible ».

Mais que dit Google à propos de l’erreur de configuration ?

Les chercheurs de Comparitech ont informé Google des conclusions du rapport le 22 avril et ont reçu la déclaration suivante en réponse :

« Firebase offre un certain nombre de fonctionnalités qui aident nos développeurs à configurer leurs applications de manière sécurisée. Nous fournissons des notifications aux développeurs sur les éventuelles erreurs de configuration et proposons des recommandations pour les corriger. Nous prenons contact avec les développeurs concernés pour les aider à résoudre ces problèmes. » 

Traduit de Forbes US – Auteur : Davey Winder

 

<<< À lire également : Alphabet (Google) : Des Résultats Solides Malgré La Crise >>>