Threat Hunting : Comment débusquer proactivement les cyber menaces ?
Introduction
Le Threat Hunting est une activité qui couvre de la recherche de simples Indicateurs de Compromission (IOC) à des investigations bien plus complexes. Nous allons découvrir comment elle est réalisée par nos équipes, pour le bénéfice de nos clients.
Le Threat Hunting est une recherche numérique, proactive, réalisée par un investigateur, dans le but de découvrir une potentielle compromission ou anomalie au sein du système d’information.
Mais comment une recherche manuelle pourrait détecter une menace lorsque des produits de type XDR (Extended Detection and Response), EDR (Endpoint Detection and Response), antivirus, proxy ou autres solutions de sécurité automatisées déjà en place, ne l’auraient pas détectée?
Quand les alertes de ces solutions de sécurité ainsi que les logs de sécurité et d’audit des systèmes sont analysées par un analyste SOC 24h/7j, quelle pourrait être la valeur ajoutée de cette activité ?
Qu’est-ce que le Threat Hunting ?
Le Threat Hunting est une recherche proactive de menaces inconnues ou non détectées dans une organisation, que ce soit au travers de l’investigation des postes de travail, d’artefacts réseaux ou de journaux de sécurité. Il est admis 2 modèles principaux de Threat Hunting opérationnel.
L’approche non structurée : L’expert va rechercher un indicateur de compromission (IOC). Ces derniers peuvent être variés : un hash cryptographique (condensat de fichier), une adresse IP, un nom de domaine, voire des emplacements ou des noms de fichiers.
La recherche commence par « une piste » dont on a la connaissance. Il est nécessaire de pouvoir rechercher ces indicateurs dans le passé, de manière rétroactive, car le délai entre la réception d’IOC et la capacité de les utiliser peut régulièrement dépasser plusieurs jours.
Par exemple, on peut rechercher une URL de phishing sur le mois dernier, dès réception de cet IOC, afin de déterminer si un utilisateur a été impacté sur la période. La problématique est la difficulté d’effectuer un traitement à la fois exhaustif et manuel, en raison du volume de données. Il est donc important de :
- réduire le périmètre des recherches en se basant sur différents critères (comme les sources de l’IOC, sa dangerosité, etc.),
- ou de mettre en place une automatisation à grande échelle permettant de traiter l’ensemble de façon automatique.
Il y a systématiquement un délai entre le moment où une victime génère une requête vers un IOC (vers un domaine par exemple, dans le cas d’un phishing) et la connaissance de celui-ci par les équipes de Sécurité. Pour être efficace, il faut pouvoir rechercher tout nouvel IOC dans le passé. C’est un défi en termes de volumétrie auquel des SIEM seuls ne peuvent pas toujours faire face.
Dans un second temps, pour finaliser la chasse, si l’équipe découvre un évènement lié à un nouvel IOC, elle devra procéder à des analyses manuelles complémentaires en pivotant sur les premières découvertes. A titre d’exemple, dans le cadre d’un domaine de phishing auquel un utilisateur se serait connecté, la suite pourrait être l’analyse de la boite courriel/ mail ou du poste de travail de l’utilisateur – pour déterminer le point de départ de cette connexion. Cette nécessité de s’appuyer sur de nouvelles découvertes se poursuivra jusqu’à la résolution complète de cet incident. C’est tout l’intérêt du Threat Hunting proactif et manuel, où l’équipe de chasse va devoir reconstruire le vecteur d’attaque en utilisant de manière non-structurée l’ensemble des informations disponibles.
L’approche structure : Ce type de Threat Hunting s’appuie sur la recherche de tactiques, techniques et procédures (TTP), pouvant constituer des indicateurs de menaces potentielles. L’expert en charge du Threat Hunting émet une hypothèse sur les méthodes d'un attaquant et cherche à identifier des traces de cette attaque. Le Hunting structuré est une approche proactive qui permet de découvrir des attaquants qui seraient passés au travers des solutions de sécurité en place.
Prenons l’exemple d’une recherche structurée à travers l’identification de logiciel malveillant via les « Users Agent ». Un « User Agent » est une chaine de caractères insérée dans chaque requête web par le navigateur qui, historiquement, permettait au serveur web d’adapter le contenu en fonction du navigateur.
La mis en place de ce type de detection au sein d'un Cyber Security Operation Centre (CSOC) ou Centre de Supervision Cyber lèverait une alerte à chaque "User Agent" détecté non connu ou faiblement connu par les outils du CSOC. Seulement le nombre de "User Agents" circulant dans un système d'information est très important, ce qui rend ce type de détection compliqué à mettre en place.
Une approche par un Threat Hunter est plus pertinente : il part de l'hypothèse que la majorité du parc informatique est sain et que quelques machines seulement sont compromises. Ces quelques machines peuvent être identifiées par cette "empreinte numérique" qu'est le "User Agent". Le Threat Hunter utilise un EDR pour s'assurer de la légitimité des exécutables en action sur les ordinaturs qui ont pu émettre les requêtes réseau avec ces User Agents peu communs.
L'objectif final serait donc de mettre en evidence le déploiement d'un RAT (Remote Access Trojan, ou cheval de Troie d'accès à distance), comme Cobalt Strike, là où une détection automatique ne l'aurait pas découvert.
A contrario, le Threat Hunting n’est pas voué à remplacer des outils de détection déjà en place ou un CSOC. Il s’agit d’une couche additionnelle de sécurité intervenant en complément des techniques de détection traditionnelles automatisées, et s’appuyant sur celles-ci pour fonctionner. Il nécessite une certaine maturité de la sécurité du système d’information. Il peut incomber aux équipes de gestion d’incident lors des périodes où les incidents se font rares. L’équipe pourra ainsi s’appuyer sur les concepts utilisés lors des incidents, afin de repérer des incidents qui n’auraient pas encore été découverts.
Notre réponse
Le Threat Hunting œuvrant sur la base d’IOC, ainsi que le « Retro Hunting », sont directement intégrés au sein de nos CSOC Thales.
Cette solution s’appuie sur le Passive DNS (Domain Name System, ou système de nom de domaine passif) nous permettant de lever des alertes pour des accès réseaux effectués en amont de la réception d’un IOC, et ce, malgré la forte volumétrie des données à traiter. Pour chaque domaine reçu, une alerte est levée dès qu’un évènement est détecté entre la première utilisation de ce dernier et la réception dans nos sources de Threat Intelligence. Dès lors, l’analyste SOC effectue une recherche fine de cet IOC dans le SIEM ou l’EDR afin de confirmer une potentielle compromission. Cette technique est particulièrement efficace sur les indicateurs qui concernent les phishings, qui par définition, ne sont utilisés qu’une seule fois. Cette activité se nomme le Retro Hunting.
En complément, sur demande, nous pouvons mettre en place un Threat Hunting structuré, appelé le Sleuth Hunting.
Nous organisons cette activité autour de « HUNTs », ou « chasses ». Une chasse est une activité de détection basée sur la connaissance des techniques des attaquants, étayée par des rapports publics, privés ou des incidents traités in vivo. Une chasse est réalisée de façon régulière tout au long de l’année. Tous les mois, des chasses sont menées avec l’objectif in-fine de couvrir tout le spectre de détection. La récurrence de cette activité permet de rester proche de l’actualité. En effet, nous adaptons continuellement nos activités aux dernières menaces. Par exemple, en recherchant des connexions effectuées directement depuis certains périphériques périmétriques, un Firewall ou une solution de VPN…
Dans tous les cas, un rapport est émis au terme de chaque mois de chasse. Il reprend l’explication des activités effectuées, les références qui ont conduit à ces dernières, les activités de groupes malveillants ou les dernières tendances. Il comporte également le détail des actions menées et des mesures opérationnelles. Il peut aussi contenir des propositions d’adaptation des cas d’usage ou des améliorations concernant la sécurité.
Conclusion
Le Threat Hunting est une activité qui permet de lever des alertes pouvant passer sous le radar avec les méthodes de détection en place au sein du système d’information.
Ces activités permettent également de découvrir des utilisations anormales du système d’information, de type « Shadow IT » ou des anomalies de configuration. De plus, le Threat Hunting permet, dans la mesure où les logs des solutions EDR sont utilisés, de s’assurer que ceux-ci soient opérationnels et utilisables en cas d’incident.
En conclusion, le Threat Hunting participe activement à l’hygiène de votre système d’information. N’hésitez pas à contacter nos équipes si vous voulez plus de précision, ou si vous souhaitez mettre en place ce type de services.