Voler des e-mails, des fichiers OneDrive et Sharepoint ou encore des messages Teams. Voilà un scénario noir qu'ont sans doute pu éviter des millions d'utilisateurs des outils de messagerie et de partage collaboratif de Microsoft. Le chercheur en sécurité Evan Grant, travaillant chez Tenable, a détaillé un hack permettant à un attaquant d'accéder à des privilèges système en lecture et écriture sur les services essentiels de messagerie et de collaboration Microsoft (Outlook, Teams, SharePoint, OneDrive...). Le vecteur d'exploit concerne une vulnérabilité de Power Apps Service, découverte le 26 mars 2021 et confirmée par Microsoft quatre jours plus tard. Ce dernier a indiqué à Tenable ce 11 juin que la faille a bien été comblée et automatiquement corrigée sans aucune action des utilisateurs et des entreprises, laissant toute latitude à la société de préciser son hack.
Dans le cadre de sa recherche, Evan Grant a trouvé un moyen pour piéger des onglets Teams personnalisés (tab) et des workflows automatisés (power automate flows) via l'injection de code malveillant dans l'iframe de création d'une application Power Apps. Cette vulnérabilité est liée à un mauvais paramètre de makerPortalUrl dans apps.powerapps.com/teams/makerportal empêchant de vérifier et valider qu'il s'agit bien d'une action légitime. « Le mécanisme de validation utilisé pour confirmer que le contenu de l'onglet provient d'une source de confiance vérifie uniquement qu'une URL donnée commence par https://make.powerapps.com et pas davantage. Cela signifie qu'un attaquant peut simplement créer un sous-domaine de make.powerapps.com pour tout domaine qu'il contrôle, tel que https://make.powerapps.com.fakecorp.ca, ce qui l'autorise à charger du contenu non fiable dans un onglet Power Apps.
Une escalade vers des droits supplémentaires
Cette faille permet ensuite à un attaquant d'avoir quasiment toutes les clés de la maison et de charger du contenu malveillant dans une iframe apps.powerapps.com. Avec au passage le capacité de récupérer des jetons d'authentification en accédant à la communication de Windows.postMessage. Ceux relatifs à service.flow.microsoft sont particulièrement intéressants. Pourquoi ? Car au travers eux, d'autres procurent des droits supplémentaires comme créer des workflows automatisés pour accéder à des e-mails Outlook, des messages Teams ainsi que des fichiers OneDrive ou encore Sharepoint.
« Bien qu'il s'agisse d'une attaque longue et pas tout à fait simple, son impact potentiel pourrait être énorme, surtout si elle touche un administrateur de l'organisation. Qu'un si petit bogue initial (la validation incorrecte du domaine make.powerapps.com) puisse être exploité jusqu'à ce qu'un attaquant exfiltre des e-mails, des messages Teams, des fichiers OneDrive et SharePoint est véritablement préoccupant. Cela signifie que même un petit bogue dans un service comme Microsoft Power Apps pourrait conduire à la compromission de nombreux autres via des jetons et des connexions vers des connecteurs », a prévenu Evan Grant.