Partager via


Configurer la réponse à l’analyse des programmes malveillants

Configurez des réponses automatisées pour déplacer ou supprimer des fichiers malveillants ou pour déplacer/ingérer des fichiers propre vers une autre destination. Sélectionnez l’option de réponse préférée qui correspond à votre architecture de scénario.

Avec l’analyse des programmes malveillants, vous pouvez générer votre réponse d’automatisation à l’aide des options de résultat d’analyse suivantes :

  • Alertes de sécurité de Microsoft Defender pour le cloud
  • Événements Event Grid
  • Étiquettes d’index d’objet blob

Conseil

Nous vous invitons à explorer la fonctionnalité d’analyse des programmes malveillants dans Defender pour le stockage par le biais de notre labo pratique. Suivez les instructions de formation Ninja pour obtenir un guide détaillé et pas à pas sur la configuration et le test de bout en bout de l’analyse des programmes malveillants, notamment la configuration des réponses aux résultats d’analyse. Cela fait partie du projet « labos » qui aide les clients à se familiariser avec Microsoft Defender pour le cloud et à fournir une expérience pratique avec ses fonctionnalités.

Voici quelques options de réponse que vous pouvez utiliser pour automatiser votre réponse :

Bloquer l’accès aux fichiers non analysés ou malveillants à l’aide d’ABAC (contrôle d’accès basé sur les attributs)

Vous pouvez bloquer l’accès aux fichiers malveillants et non analysés avec une autorisation de contrôle d’accès en fonction de l’attribut (ABAC) Microsoft Entra. Il vous permet de définir l’accès conditionnel aux objets blob en fonction des résultats de l’analyse. Il permet également les applications et les utilisateurs d’accéder uniquement aux fichiers analysés qui sont propres.

Suivez les instructions de la vidéo suivante pour le configurer.

Supprimer ou déplacer un objet blob malveillant

Vous pouvez utiliser l’automatisation du code ou du flux de travail pour supprimer ou déplacer des fichiers malveillants en quarantaine.

Préparez votre environnement pour la suppression ou le déplacement

  • Supprimer le fichier malveillant : avant de configurer la suppression automatisée, il est recommandé d’activer la suppression réversible sur le compte de stockage. Il permet d’annuler la suppression des fichiers s’il existe des faux positifs ou dans les cas où des professionnels de la sécurité veulent enquêter sur les fichiers malveillants.

  • Déplacer le fichier malveillant en quarantaine : vous pouvez déplacer des fichiers vers un conteneur de stockage dédié ou un compte de stockage qui sont considérés comme « quarantaine ». Vous pouvez souhaiter que seuls certains utilisateurs, tels qu’un administrateur de sécurité ou un analyste SOC, aient l’autorisation d’accéder à ce conteneur ou compte de stockage dédié.

Mise en place de l'automatisation

Option 1 : Application logique basée sur les alertes de sécurité Microsoft Defender pour le cloud

Les réponses basées sur une application logique sont une approche simple et sans code pour la configuration de la réponse. Toutefois, le temps de réponse est plus lent que l’approche basée sur le code basée sur les événements.

  1. Déployez le modèle Azure Resource Manager (ARM) DeleteBlobLogicApp à l’aide de la Portail Azure.

  2. Sélectionnez l’application logique que vous avez déployée.

  3. Ajoutez une attribution de rôle à l’application logique pour lui permettre de supprimer des objets blob de votre compte de stockage :

    1. Accédez à Identité dans le menu latéral et sélectionnez Attributions de rôles Azure.

      Capture d’écran montrant comment configurer une attribution de rôle pour l’automatisation du flux de travail afin de répondre aux résultats d’analyse.

    2. Ajoutez une attribution de rôle au niveau de l’abonnement avec le rôle Contributeur aux données Blob du stockage.

    3. Créez l’automatisation des flux de travail pour les alertes Microsoft Defender pour le cloud :

      1. Accédez à Microsoft Defender pour le cloud dans le Portail Azure.
      2. Accédez à Automatisation du flux de travail dans le menu latéral.
      3. Ajouter un nouveau flux de travail : dans le champ Nom de l’alerte contient, renseignez Fichier malveillant chargé sur le compte de stockage et choisissez votre application logique dans la section Actions.
      4. Sélectionnez Créer.

      Capture d’écran montrant comment configurer l’automatisation du flux de travail afin de répondre aux résultats d’analyse.

Option 2 : Application de fonction basée sur les événements Event Grid

Une application de fonction offre une haute performance avec un temps de réponse à faible latence.

  1. Créez une application de fonction dans le même groupe de ressources que votre compte de stockage protégé.

  2. Ajoutez l’attribution de rôle pour l’identité de l’application de fonction.

    1. Accédez à Identité dans le menu latéral, assurez-vous que l’état d’identité attribué par le système est Activé, puis sélectionnez Attributions de rôles Azure.

    2. Ajoutez une attribution de rôle aux niveaux d’abonnement ou de compte de stockage avec le rôle Contributeur aux données Blob du stockage.

  3. Consommez des événements Event Grid et connectez une fonction Azure comme type de point de terminaison.

  4. Lorsque vous écrivez le code de fonction Azure, vous pouvez utiliser notre exemple de fonction prédéfini MoveMaliciousBlobEventTrigger, ou écrire votre propre code pour copier l’objet blob ailleurs, puis le supprimer de la source.

Pour chaque résultat d’analyse, un événement est envoyé en fonction du schéma suivant.

