7.5.11. Analyse des alertes Yara

7.5.11.1. Introduction

Pour plus d'informations, voir les paragraphes suivants :


7.5.11.1.1. Gestion du moteur Yara

Pour les informations sur le moteur, voir le paragraphe Visualisation de l'état du moteur.
Pour les informations sur la mise à jour du moteur, voir le paragraphe Mise à jour du moteur.
Pour les informations sur la configuration du moteur, voir le paragraphe de Configuration du moteur.

7.5.11.1.2. Événements générés par le moteur

Les événements générés par le moteur Yara ne sont que des alertes.
Les événements générés par le moteur Yara sont inclus dans les alertes Malcore.
Celles-ci sont affichées :
  • dans l'interface principale nommée Web UI du GCenter dans l'écran `Alerts`
    L'interface principale nommée Web UI est décrite dans la Présentation de la WebUI.
    • Pour filtrer les alertes Yara, taper `name:"Yara Rule Matched"` dans le champ de recherche puis valider.

    • Utiliser le sélecteur `Group by name` pour visualiser le nombre d'alertes différentes.
      Le nom des alertes agrégées et leurs numéros sont affichés.
      ../../_images/GCE103_YARA_ALERT_01.png
    • Cliquer sur un groupe d'alertes pour en afficher la liste, si besoin.

    • Désactiver le sélecteur `Group by name`.
      Des informations différentes sur la source et la destination sont affichées pour chaque alerte.
      `Tags` et `Notes` sont également visibles et modifiables.
      Les différentes `Actions` d'accès rapide sont disponibles pour chaque alerte.
    • Cliquer sur une alerte.
      Les informations détaillées de cette alerte sont affichées dans l'Exemple d'alerte Yara dans la WebUI.
  • Dans l'interface nommée Kibana UI
    • Pour visualiser toutes les alertes Yara :

    • Dans l'interface principale WebUI, cliquer sur l'icône `Hunting`.
      L'interface principale nommée Web UI est décrite dans la Présentation de la WebUI.
    • Cliquer sur l'onglet `Malcore` (2) de la catégorie `Alerts` (1).

    • Sélectionner l'onglet `Overview` (3).

    • Sélectionner l'intervalle de temps (4) pour afficher les données.
      ../../_images/GCE103_YARA_ALERT_02.PNG
      Voir la présentation de l'Ecran `Alerts` de la WebUI.
    • Pour filtrer les alertes Yara dans Kibana, entrer la commande `event.module : "malcore" and malcore.state : "Yara Rule Matched"` (5) dans le champ de recherche.

    • Valider avec le bouton `Refresh` (6).

      ../../_images/GCE103_YARA_ALERT_03.PNG
    • Pour consulter des informations sur une alerte spécifique :

    • Après avoir sélectionné l'alerte, cliquer sur la commande `Open malcore file transaction` du menu `Actions`.
      Kibana est ouvert dans l'onglet `Malcore` de la section `Alerts ` : dans l'onglet `Overview` la base de données est filtrée sur le paramètre `file.hash.sha256` (7).
      L'interface affichée est l'interface nommée Kibana UI (décrite dans l'Interface graphique Kibana).
      ../../_images/GCE103_YARA_ALERT_04.PNG

    Note

    L'interface KibanaUI est également accessible sans filtre via l'icône `Hunting` sur la barre de menu de gauche dans la WebUI.


7.5.11.1.3. Informations essentielles pour comprendre le contexte de l'alerte

7.5.11.1.3.1. Quels sont les champs clés d'une alerte et leur signification ?

Avant toute investigation ou qualification d’une alerte, il est essentiel de commencer par observer plusieurs éléments qui fourniront des informations essentielles pour comprendre le contexte de l’alerte.
Ces éléments peuvent être trouvés soit dans l’interface WebUI, soit dans l’interface Kibana UI (pour plus d’informations, se référer au paragraphe précédent).
../../_images/GCE103_YARA_ALERT_07.PNG

Dans les informations affichées sur l'écran `Alerts` de la WebUI, ces éléments clés comprennent :

  • `Engine:`
    Les alertes relatives au moteur Yara comprennent le terme `Malcore` pour le champ `Engine`.
  • `Date:`
    La date à laquelle le moteur a levé une alerte dans le fuseau horaire local. La date UTC est accessible dans le détail de l'alerte sous .event.created
  • `Name:`
    Au début de ce champ est indiqué le résultat du scan Yara (yara rule matched) associé au sha256 du fichier.
  • `Src. IP` et `Dest. IP`
    Les adresses IP associées à l'alerte, qu'il s'agisse de la source ou de la destination, fournissent des informations sur la communication réseau impliquée dans l'incident.
  • `Src. Host.` et `Dest.Host.`
    Les hôtes source et destination associés à l'alerte fournissent des informations sur les systèmes impliqués dans la communication réseau de l'incident.

De plus amples informations sont disponibles sur l'écran `Alert Details` après avoir cliqué sur une alerte dans l'écran `Alerts` de la WebUI.

../../_images/GCE103_YARA_ALERT_08.PNG
  • Cliquer sur l'onglet `Details` (1).

    ../../_images/GCE103_YARA_ALERT_09.PNG
  • `detail_threat_found` : ce champ est toujours `yara rule matched`
  • `protocol`
    Ce champ indique le protocole par lequel le fichier a été observé sur le réseau.
    Ces informations peuvent aider à identifier la manière dont le fichier a été livré ou permettre de recueillir des informations plus spécifiques sur le protocole.
  • `magic details`
    Il s'agit du format de fichier détecté par Malcore.
    Le format du fichier n'est pas détecté en fonction du nom ou de l'extension du fichier, mais plutôt en fonction de son contenu.
    Ces informations peuvent aider à comprendre la nature du fichier malveillant en question, en particulier les plateformes qui sont ciblées, et permettent parfois de révéler la véritable nature d'un fichier.
    Par exemple : "PE32 executable (GUI) Intel 80386, for MS Windows".
    Dans cet exemple, "PE32 executable" indique qu'il s'agit d'un fichier exécutable au format Portable Executable, couramment utilisé pour les programmes Windows.
  • `file.name`
    Ce champ indique le nom de fichier original utilisé lors de la livraison.
  • `file.hash.md5` et `file.hash.sha256`
    Ces champs indiquent la somme de contrôle en MD5 et SHA256 de l'échantillon.
    Cette somme de contrôle est une valeur unique représentant le contenu d'un fichier.

7.5.11.2. Procédure de traitement d'une alerte

7.5.11.2.1. Comment vérifier l'exactitude d'une alerte et déterminer si elle représente une menace réelle ?

Yara émet une alerte si le contenu du fichier correspond à une règle de l'ensemble de règles Yara téléchargé dans les paramètres de Yara (voir la configuration de Yara dans la stratégie de détection).
À l'heure actuelle, il n'est pas possible de savoir quelle règle de la Yara est à l'origine de l'alerte.
Pour enquêter, il faut télécharger le fichier signalé par le moteur Yara et l'analyser manuellement.

7.5.11.2.2. Quelles réponses à apporter en cas de confirmation de la menace ?

Note

Cette procédure permet d'approfondir l'enquête et d'évaluer l'ampleur de l'incident après confirmation d'une menace générée par le moteur Yara.

  • Isoler le système : isoler immédiatement le système contaminé et s'assurer qu'il ne peut pas causer de dommages supplémentaires

  • Notifier : informer les parties concernées de la détection de la menace

  • Analyse dynamique : si possible, exécuter le fichier dans un environnement sécurisé (sandbox) pour observer son comportement (une GBox par exemple)

  • Collecter les informations : rassembler les informations essentielles telles que le hash du fichier, son nom, sa source et son emplacement

  • Neutraliser la menace en supprimant le fichier, bloquant l'adresse IP d'origine, etc.

  • Reverse engineering (si nécessaire) : si la menace est particulièrement complexe, le reverse engineering peut être envisagé pour comprendre en profondeur son fonctionnement interne
    Cela peut aider à identifier les vulnérabilités exploitées et les mécanismes de propagation.
    La fonctionnalité `Download Malware`, présentée précédemment, permet de récupérer le fichier pour une analyse.
  • Analyser les logs : examiner les journaux système et réseau pour retracer la propagation de la menace