COMPRENDRE COMMENT LE NDR PEUT ÊTRE UN ALLIÉ PUISSANT

09 septembre 2024
Le NDR, Network Detection & Response, est un outil qui permet d’analyser du flux réseau en temps réel et de lever des alertes de sécurité. C’est un élément clé de toute stratégie de cyberdéfense, car toute attaque (ou presque) passe par le réseau. Ainsi, détecter une attaque en amont et permettre de réagir pendant celle-ci font partie des utilités de cet outil et sont fondamentales pour se protéger contre la cybercriminalité.
Sa force réside dans la combinaison de différents modules de détection. Chaque module possède ses forces mais aussi ses angles morts. C’est cette pluralité de méthodes de détection qui donne ses lettres de noblesse à cet outil, qui lui permet de s’élever plusieurs niveaux au-dessus de chaque moteur pris individuellement (comme un Intrusion Detection System ou un Network Traffic Analysis) et d’offrir une couverture de protection maximale. Il permet de détecter des menaces plus complexes, d’apporter du contexte aux différentes alertes, qui sont fiables, et facilite ensuite le threat hunting.
Cependant, comme pour tout outil, son efficacité dépend majoritairement de celui qui l’utilise. C’est pourquoi cet article aborde différents aspects du NDR, des exemples de moteurs de détection qui le composent et de comment faire pour l’employer à son plein potentiel.
I – DÉTECTER PAR DES RÈGLES AVEC LE NDR
a) L’IMPORTANCE DES SIGNATURES
Une des manières de faire de la détection est l’utilisation de règles. Ces règles se basent la plupart du temps sur des signatures, des éléments, à l’instar des indicateurs de compromission, qui sont des marqueurs d’une attaque cyber. Collectés lors d’attaques passées, détecter ces éléments dans son réseau est bien souvent le témoin qu’une attaque est en cours.
Cependant, il n’est pas possible de mettre en détection tous les marqueurs d’attaques existants, déjà parce que cela représente un nombre bien trop important pour tout outil de détection, mais aussi que tous les indicateurs ne sont pas d’intérêt équivalent. En effet, un indicateur n’a de valeur que s’il est probable qu’il refasse surface, et s’il est suffisamment significatif, de sorte que le détecter indique une attaque avec un fort taux de confiance.
Un concept intéressant a été introduit en 2013 par David Bianco, nommé « Pyramid of Pain », ou échelle de la cyber-douleur en français. Cette pyramide hiérarchise les différents types d’indicateurs ou de techniques détectables mais surtout l’impact que cela a sur l’attaquant, à savoir à quel point est-ce difficile pour lui de modifier sa méthode d’attaque afin de ne plus être détecté. En bas de la pyramide on retrouve les hashes de virus, qui sont très facilement changeables pour un attaquant. Cependant, les détecter assure un taux de faux positifs presque nul, et cela permet aussi de détecter une attaque conduite par un acteur moins évolué qui ne ferait que réutiliser un programme malveillant qu’il aurait récupéré quelque part. Il est important de placer en détection un maximum d’indicateurs tout de même, car cela force les attaquants à s’adapter et à modifier leurs outils à chaque attaque. Cette mesure de protection est une des plus rudimentaire et efficace à mettre en place et est un effort nécessaire pour lutter contre la cybercriminalité.
Pour arriver à cela, il faut une bonne connaissance du panorama des menaces cyber, des différents attaquants, logiciels malveillants, techniques d’attaques, etc. Cette connaissance permet d’identifier, de contextualiser et de prioriser les signatures les plus critiques et ainsi de générer les règles de détection associées.
b) LA DÉTECTION PAR PATTERN
En complément, il est possible de faire des règles de détection qui ne se basent pas directement sur des signatures. Par exemple, dans le cas des vulnérabilités, des marqueurs sont visibles et donc détectables, tels que des requêtes comportant certains éléments spécifiques ou bien des requêtes vers des chemins d’accès identifiés comme liés à l’exploitation de la vulnérabilité.
Une des forces du NDR est qu’il a une vue d’ensemble sur le trafic réseau. Ainsi, il est en mesure de réaliser des corrélations, des connexions et des liens entre différentes alertes de sécurité. Mais il peut surtout corréler différents éléments du trafic réseau, qui indépendamment, ne seraient pas considérés comme malveillants, mais mis côte à côte, témoignent d’une attaque. Par exemple, une tentative de connexion SSH échouée est anodine, mais une centaine en peu de temps est le signe d’une attaque par force brute en cours. Avec une analyse approfondie des modes opératoires des attaquants, il est possible de dresser des profils et des empreintes techniques de ces derniers, qui peuvent ensuite servir de base de détection. A titre d’exemple, si un attaquant bien connu a pour habitude d’utiliser des IPs provenant du même système autonome, de télécharger des éléments depuis celles-ci, puis de réaliser un test de connectivité en effectuant un ping vers le DNS de Google et enfin d’utiliser l’api de Telegram, alors chaque brique n’est pas suffisante pour générer une alerte, mais si une telle activité est repérée dans cet ordre, concernant un même poste, alors il est hautement susceptible qu’il soit victime d’une cyberattaque de l’attaquant identifié.
Ainsi, il est fondamental pour un NDR d’avoir un jeu de règles efficaces, pertinentes, en nombre limité, pour assurer une première ligne de défense face aux cybermenaces.
II – COMMENT MIEUX UTILISER SON NETWORK DETECTION & RESPONSE
a) METTRE RÉGULIÈREMENT À JOUR SA SOLUTION AVEC DE NOUVELLES RÈGLES
Avoir des règles est un module essentiel dans un NDR. Cependant, si les règles chargées sur celui-ci sont périmées, ou hors contexte, alors elles peuvent se retrouver être néfastes pour lui. En effet, des règles inutiles polluent les performances du point de vue système, car chacune de ces règles est évaluée pour tout trafic qui traverse le NDR, mais surtout pose un problème pour l’analyste qui le surveille, car il y a un fort risque de générer des faux positifs. Heureusement, avec de bon processus derrière, ces risques sont évités.
Cela est d’enjeu primordial principalement pour les règles qui se basent sur des indicateurs de compromission. Bien qu’un hash ne puisse en théorie pas être à la source de faux positifs, conserver en détection des signatures de fichiers malveillants qui ne sont plus en circulation ni utilisés par des acteurs de la menace s’avère contre-productif en termes de performances. Dans le cas des adresses IP, celles-ci ont une durée de vie limitée. Il est rare qu’un attaquant utilise une même adresse IP sur une longue période, à partir du moment où son activité commence à être détectée. Ainsi, soit le service qui se cache derrière l’adresse va être arrêté, et donc il n’y a plus d’activité à attendre de cette IP, soit l’attaquant va se séparer de l’IP, et celle-ci sera réattribuée à un autre utilisateur, sans que l’on puisse estimer si celui-ci aura une activité légitime ou non. Même dans le cas où cette adresse serait utilisée par un autre attaquant, on aurait perdu toute contextualisation autour de cette adresse, et l’on pourrait même induire en erreur un analyste en le menant sur une fausse piste. De plus, certaines adresses IP sont « multi-host », c’est à dire que cette adresse héberge les services de nombreux utilisateurs, parfois plusieurs milliers.
C’est pour cela qu’il est nécessaire de mettre à jour constamment sa base de règles de détection, afin de retirer les indicateurs qui ont perdu de leur valeur, mais surtout pour ajouter le plus vite possible des règles en rapport avec des attaques ou des activités malveillantes en cours, car ce sont celles-ci qui constituent le risque le plus grand. De même, si des règles servent à détecter des tentatives d’exploitation de vulnérabilités, il peut être judicieux de les retirer une fois qu’un patch de sécurité qui corrige la vulnérabilité est appliqué. On peut toutefois décider de conserver ces règles, s’il n’y a pas déjà trop de règles chargées, afin de surveiller son réseau et bien que la tentative ne pourra pas aboutir, détecter une activité malveillante est toujours intéressant.
b) ADAPTER SES RÈGLES À SON ENVIRONNEMENT
Un autre aspect majeur pour améliorer les performances de son NDR réside dans l’adaptation des règles à son environnement propre. La plupart des règles de détection, dont celles produites par l’équipe Hoshi, se veulent généralistes et sont agnostiques de l’infrastructure. En ayant la connaissance des équipements présents dans l’environnement, des outils technologiques, des utilisations ou comportements nominaux, des différentes zones d’adresses IP, ou même des IPs spécifiques, il est possible d’améliorer drastiquement la performance de détection de l’outil. En effet, certaines activités réseau peuvent être totalement légitimes dans une certaine zone du réseau, mais preuves absolues d’une cyberattaque dans un endroit différent. De même, un comportement d’un attaquant qui utilise certaines fonctionnalités, certains protocoles, etc. une fois traduit en règles de détection, peut s’avérer intéressant s’il ne correspond pas à un comportement déjà en place dans le réseau de manière légitime. Dans ce cas, les règles généreraient des faux positifs, alors que ces mêmes règles peuvent être de précieux alliés dans un tout autre environnement.
C’est pourquoi il faut toujours adapter les règles sélectionnées et les composants des règles à son environnement, et faire ce processus de manière itérative, en se basant sur le nombre d’alertes générées par ces règles. Cela permet que les règles soient les plus affinées possible, et simplifient par la suite le travail d’analyse des alertes, car celles-ci seront spécifiques à l’environnement et donneront plus de détails.
c) DÉCHIFFRER LE TRAFIC POUR AMÉLIORER LE CHAMP DE VUE DÉTECTABLE
Le NDR, via l’ensemble des modules de détection qui le compose, permet de très bien analyser le flux réseau et de remonter des alertes. Toutefois, ce dernier est limité par ce qu’il peut voir. De nos jours, un grand nombre de communications sont chiffrées, et les attaquants l’utilisent à leur avantage. Ils peuvent communiquer à leur serveur de commande et contrôle en HTTPS, rendant l’analyse et la détection de ces flux complexes, ou bien même ils utilisent des services légitimes tels que Telegram ou Google Drive.
Une solution existe pour en partie résoudre ce problème : le déchiffrement SSL. Cela consiste à mettre en place une série de proxies, qui jouent un rôle d’intermédiaire entre l’utilisateur et la ressource à distance. Une connexion chiffrée par SSL sera établie entre l’utilisateur et le proxy, puis entre le proxy et la ressource à distance. Cependant, au niveau du proxy, le trafic pourra être déchiffré et donc vu et analysé par le moteur. Le déchiffrement SSL pose d’autres questions, comme la confidentialité, la complexité de sa mise en place ou encore son coût matériel, mais permet une inspection bien plus conséquente du trafic réseau et de fait une détection fortement améliorée.
III – COMMENT LE NDR PEUT SERVIR D’OUTIL DE DÉTECTION SANS SE BASER SUR DES RÈGLES
a) LES DÉBUTS DE L’ANALYSE COMPORTEMENTALE
Le module de détection basé sur des règles est très performant dans son domaine, mais ne permet pas aisément la détection de nouvelles menaces. C’est pourquoi il doit être accompagné, couplé, à d’autres modules. Le NDR voit tout le trafic réseau et l’analyse, en se basant sur différentes métriques ou méthodes, qui ne sont pas liées à des règles. Cette approche ne cherche pas à détecter des artefacts d’attaques passées, ou d’éléments connus comme malveillants, mais a pour but de repérer des anomalies dans le réseau, un comportement divergent.
Une de ces méthodes d’analyse est le calcul d’entropie. L’entropie désigne une mesure du désordre, ou plus spécifiquement, dans notre cas, du caractère anormal d’une communication ou d’un échange de paquets réseau, au regard des communications jugées comme normales, ou habituelles. Présentée par Yu GU, Andrew MCCALLUM et Don TOWSLEY, cette méthode suit le processus suivant : les paquets observés sont répartis en différentes classes de similitude, de différentes dimensions, selon le nombre de propriétés à étudier (ex : port destination, protocole…). Elle établit sur cette base une distribution de probabilités d’appartenance d’un paquet à chaque classe. Le modèle est ensuite établi via l’estimation de l’entropie maximale, tout d’abord via une sélection des propriétés les plus importantes, et ensuite une pondération de chaque propriété. Une fois le modèle entraîné, il suffit de calculer la différence entre la distribution de répartition des paquets dans les différentes classes avec la distribution de référence obtenue précédemment. Une trop grande différence indique un « désordre » trop important, et donc témoigne d’une anomalie dans le réseau. Cette approche, bien que simpliste, permet déjà de détecter des anomalies dans un trafic, avec un faible besoin en puissance de calcul.
Une seconde méthode d’analyse, présentée par Maciej SZMIT et Anna SZMIT, est l’utilisation de la méthode de Holt-Winters appliquée à la détection d’anomalies. Le modèle Holt- Winters est un modèle adaptatif qui est pertinent dans un environnement qui présente une périodicité, des comportements récurrents, et des tendances. L’objectif est d’identifier des comportements qui seraient différents de ce que le modèle prévoit en se basant sur les cycles précédents. Les auteurs utilisent une double périodicité, la première représentant une journée, et la seconde une semaine. Il est alors possible de détecter des anomalies grâce à l’algorithme de brutlag. Cette méthode a pour avantage de considérer la récurrence, l’habitude et la temporalité comme éléments principaux de détection. Ainsi, un comportement qui peut être légitime un lundi car il est issu d’une tâche hebdomadaire, pourra être considéré comme étant une anomalie s’il survient un mercredi, car il n’apparaît pas au bon moment du cycle.
b) L’AVÈNEMENT DE L’INTELLIGENCE ARTIFICIELLE
L’analyse comportementale a pu prendre un nouvel essor avec les progrès fulgurants des intelligences artificielles. Le NDR est un outil qui peut également embarquer une IA pour considérablement améliorer la qualité de détection en ajoutant à nouveau une couche complémentaire.
Différents concepts de plusieurs domaines sont utilisables, comme par exemple provenant du machine learning. Un bon nombre d’algorithmes ou de modèles ont été essayés, évalués et décrits dans la littérature scientifique.
Une première approche est l’utilisation d’un algorithme génétique. Ce type d’algorithme est une approche itérative, qui considère plusieurs propriétés« d’individus » au sein d’une « population ». A chaque étape, un ensemble d’individus est retenu, pour générer l’ensemble d’éléments suivant, et naturellement, les individus avec les meilleures propriétés vont survivre et devenir de plus en plus majoritaires. Dans le cadre de la détection d’anomalies, les propriétés sont les éléments de connexion (adresses IP, nombre d’octets, protocole, …). Le but est de réaliser une phase d’entraînement afin de trouver un modèle qui converge pour ne détecter que les connexions anormales. Chaque paquet d’entraînement est analysé, et s’il s’agit d’un paquet déviant, alors le set de propriétés de l’individu va recevoir un bonus dans le système de scoring, s’il s’agit d’un paquet normal, il reçoit une pénalité. La population va ensuite évoluer pour trouver un ensemble de conditions qui va permette la détection des anomalies dans l’environnement de production une fois l’entraînement terminé. Un des désavantage de cette solution est qu’elle est demande beaucoup de puissance de calcul.
Une deuxième approche reprend le principe de classification naïve bayésienne. Le trafic est analysé, et selon les événements passés, détermine une probabilité qu’un événement arrive dans le futur. Malgré l’apparente simplicité de cette méthode, plusieurs recherches ont montré que la classification naïve bayésienne peut être plus précise et plus rapide que d’autres méthodes sophistiquées, d’autant plus que la dimension des données en entrée augmente.
Enfin, une troisième méthode élémentaire de détection d’anomalie par IA dans un NDR est l’utilisation d’arbres de décision. Cette méthode bien connue d’apprentissage supervisé a pour but d’établir une série de tests sur différents attributs afin de déterminer si un paquet est légitime ou non. Elle requiert d’abord une phase d’entraînement dans laquelle le modèle va déterminer les critères de classification à partir d’un jeu de données connu. Une fois cette phase terminée, le modèle peut alors servir à la détection. Un des avantages des arbres de décision est qu’il est plus facile pour le modèle d’expliquer ses résultats et d’indiquer à partir de quels critères il considère qu’un élément est légitime ou non.
c) L’UTILISATION DE L’IA DANS JIZÔ NDR : DEEP LEARNING
L’IA propriétaire de Jizô se base sur des concepts fondamentalement différents. Aucun apprentissage n’est supervisé. Le modèle n’est pas entraîné sur des bases de logiciels malveillants ou d’attaques connues. Son but est de détecter ce qui n’est pas normal ou habituel. L’avantage majeur est qu’il permet de détecter tout type d’attaques, connues comme inconnues, via l’analyse du trafic réseau. Cela est complété par un second aspect, qui est une analyse comportementale non pas sur le réseau au global, mais qui est réalisée pour chaque acteur présent dans le réseau.
Ce profilage est un élément important qui permet de savoir si une activité est habituelle ou non pour chaque individu.
Enfin, l’IA générative embarquée dans Jizô, apporte une aide non pas directement pour la détection pure, mais accompagne l’analyste à mieux comprendre les informations techniques liées aux détections. Elle fournit également des pistes et recommandations sur les possibles marches à suivre lorsque qu'une alerte indique une situation anormale. En jouant à la fois sur le terrain technique et humain, l'IA embarquée dans Jizô offre une nouvelle dimension à la détection via le NDR.
L'adversarial learning
Un des dangers lié à l’utilisation de l’intelligence artificielle dans la détection de menaces est l’adversarial learning. Cette méthode, utilisée par les attaquants, vise à injecter petit à petit des modifications infinitésimales dans le trafic habituel, afin que le modèle apprenne à partir de ces modifications et n’identifie plus comme anormal ce type de communications dans le futur. Bien qu’intéressante, cette approche des attaquants ne pourrait pas perturber Jizô, car pour que cela ait une réelle influence sur le modèle et sa capacité de détection, il faudrait un volume de trafic très important. Or ce trafic provenant de l’adversaire va très vite être détecté et donc la tentative de manipulation de notre IA révélée.
La détection comportementale est un prérequis fondamental pour venir compléter la détection par règles et le reste des modules, principalement pour la détection de menaces inconnues.
POUR UNE DÉTECTION OPTIMALE, LE NDR DOIT ÊTRE COMBINÉ AUX AUTRES OUTILS DE SÉCURITÉ
Le NDR est un outil complexe, qui offre de nombreuses possibilités pour la détection d’intrusions. Pour une détection optimale, il faut combiner ses forces et utiliser différentes méthodes de détection pour couvrir les angles morts des autres méthodes ou alors pour renforcer leurs décisions. C’est cette coopération, ce travail de groupe entre les modules qui le rend indispensable. Toutefois, l’utilité de cet outil dépend aussi de l’environnement dans lequel il se trouve, de son adaptation à celui-ci, de comment il est supervisé et de quelles actions sont prises pour chaque alerte de sécurité. Le NDR est un outil indispensable à toute architecture de sécurité et doit s’interfacer avec les autres outils (EDR, SIEM, etc.) pour offrir une capacité de détection maximale.
Jizô, la plateforme d’observabilité qualifiée par l’ANSSI, a l’avantage de combiner de manière innovante toutes ces formes de détection, pour offrir la meilleure protection possible. Grâce à ses différents moteurs embarqués, c’est un outil indispensable pour identifier, anticiper et bloquer les cybermenaces. On y retrouve notamment la détection par signatures, soutenue par une équipe de cyber threat intelligence dédiée, ou encore la détection par heuristiques. L’intelligence artificielle est également au cœur de la solution, avec des algorithmes très avancés, issus du deep learning en apprentissage continu non supervisé. De plus, Jizô prend en charge à la fois le monde de l’IT, ainsi que le monde de l’OT, avec une connexion innovante entre les deux mondes. Le vrai plus de Jizô, c’est que sa valeur va bien au-delà de la somme des valeurs indépendantes de chaque moteur de détection. C’est la coopération entre tous ceux-là qui permet une puissance de détection inégalée.
Enfin, Jizô possède beaucoup d’interfaces d’interconnexion avec d’autres équipements de sécurité, tels que des Security Orchestration, Automation and Response (SOAR) ou des Security information and event management (SIEM), lui permettant de parfaitement s’intégrer dans n’importe quelle architecture de cyberdéfense.