
Une mauvaise implémentation d’OAuth dans la fonction File Picker de OneDrive donne un accès complet à l’ensemble des fichiers d’un ordinateur.
Rien de plus anodin que de passer par OneDrive pour télécharger un fichier sur ChatGPT, Slack ou Zoom. Enfin presque : plusieurs experts en sécurité ont alerté que les applications utilisant le sélecteur de fichiers (File Picker) du service de stockage cloud de Microsoft peuvent, dans certaines circonstances, obtenir un accès complet en lecture à un compte, en plus d’un accès en écriture.
« Le problème principal est lié au sélecteur de fichiers OneDrive de Microsoft, qui demande un accès étendu à l’ensemble du compte d’un utilisateur, même lorsque ce dernier essaie simplement de télécharger un seul fichier », explique Vijay Dilwale, consultant principal en matière de sécurité chez Black Duck. « L’expérience utilisateur donne l’impression que seul le fichier sélectionné est partagé, mais en réalité, l’application obtient souvent un accès complet en lecture (et parfois en écriture) à l’ensemble du contenu ». File Picker est un outil fourni par Microsoft qui propose aux sites web et aux applications web de s’intégrer au compte OneDrive d’un utilisateur pour lui permettre de télécharger, de parcourir et de sélectionner des fichiers de cette solution directement à partir de l’application.
Un piège OAuth aux privilèges trop élevés
Cet accès étendu découle d’une limitation de l’implémentation OAuth de Microsoft dans File Picker, que les chercheurs décrivent comme « un manque d’étendue des permissions à granularité fine ». Jason Soroko, senior fellow chez Sectigo, qualifie cet oubli de piège OAuth à privilèges excessifs. « Le sélecteur de fichiers OneDrive de Microsoft encourage les applications web tierces à demander des fichiers de grande taille », a-t-il déclaré. « Une fois émis, ces jetons à longue durée de vie sont souvent mis en cache dans localStorage ou dans des bases de données dorsales sans aucun chiffrement, ce qui permet potentiellement aux attaquants de parcourir les données d’une instance entière. » L’implémentation OAuth de OneDrive File Picker n’est pas assez fines au niveau des fichiers, ne permettant pas aux utilisateurs et aux développeurs de restreindre l’accès aux seuls fichiers explicitement sélectionnés.
Selon une étude menée par Oasis Security, toutes les versions de File Picker demandent des autorisations qui lisent l’intégralité du OneDrive de l’utilisateur pour le processus de téléchargement et écrivent n’importe où sur l’espace de stockage pour ce processus. Cependant, la version 7.0 du sélecteur de fichiers demande des autorisations de lecture et d’écriture pour le processus de téléchargement. « Le manque de précision des champs d’application pour le cas d’utilisation du sélecteur de fichiers empêche les utilisateurs de faire la distinction entre les applications malveillantes qui ciblent tous vos fichiers et les applications légitimes qui demandent des autorisations excessives simplement parce qu’il n’y a pas d’autre option sécurisée », ont prévenu les chercheurs d’Oasis Security dans un billet de blog.
Les fournisseurs d’applications web pas tirés d’affaire
Selon Eric Schwake, directeur de la stratégie de cybersécurité chez Salt Security, cela pourrait être une mauvaise nouvelle pour les équipes de sécurité. « Les secrets sensibles requis pour cet accès sont souvent stockés par défaut de manière non sécurisée », explique-t-il. Tout en ajoutant, « cette situation représente un défi majeur en matière de sécurité des API pour les équipes de sécurité, et avec des services tels que ChatGPT qui dépendent fortement des API pour accéder aux données des utilisateurs et les traiter, le risque est encore plus grand. » Une application web tierce qui se retrouve avec des données utilisateur « involontaires » à cause de cette situation devient une cible pour les acteurs de la menace et pourrait potentiellement enfreindre les règles de conformité rien qu’en ayant ce niveau d’accès.
Oasis Security note que des applications telles que ChatGPT (qui utilise File Picker v8.0), ClickUp, Trello, Zoom et Slack sont potentiellement concernées. Même des applications comme Phenome, un outil de recrutement, pourraient involontairement exposer des fichiers confidentiels si les utilisateurs téléchargent des CV à partir de comptes d’entreprise. « Les fournisseurs qui développent des applications Web sont en danger, car les incidents de sécurité pourraient avoir de graves conséquences, en faisant fuir un grand nombre de fichiers d’un grand nombre de leurs utilisateurs », notent les chercheurs d’Oasis qui ont prévenu Microsoft.
En attendant la réponse de Microsoft, remonter la vigilance
La firme de Redmond a reconnu le problème et indiqué qu’il pourrait envisager d’apporter des améliorations à l’avenir. Dans l’intervalle, Oasis Security a recommandé quelques mesures d’atténuation pour les applications web, notamment la suppression de l’option de téléchargement de fichiers à l’aide de OneDrive via OAuth jusqu’à ce que Microsoft corrige le bug, et l’exploration de solutions de contournement plus simples, comme la prise en charge des liens de fichiers partagés « en mode lecture uniquement » à partir de OneDrive.
Oasis Security a également noté que les solutions File Picker sur d’autres services d’hébergement de fichiers tels que Google Drive et Dropbox peuvent être utilisées comme alternative car elles ne souffrent pas de ce problème. « Les utilisateurs doivent partir du principe que chaque plug-in SaaS qu’ils autorisent possède les clés de leurs joyaux personnels ou de l’entreprise, sauf preuve du contraire », a déclaré M. Soroko. Les équipes de sécurité doivent appliquer le « consentement de l’administrateur » ou des politiques d’accès conditionnel qui bloquent les applications demandant tout ce qui va au-delà de Files.Read. M. Schwake a ajouté qu’une gouvernance plus forte des API pour s’assurer que toutes les permissions des API sont gérées méticuleusement, ce qui inclut le respect du moindre privilège et la gestion sécurisée des jetons, est nécessaire pour éviter une exposition importante des données.