Structure du message d'événement

Le message d'événement est un objet JSON qui contient des paires clé-valeur fournissant des informations détaillées sur le résultat de l'analyse d'un malware. Voici une description de chaque clé du message d'événement :

  • id : identifiant unique pour l'événement.

  • subject : chaîne décrivant le chemin d'accès à la ressource du blob (fichier) analysé dans le compte de stockage.

  • data : un objet JSON contenant des informations supplémentaires sur l'événement :

    • correlationId : Un identifiant unique pouvant être utilisé pour corréler plusieurs événements liés à la même analyse.

    • blobUri : l'URI de l’objet blob (fichier) analysé dans le compte de stockage.

    • eTag : ETag de l’objet blob analysé (fichier).

      • scanFinishedTimeUtc : horodatage UTC à la fin de l’analyse.

      • scanResultType : résultat de l’analyse, par exemple « Malveillant » ou « Aucune menace trouvée ».

      • scanResultDetails : objet JSON contenant des détails sur le résultat de l’analyse :

        1. malwareNamesFound : tableau de noms de malwares trouvés dans le fichier analysé.

        2. sha256 : Le hachage SHA-256 du fichier analysé.

  • eventType : chaîne qui indique le type d’événement, dans ce cas : « Microsoft.Security.MalwareScanningResult ».

  • sha256 : le numéro de version du schéma de données.

  • metadataVersion: le numéro de version du schéma de métadonnées.

  • eventTime : horodatage UTC lorsque l’événement a été généré.

  • topic : chemin d’accès aux ressources de la rubrique Event Grid à laquelle l’événement appartient.

Voici un exemple de message d’événement :

{
  "id": "52d00da0-8f1a-4c3c-aa2c-24831967356b",
  "subject": "storageAccounts/<storage_account_name>/containers/app-logs-storage/blobs/EICAR - simulating malware.txt",
  "data": {
    "correlationId": "52d00da0-8f1a-4c3c-aa2c-24831967356b",
    "blobUri": "https://<storage_account_name>.blob.core.windows.net/app-logs-storage/EICAR - simulating malware.txt",
    "eTag": "0x8DB4C9327B08CBF",
    "scanFinishedTimeUtc": "2023-05-04T11:31:54.0481279Z",
    "scanResultType": "Malicious",
    "scanResultDetails": {
      "malwareNamesFound": [
        "DOS/EICAR_Test_File"
      ],
      "sha256": "275A021BBFB6489E54D471899F7DB9D1663FC695EC2FE2A2C4538AABF651FD0F"
    }
  },
  "eventType": "Microsoft.Security.MalwareScanningResult",
  "dataVersion": "1.0",
  "metadataVersion": "1",
  "eventTime": "2023-05-04T11:31:54.048375Z",
  "topic": "/subscriptions/<subscription_id>/resourceGroups/<resource_group_name>/providers/Microsoft.EventGrid/topics/<event_grid_topic_name>"
}

Lorsque vous comprenez la structure message d’événement, vous pouvez extraire des informations pertinentes sur le résultat de l’analyse des malwares et les traiter en conséquence.

Informer vos applications et vos flux de données des résultats de l’analyse des programmes malveillants

L’analyse des programmes malveillants est quasiment en temps réel et, en général, il existe une petite fenêtre de temps entre le moment du chargement et celui de l’analyse. Étant donné que le stockage n’est pas conforme, il n’y a aucun risque que des fichiers malveillants soient exécutés dans votre stockage. Le risque est que les utilisateurs ou les applications accèdent à des fichiers malveillants et les propagent dans l’organisation.

Il existe quelques méthodes pour rendre vos applications et flux de données conscients des résultats de l’analyse des programmes malveillants et vous assurer qu’il n’existe aucun moyen d’accéder ou de traiter un fichier avant qu’il ait été analysé et que son résultat ait été utilisé et pris en compte.

Les applications ingèrent des données en fonction du résultat de l’analyse

Option 1 : Applications vérifiant « Balise d’index » avant le traitement

Une façon d’obtenir des données d’ingestion consiste à mettre à jour toutes les applications ayant droit d’accès au compte de stockage. Chaque application vérifie le résultat de l’analyse pour chaque fichier, et si le résultat de l’analyse de balise d’index d’objet blob n’est aucune menace trouvée, l’application lit l’objet blob.

Option 2 : Connecter votre application à un Webhook dans les événements Event Grid

Vous pouvez connecter votre application à un Webhook dans les événements Event Grid et utiliser ces événements pour déclencher les processus appropriés pour les fichiers pour lesquels aucune menace n’a trouvé de résultats d’analyse. En savoir plus sur l’utilisation de la remise d’événements Webhook et la validation de votre point de terminaison.

Utiliser un compte de stockage intermédiaire en tant que zone DMZ

Vous pouvez configurer un compte de stockage intermédiaire pour le contenu non approuvé (DMZ) et le chargement direct du trafic vers la zone DMZ. Sur le compte de stockage non approuvé, activez l’analyse des programmes malveillants et connectez Event Grid et Function App pour déplacer uniquement les objets blob analysés avec le résultat « aucune menace trouvée » vers le compte de stockage de destination.

Diagramme montrant comment configurer un compte de stockage intermédiaire en tant que zone DMZ.

Étapes suivantes

Découvrez comment comprendre les résultats d’analyse des programmes malveillants dans Microsoft Defender pour le stockage.