Étapes d'analyse de l'abus d'applications OAuth avec les journaux d'activité de Microsoft Graph
Par Mirko Peters · · Mis à jour
Détectez les menaces OAuth visant Microsoft 365 à l'aide d'Entra ID et du journal d'activité de Microsoft Graph. Découvrez la détection des menaces liées aux applications OAuth grâce aux journaux d'activité et à l'API Graph.
Traduit automatiquement par IA à partir de l'article original. Lire l'original en anglais
La surveillance de l'utilisation des applications OAuth est indispensable pour préserver la sécurité de votre organisation et prévenir l'abus d'applications OAuth. En exploitant les journaux d'activité de Microsoft Graph, vous obtenez une visibilité essentielle sur le fonctionnement des applications OAuth. Ces journaux vous aident à détecter les abus potentiels d'applications OAuth et à identifier les menaces liées à l'activité de ces applications.
Les journaux d'activité de Microsoft Graph sont essentiels pour :
Surveiller l'activité des applications OAuth.
Détecter les abus potentiels d'applications OAuth.
Fournir la visibilité de base nécessaire à la mise au jour des menaces.
Définir des normes de conformité est indispensable, compte tenu des risques associés à l'abus d'applications OAuth. Des critères clairs d'évaluation de la sécurité et de la conformité vous permettent de sélectionner les applications adaptées à un usage en entreprise.
Analyse de l'abus d'applications OAuth avec les journaux d'activité de Microsoft Graph : 5 faits surprenants
Lorsqu'ils analysent l'abus d'applications OAuth à l'aide des journaux d'activité de Microsoft Graph, les enquêteurs en sécurité découvrent souvent des capacités et des limites inattendues qui affectent la détection et la réponse.
- Les journaux d'activité font apparaître le client_app_id OAuth pour les événements centrés sur les applications. Les journaux d'activité de Microsoft Graph incluent le client_app_id (l'appId de l'application) pour de nombreux événements de connexion et de consentement. Il devient ainsi possible de remonter directement des jetons ou des actions suspects jusqu'à une application OAuth enregistrée, et non plus seulement jusqu'à un utilisateur.
- Toute l'activité des applications n'apparaît pas au même endroit : plusieurs types de journaux comptent. Les événements liés à OAuth peuvent être répartis entre les journaux de connexion, les journaux d'audit et les journaux d'activité unifiés de Microsoft Graph. Se fier à un flux unique peut faire passer à côté d'octrois de consentement, d'émissions de jetons ou de modifications d'autorisations d'application pertinents pour une investigation sur un abus.
- Les options de rétention et d’exportation peuvent limiter les chronologies d’investigation si elles ne sont pas configurées. Par défaut, la rétention des journaux d’activité de certains éléments du locataire est limitée ; sans Diagnostic Settings exportant vers un espace de travail Log Analytics ou un compte de stockage, les preuves d’abus d’applications antérieures peuvent être perdues rapidement.
- Certains champs sensibles sont masqués ou expurgés dans les journaux Graph. Pour protéger la vie privée, certaines données personnelles identifiables (DCP) et certains détails de jetons sont tronqués ou obscurcis dans les charges utiles d’activité, ce qui oblige à corréler les journaux entre eux, ainsi qu’avec les journaux d’accès conditionnel, pour reconstituer les chaînes d’attaque complètes.
- Les notifications de modification et les requêtes delta permettent une détection quasi temps réel, mais doivent être configurées. Microsoft Graph prend en charge les notifications de modification (webhooks) et les requêtes delta pour les journaux d'activité, ce qui permet une détection automatisée des autorisations d'application nouvellement accordées ou des actions anormales. Encore faut-il les configurer de manière proactive pour détecter l'abus au moment où il se produit.
Points clés
Surveillez l'activité des applications OAuth à l'aide des journaux d'activité de Microsoft Graph pour détecter les abus et les menaces potentiels.
Auditez régulièrement les applications OAuth afin de vous assurer que leurs autorisations sont appropriées, et examinez toute application suspecte.
Mettez en place des contrôles d'accès stricts, par exemple en désactivant le consentement des utilisateurs pour les applications tierces, afin de renforcer la sécurité.
Utilisez le langage de requête Kusto (KQL) pour analyser les journaux et repérer les schémas inhabituels susceptibles de révéler un abus d'applications OAuth.
Sensibilisez les collaborateurs aux menaces de sécurité et aux techniques d'hameçonnage afin de réduire le risque d'abus d'applications OAuth.
Vue d'ensemble de l'abus d'applications OAuth
Principaux vecteurs d'attaque
Les attaquants exploitent souvent le consentement aux applications OAuth pour accéder sans autorisation à des données sensibles. Ils recourent à diverses tactiques pour contourner les mesures de sécurité. Les campagnes d'hameçonnage, par exemple, sont devenues courantes : les attaquants incitent les utilisateurs à saisir des codes d'appareil sur les pages de vérification Microsoft légitimes. Cette méthode leur permet d'obtenir des jetons d'accès liés aux comptes des victimes. De telles attaques peuvent contourner les contrôles de sécurité traditionnels, y compris l'authentification multifacteur.
De plus, de nombreuses applications tierces se connectent aux plateformes SaaS à l’aide de jetons OAuth. Ces jetons peuvent conserver l’accès indéfiniment, sauf gestion active. Le risque est important : les organisations peuvent involontairement autoriser l’accès à des données sensibles via des applications qui ne sont plus utilisées. Des chercheurs en sécurité ont souligné que les attaques OAuth sont particulièrement difficiles à détecter. Elles laissent très peu de traces forensiques et peuvent persister même après la réinitialisation des mots de passe.
Risques d’accès à long terme
Les risques à long terme liés à un accès persistant des applications OAuth sont alarmants. Dans les environnements orientés cloud, l’identité est devenue le nouveau périmètre. Les attaquants peuvent obtenir un accès persistant aux systèmes de l’entreprise sans compromettre les serveurs ni les mots de passe. Ils exploitent les relations de confiance inhérentes aux systèmes d’identité modernes.
Les conséquences d’un détournement d’applications OAuth peuvent être graves. Voici quelques risques documentés :
Hameçonnage interne : des courriels envoyés depuis des comptes de confiance piègent davantage de victimes.
Vol de données sensibles : des fichiers confidentiels, des contrats et de la propriété intellectuelle peuvent être exfiltrés.
Accès persistant : même si les identifiants sont réinitialisés, les jetons peuvent rester actifs.
Atteinte à la réputation : les clients et partenaires perdent confiance si une violation devient publique.
Les organisations doivent rester vigilantes. Elles doivent régulièrement examiner les consentements accordés aux applications OAuth et surveiller toute activité suspecte. Ainsi, vous pouvez atténuer les risques associés au détournement d’applications OAuth et protéger vos données sensibles.
Journaux d’activité Microsoft Graph pour la sécurité
Source de l’image : unsplashAccéder aux journaux d’activité Microsoft Graph est essentiel pour surveiller le comportement des applications OAuth. Vous pouvez suivre ces étapes pour récupérer efficacement les journaux :
Diffuser les journaux via le paramètre de diagnostic dans le portail Azure, ou à l’aide des API Azure Resource Manager.
Intégrer les journaux d’activité aux journaux Azure Monitor.
Configurer les paramètres de diagnostic via l’API Azure Resource Manager.
Configurer des destinations de stockage telles qu’un espace de travail Azure Log Analytics, Azure Storage ou Azure Event Hubs.
Interroger les journaux à l’aide du langage Kusto Query Language (KQL) s’ils sont envoyés à un espace de travail Log Analytics.
Une fois les journaux accessibles, concentrez-vous sur les entrées clés pouvant indiquer un comportement suspect des applications OAuth. Voici quelques entrées de journal à surveiller :
Description | |
|---|---|
Élévation de privilèges pour l’accès aux données | Des applications qui obtiennent des autorisations étendues, telles que Sites.Read.All ou Files.ReadWrite.All, sans documentation appropriée peuvent indiquer des applications malveillantes visant le vol de données. |
Activité de téléchargement à fort volume | Un compte qui accède à des centaines de fichiers en peu de temps est un indicateur fort d’une éventuelle exfiltration de données. |
Liens de partage anonymes ou externes | La création de ces liens peut être une tactique utilisée par les attaquants pour exploiter les paramètres d’accès aux fichiers et exfiltrer des données. |
Schémas de téléchargement puis de suppression | Des utilisateurs qui téléchargent des fichiers sensibles puis les suppriment peu après peuvent chercher à effacer leurs traces après un vol de données. |
Les alertes en temps réel jouent un rôle essentiel dans la détection des abus d’applications OAuth et la réponse à y apporter. Elles offrent une visibilité sur les comportements suspects et permettent d’déclencher des réponses automatisées pour atténuer les risques. Par exemple, les jetons OAuth de Drift avaient une durée de vie prolongée, ce qui privait les clients Salesforce de visibilité sur les connexions d’applications. Des jetons compromis peuvent contourner le MFA et le SSO, ce qui souligne la nécessité de alertes en temps réel pour détecter les anomalies, comme les extractions massives d’API.
Pour configurer des alertes en temps réel efficaces, appuyez-vous sur les bonnes pratiques suivantes :
Définissez des alertes sur les activités suspectes dans les journaux d’activité de Microsoft Graph, notamment l’attribution d’autorisations privilégiées élevées et les connexions inhabituelles.
Utilisez Microsoft Defender for Cloud Apps (MCAS) pour surveiller et appliquer des contrôles de session, en générant des alertes pour les connexions d’applications OAuth à risque.
Recherchez dans le journal d’audit unifié de Microsoft 365 des événements clés tels que « Add application » ou « Consent to application » afin d’identifier les abus potentiels d’applications OAuth.
Corrélez les alertes de connexion inhabituelle avec les journaux d’audit pour détecter une activité malveillante d’application OAuth.
En mettant en œuvre ces stratégies, vous renforcerez la posture de sécurité de votre organisation et vous vous protégerez mieux contre les abus d’applications OAuth.
Méthodes de détection des abus d’applications OAuth
Source de l’image : pexelsRequêtes KQL
Le Kusto Query Language (KQL) est un outil puissant pour analyser les journaux d’activité de Microsoft Graph. Vous pouvez l’utiliser pour identifier les schémas et les anomalies susceptibles de révéler un abus d’applications OAuth. Voici quelques stratégies efficaces pour utiliser KQL :
Auditez régulièrement les applications Entra pour identifier les autorisations excessives. Cela vous permet de repérer les applications susceptibles de présenter un risque.
Surveillez tout accès inattendu à l’API Microsoft Graph. Un tel accès peut indiquer une compromission, ce qui vous permet d’agir rapidement.
Établissez une liste sécurisée d’applications approuvées. Cette liste facilite la surveillance continue et vous aide à détecter les nouvelles applications à privilèges élevés.
Pour bien démarrer avec KQL, examinez la requête suivante, qui vérifie les activités de connexion inhabituelles :
AuditLogs
| where ActivityType == "SignIn"
| where Result == "Failure"
| summarize Count = count() by UserPrincipalName, bin(TimeGenerated, 1h)
| order by Count desc
Cette requête identifie les utilisateurs ayant échoué à se connecter, ce qui vous permet d’examiner les accès non autorisés potentiels.
Automatisation avec PowerShell
L’automatisation avec PowerShell peut considérablement simplifier la détection des abus d’applications OAuth. En exploitant des scripts PowerShell, vous pouvez automatiser la surveillance des applications OAuth et de leurs activités. Voici quelques outils et leurs fonctionnalités :
Outil | Fonctionnalité |
|---|---|
GraphRunner | Automatise les interactions avec l’API Microsoft Graph, peut obtenir des jetons par différentes méthodes et usurper l’identité d’utilisateurs compromis sans déclencher d’alertes. |
AutoGraph | Fournit une interface de menus pour les interactions avec l’API, automatise l’énumération des utilisateurs et facilite l’extraction de données à partir de sources variées. |
Avec PowerShell, vous pouvez également créer des scripts pour vérifier régulièrement les autorisations excessives dans les applications Entra. Cette approche proactive vous aide à maintenir un environnement sécurisé.
Par exemple, vous pouvez exécuter un script pour lister toutes les applications disposant de privilèges élevés :
Get-AzureADServicePrincipal | Where-Object { $_.AppRoles -ne $null -and $_.AppRoles.Count -gt 5 }
Cette commande récupère les principaux de service dotés de plus de cinq rôles d’application, ce qui vous permet d’évaluer les risques potentiels.
En combinant des requêtes KQL et l’automatisation PowerShell, vous pouvez renforcer vos capacités de détection. Ces méthodes vous donnent les outils nécessaires pour identifier et contrer efficacement les abus d’applications OAuth.
Stratégies d’atténuation des menaces liées à l’identité
Analyse du comportement des utilisateurs
Pour atténuer efficacement les risques liés aux applications OAuth, vous devez analyser le comportement des utilisateurs afin de détecter les anomalies. Les outils d’analyse du comportement des utilisateurs (UBA, User Behavior Analytics) peuvent vous aider à repérer les schémas inhabituels susceptibles de révéler un abus d’applications OAuth. Voici quelques méthodes à envisager :
Méthode/Processus | Description |
|---|---|
Création de modèles de comportement | Les outils UBA créent des modèles à partir de l’activité des utilisateurs, en tenant compte des lieux de connexion et de la fréquence d’utilisation des applications. |
Détection d’anomalies | Les outils UBA comparent le comportement des utilisateurs aux modèles établis afin d’identifier les écarts. |
Utilisation de l’IA et du ML | Des algorithmes analysent le comportement des utilisateurs dans le temps afin de détecter des schémas inhabituels, comme une connexion en dehors des heures normales de travail. |
Comparaison avec les pairs | Les outils UBA comparent les actions d’un utilisateur à celles de ses pairs afin de repérer les comportements suspects, comme l’accès à des données non autorisées. |
En mettant en œuvre ces stratégies, vous pouvez détecter les menaces potentielles plus tôt. Les audits réguliers des applications OAuth jouent également un rôle crucial. Vous devez examiner régulièrement les autorisations afin de vérifier qu’elles correspondent aux rôles des utilisateurs. Examinez toute application suspecte susceptible de disposer de droits d’accès excessifs.
Corrélation des événements
La corrélation des événements est une autre stratégie efficace pour détecter les menaces liées à l’identité. Cette approche vous permet de rassembler des informations provenant de différentes sources afin d’identifier des enregistrements d’applications malveillantes ou le contournement de contrôles de sécurité. Voici quelques éléments qui montrent l’importance de la corrélation des événements :
Type de preuve | Statistique/Constat |
|---|---|
Lacunes de visibilité | Dans 87 % des enquêtes, les intervenants ont dû examiner des preuves provenant d’au moins deux sources distinctes. |
Complexité de l’environnement | Les lignes de base de sécurité étaient appliquées de manière incohérente selon les unités commerciales, ce qui créait des failles exploitables. |
Dérive des identités | Les comptes disposent souvent de plus d’accès que nécessaire, en raison de l’accumulation d’autorisations au fil du temps. |
En corrélant les événements, vous pouvez établir une évaluation des risques complète. Ce processus vous aide à comprendre comment les différentes activités sont liées entre elles et à détecter les schémas susceptibles de révéler des techniques d’abus OAuth.
La mise en œuvre de ces stratégies d’atténuation demande de l’engagement. Vous pouvez rencontrer des difficultés, comme la difficulté à détecter les attaques qui exploitent les flux OAuth légitimes. Les contrôles de sécurité traditionnels sont souvent insuffisants une fois le consentement accordé. Toutefois, grâce à une approche proactive, vous pouvez réduire considérablement le risque d’abus d’applications OAuth.
Pour renforcer davantage votre posture de sécurité, envisagez ces stratégies d’atténuation efficaces :
Audit : auditez régulièrement les applications OAuth afin de vérifier que les autorisations sont appropriées et examinez les applications suspectes.
Restreindre le consentement des utilisateurs : désactivez le consentement des utilisateurs pour les applications tierces afin d’exiger une approbation administrative pour toutes les demandes d’autorisation.
Contrôle d’accès basé sur les rôles (RBAC) : mettez en place le RBAC afin de limiter les privilèges des utilisateurs au strict nécessaire.
Formation des utilisateurs : organisez des formations régulières pour sensibiliser les collaborateurs aux menaces de sécurité et aux techniques d’hameçonnage.
En vous concentrant sur l’analyse du comportement des utilisateurs et la corrélation des événements, vous pouvez renforcer vos défenses contre les menaces liées à l’identité et à l’abus d’applications OAuth.
En résumé, l’analyse des abus d’applications OAuth révèle des vulnérabilités critiques dans de nombreuses applications. Des études récentes indiquent qu’environ 8 % des applications testées sont vulnérables aux abus OAuth. Cela souligne la nécessité d’une surveillance continue pour renforcer votre posture de sécurité.
Vous devez vous concentrer sur :
Audits réguliers des identités des utilisateurs et des principaux de service.
Mise en place de stratégies de consentement pour bloquer les accès non autorisés.
Rechercher proactivement les applications à risque.
En adoptant ces stratégies de défense proactives, vous pouvez réduire considérablement les risques liés à l’utilisation abusive d’applications OAuth et protéger votre organisation contre les menaces potentielles.
Questions fréquentes
Qu’est-ce que l’utilisation abusive d’applications OAuth ?
L’utilisation abusive d’applications OAuth se produit lorsque des attaquants exploitent des applications OAuth pour accéder sans autorisation à des données sensibles. Ils recourent souvent à des tactiques telles que l’hameçonnage et l’hameçonnage par consentement pour inciter les utilisateurs à accorder des autorisations.
Comment détecter l’utilisation abusive d’applications OAuth ?
Vous pouvez la détecter en surveillant les journaux d’activité Microsoft Graph à la recherche d’activités suspectes. Recherchez les connexions inhabituelles, les téléchargements à volume élevé et les modifications d’autorisations inattendues.
Quels sont les risques de l’hameçonnage par consentement ?
L’hameçonnage par consentement permet aux attaquants d’inciter les utilisateurs à accorder un accès à leurs comptes. Cela peut entraîner un vol de données, des accès non autorisés et une atteinte potentielle à la réputation de votre organisation.
À quelle fréquence faut-il auditer les applications OAuth ?
Il est recommandé d’auditer régulièrement les applications OAuth, idéalement tous les deux ou trois mois. Cela permet de vérifier que les autorisations restent appropriées et de repérer rapidement les applications suspectes.
Quelles mesures prendre pour prévenir l’utilisation abusive d’applications OAuth ?
Pour prévenir cette utilisation abusive, mettez en place des contrôles d’accès stricts, désactivez le consentement des utilisateurs pour les applications tierces et organisez régulièrement des formations de sensibilisation à l’hameçonnage pour vos collaborateurs.
Investigation de Microsoft Graph : espace de travail Log Analytics et détection des menaces
Qu’est-ce que l’analyse de l’utilisation abusive d’applications OAuth à l’aide des journaux d’activité Microsoft Graph ?
Analyser l’utilisation abusive d’applications OAuth à l’aide des journaux d’activité Microsoft Graph consiste à exploiter l’activité de l’API Graph et les journaux de l’API Graph pour identifier les activités malveillantes d’applications ou d’acteurs de la menace qui détournent l’autorisation OAuth 2.0 dans votre environnement Microsoft 365. Vous examinez les appels à l’API Graph, les schémas de requêtes d’API et les journaux de connexion Entra ID, ainsi que la série de journaux d’activité Graph dans un espace de travail Log Analytics, afin de détecter les comportements OAuth suspects et les applications OAuth à risque.
Comment activer les journaux d’activité Microsoft Graph et où sont-ils stockés ?
L’activation des journaux d’activité Microsoft Graph nécessite de configurer les services Microsoft 365 et le service Microsoft Graph pour envoyer l’activité de l’API Graph et les activités d’API vers un espace de travail Log Analytics (ou un SIEM externe). Utilisez les paramètres de diagnostic de Microsoft Entra ID pour acheminer les requêtes de l’API Graph, les journaux Entra ID et les événements de connexion vers un ID d’espace de travail Log Analytics, où vous pourrez interroger les journaux de l’API Graph et exécuter des requêtes de détection des menaces avec Kusto (journal d’activité et requête Kusto).
Quels indicateurs dans les appels à l’API Graph révèlent une activité OAuth suspecte ?
Recherchez les requêtes inhabituelles à l’API Graph, comme les appels à volume élevé provenant d’un même ID d’application, les autorisations de consentement répétées, la réutilisation de jetons entre locataires ou l’activité de l’API Graph depuis des adresses IP inconnues. Corrélez ces éléments avec les journaux de connexion Entra ID, les événements du courtier d’authentification Microsoft et les anomalies dans le moment des appels d’API afin de repérer les menaces grâce à l’activité Microsoft Graph et à une éventuelle utilisation abusive d’applications OAuth.
Comment enquêter sur les applications OAuth à risque avec Log Analytics et les requêtes Kusto ?
Utilisez l’espace de travail Log Analytics pour centraliser les journaux de l’API Graph et exécutez des requêtes Kusto sur la série de journaux d’activité Graph. Étapes typiques : ingérer les requêtes de l’API Microsoft Graph et les journaux Entra ID, écrire des requêtes KQL pour faire ressortir les activités inhabituelles de l’API Graph, pivoter sur l’ID d’application et l’utilisateur, puis corréler avec les événements des services Microsoft 365. Un playbook d’utilisation de Graph comprend des exemples KQL permettant de détecter les jetons OAuth suspects et les activités d’API.
Quel rôle joue Entra ID dans la détection de l’utilisation abusive d’OAuth ?
Microsoft Entra ID (anciennement Azure AD) fournit les signaux d’identité et d’accès (journaux Entra ID et journaux de connexion Entra ID) qui indiquent quelle application a demandé l’accès et quel utilisateur a donné son consentement. En croisant ces journaux avec l’API Microsoft Graph et les journaux d’activité de l’API Graph, vous pouvez relier les événements d’autorisation OAuth 2.0 aux requêtes d’API, identifier les identifiants compromis ou les applications malveillantes, et appliquer des règles d’accès conditionnel ou révoquer les autorisations accordées aux applications.
Peut-on automatiser la détection des menaces et la réponse à l’utilisation abusive d’applications OAuth ?
Oui. Combinez les journaux d’activité de l’API Graph dans un espace de travail Log Analytics avec des alertes automatisées et des playbooks pour détecter les menaces via Microsoft Graph. Utilisez KQL pour déclencher des alertes sur les anomalies, puis lancez une remédiation automatisée (révocation des jetons, blocage de l’ID d’application, désactivation du consentement) à l’aide des appels de l’API Microsoft Graph et du service Microsoft Graph afin de contenir l’activité malveillante et de réduire l’accès aux ressources Microsoft 365.
Quelles sont les meilleures pratiques pour réduire les risques liés aux applications OAuth suspectes ou à risque ?
Les meilleures pratiques incluent : appliquer le principe du moindre privilège aux applications, surveiller les requêtes de l’API Graph ainsi que les journaux de connexion Entra ID, n’exiger le consentement d’administrateur que lorsque c’est nécessaire, utiliser l’accès conditionnel et l’authentification multifacteur, centraliser les journaux de l’API Graph dans un espace de travail Log Analytics (avec son ID d’espace de travail Log Analytics), et effectuer régulièrement des investigations à l’aide du journal d’activité Graph et des requêtes Kusto afin de détecter tôt les menaces liées à l’activité de Microsoft Graph.
Comment intégrer Microsoft Teams ou d’autres services Microsoft 365 dans les investigations ?
Intégrez la télémétrie de Microsoft Teams et des autres services Microsoft 365 dans vos journaux d’activité de l’API Graph, puis corrélez-la avec les requêtes de l’API Graph. De nombreux scénarios d’abus OAuth impliquent l’accès à la messagerie, aux fichiers ou aux messages Teams. En utilisant l’API Microsoft Graph pour extraire l’activité propre à chaque service et en la combinant avec les journaux Entra ID dans Log Analytics, vous pouvez suivre la chaîne complète, depuis la requête API jusqu’à l’accès aux ressources, et détecter les activités malveillantes dans l’ensemble de l’écosystème Microsoft.