Des chercheurs en intelligence artificielle de Microsoft ont expos accidentellement des traoctets de donnes sensibles, notamment des cls prives et des mots de passe, en publiant un seau de stockage de donnes dentranement open source sur GitHub. Lexposition a eu lieu en raison dune URL mal configure qui accordait des permissions sur lensemble du compte de stockage, au lieu de se limiter la lecture seule. Microsoft a dclar qu’aucune donne client n’tait affecte par l’exposition au stockage Azure et qu’aucun autre service interne n’tait mis en danger en raison de ce problme , qui a t attnu.
Le fournisseur de scurit cloud Wiz a dcouvert 38 To de donnes prives Microsoft qui ont t accidentellement exposes par des chercheurs en IA employs par la grande enseigne de la technologie. Les recherches de Wiz ont t publies lundi dans un article de blog dans le cadre d’une divulgation coordonne avec Microsoft.
Comprendre le mcanisme
Dans Azure, un jeton SAS (Shared Access Signature) est une URL signe qui accorde laccs aux donnes Azure Storage. Le niveau d’accs peut tre personnalis par l’utilisateur ; les autorisations vont de la lecture seule au contrle total, tandis que la porte peut tre soit un seul fichier, un conteneur ou un compte de stockage complet. Le dlai d’expiration est galement entirement personnalisable, permettant l’utilisateur de crer des jetons d’accs n’expirant jamais. Cette granularit offre une grande agilit aux utilisateurs, mais elle cre galement le risque d’accorder trop d’accs ; dans le cas le plus permissif, le jeton peut accorder des autorisations de contrle total, sur lensemble du compte, pour toujours fournissant essentiellement le mme niveau daccs que la cl de compte elle-mme.
Il existe 3 types de jetons SAS : Compte SAS, Service SAS et Dlgation d’utilisateur SAS. Pour le cas des chercheurs de Microsoft, c’est le type le plus populaire qui a t utilis : les jetons de compte SAS.
Gnrer un Compte SAS est un processus simple. Comme le montre l’cran ci-dessous, l’utilisateur configure la porte, les autorisations et la date d’expiration du jeton, et gnre le jeton. En arrire-plan, le navigateur tlcharge la cl de compte depuis Azure et signe le jeton gnr avec la cl. Lensemble de ce processus est effectu ct client ; ce n’est pas un vnement Azure et le jeton rsultant n’est pas un objet Azure.
Cration d’un jeton SAS privilges levs et sans expiration
Pour cette raison, lorsqu’un utilisateur cre un jeton hautement permissif sans expiration, l’administrateur n’a aucun moyen de savoir que ce jeton existe et o il circule. La rvocation d’un jeton n’est pas non plus une tche facile : cela ncessite de faire pivoter la cl de compte qui a sign le jeton, ce qui rend galement inefficaces tous les autres jetons signs par la mme cl. Ces piges uniques font de ce service une cible facile pour les attaquants la recherche de donnes exposes.
Outre le risque dexposition accidentelle, les piges du service en font un outil efficace pour les attaquants cherchant maintenir la persistance sur des comptes de stockage compromis. Un rcent rapport de Microsoft indique que les attaquants profitent du manque de capacits de surveillance du service pour mettre des jetons SAS privilgis comme porte drobe. tant donn que lmission du jeton nest documente nulle part, il nexiste aucun moyen de savoir sil a t mis et dagir en consquence.
Un jeton SAS trop permissif
Selon les chercheurs en scurit de Wiz, Hillai Ben-Sasson et Ronny Greenberg, auteurs de l’tude, l’quipe de recherche en IA de Microsoft a inclus un jeton daccs partag (SAS) trop permissif dans lURL, ce qui a accidentellement expos 38 To de donnes prives.
Les donnes exposes comprenaient les sauvegardes personnelles de deux employs de Microsoft, qui contenaient des mots de passe pour les services Microsoft, des cls secrtes et plus de 30 000 messages internes de Microsoft Teams provenant de 359 employs de Microsoft. Les donnes exposes depuis 2020 taient galement mal configures pour permettre un contrle total plutt quun accs en lecture seule, ce qui signifiait que toute personne sachant o chercher pouvait potentiellement supprimer, remplacer et injecter du contenu malveillant dans ces donnes.
En plus de la porte d’accs trop permissive, le jeton a galement t mal configur pour permettre des autorisations de contrle total au lieu d’autorisations en lecture seule. Cela signifie que non seulement un attaquant pourrait voir tous les fichiers du compte de stockage, mais il pourrait galement supprimer et craser les fichiers existants.
Ceci est particulirement intressant compte tenu de lobjectif initial du rfrentiel : fournir des modles dIA utiliser dans le code de formation. Le rfrentiel demande aux utilisateurs de tlcharger un fichier de donnes de modle partir du lien SAS et de l’insrer dans un script. Le format du fichier est ckpt, un format produit par la bibliothque TensorFlow. Il est format laide du formateur pickle de Python, qui est sujet lexcution de code arbitraire ds sa conception. Cela signifie quun attaquant aurait pu injecter du code malveillant dans tous les modles dIA de ce compte de stockage, et que tous les utilisateurs qui font confiance au rfrentiel GitHub de Microsoft en auraient t infects.
L’IA libre un norme potentiel pour les entreprises technologiques , a dclar Ami Luttwak, cofondateur et directeur technique de Wiz. Cependant, alors que les data scientists et les ingnieurs s’efforcent de mettre de nouvelles solutions d’IA en production, les quantits massives de donnes qu’ils traitent ncessitent des contrles et des mesures de scurit supplmentaires. Alors que de nombreuses quipes de dveloppement doivent manipuler dnormes quantits de donnes, les partager avec leurs pairs ou collaborer sur des projets open source publics, des cas comme celui de Microsoft sont de plus en plus difficiles surveiller et viter .
La raction de Microsoft
Wiz a dclar avoir partag ses conclusions avec Microsoft le 22 juin 2023, et Microsoft a rvoqu le jeton SAS deux jours plus tard, le 24 juin. Microsoft a dclar avoir termin son enqute sur limpact organisationnel potentiel le 16 aot. Le 7 juillet, le jeton SAS a t remplac sur GitHub. Dans un billet de blog, le centre de rponse aux incidents de scurit de Microsoft a dclar que aucune donne client na t expose et quaucun autre service interne na t mis en danger cause de ce problme .
Microsoft a dclar qu la suite des recherches de Wiz, il a tendu le service danalyse des secrets de GitHub, qui surveille tous les changements publics du code source ouvert pour dtecter lexposition en texte clair des informations didentification et dautres secrets, pour inclure tout jeton SAS qui pourrait avoir des expirations ou des privilges trop permissifs.
Source : Wiz
Et vous ?
Quelles sont les consquences potentielles de lexposition accidentelle de donnes sensibles par les chercheurs en IA de Microsoft ?
Comment Microsoft peut-il renforcer la scurit de ses donnes dentranement open source et viter que ce genre dincident ne se reproduise lavenir ?
Quelle est votre opinion sur le service danalyse des secrets de GitHub, qui surveille les changements publics du code source ouvert pour dtecter lexposition en texte clair des informations didentification et dautres secrets ?
Pensez-vous que les chercheurs en IA devraient tre plus prudents lorsquils partagent leurs donnes dentranement open source avec la communaut scientifique ?