Jean-Marc Muselli, Directeur des Services Europe du Sud chez Exclusive Networks
IA et Machine Learning
Dans le langage courant, l’intelligence artificielle est devenue un synonyme inadéquat du Machine Learning. L’intelligence artificielle est un domaine de recherche très vaste qui vise, à travers des programmes plus ou moins complexes, à reproduire les capacités d’un être humain (compréhension du langage oral ou écrit, reconnaissance d’objets, déplacement dans l’espace, etc.).
Pour faire simple, l’IA est un système capable d’apprendre et de comprendre des choses de façon plus ou moins autonome, là où un logiciel classique est programmé pour effectuer des actions très précises en réponse à des événements définis à la lettre (dans le monde de la cybersécurité, via des règles – typiquement ce que l’on trouve dans un pare-feu par exemple – ou encore des signatures, qui correspondent en quelque sorte aux empreintes digitales des menaces), et nécessite un certain nombre d’actions humaines au quotidien (la phase de configuration) pour conserver sa pertinence.
Face à l’inconnu, une solution traditionnelle se retrouve démunie. Ainsi, dans le cadre d’une attaque d’un nouveau genre (« zero-day »), les solutions de sécurité traditionnelle ne savent, bien souvent, pas réagir. Selon les entreprises, même lorsque de telles anomalies finissent par être repérées via un travail de recherche complémentaire, les actions prises en réaction sont alors partiellement ou complétement manuelles.
Le Machine Learning, est quant à lui, la facette de l’IA la plus populaire à ce jour. Il se focalise sur les capacités d’auto-apprentissage de la machine. Dans le domaine de la cybersécurité, cette approche permet, à l’inverse des solutions traditionnelles, non seulement de détecter plus efficacement les attaques, que ces dernières soient connues ou inconnues, mais également de mieux appréhender les nouvelles, le tout à une vitesse proche du temps réel… une révolution dans ce secteur : rappelons qu’en moyenne, une entreprise de la zone EMEA met environ 180 jours à comprendre qu’elle a été attaquée[1]. Elle peut également être couplée avec des capacités de réaction.
On pourrait distinguer deux types principaux de Machine Learning :
Le mode supervisé
Le Machine Learning supervisé est une IA « nourrie » avec des données « étiquetées » dans le but d’apprendre à détecter ses cibles. Si elle est conçue pour détecter des animaux par exemple, on pourrait imaginer lui fournir des téraoctets de photos et de vidéos des animaux en question, enrichies d’informations permettant à l’IA de comprendre, dans chaque fichier, où sont ces animaux et leurs noms respectifs. Ce type de Machine Learning peut parfois voir son comportement modulé par les administrateurs, via configuration. Il est utilisé lorsque l’on sait ce que l’on souhaite détecter. Là où des mécanismes classiques ne vont identifier en général que ce qui est déjà connu précisément (par exemple une girafe bien particulière sur un certain type de photographie), ici l’IA est entraînée à déceler les éléments ciblés dans toutes leurs spécificités (pour en revenir à l’exemple animalier : couleur, taille, formes…) grâce au large volume de données enrichies décrites précédemment et mis à disposition de la solution par les développeurs. L’administrateur se retrouve donc avec une solution capable de détecter ce qu’elle a appris, sous toutes ses formes.
Bien évidemment, plus le nombre de fichiers « d’apprentissage » soumis est important, plus la qualité des prédictions réalisées par l’IA sera grande. Aujourd’hui, les grandes évolutions en termes de puissance de calcul permettent de traiter des quantités astronomiques d’informations (« Big Data »), ingérables pour un être humain.
Dans le monde de la cybersécurité, ce mode de Machine Learning peut être employé pour détecter des comportements suspicieux ou encore des malwares. Plus elle engrange de données enrichies, plus sa connaissance des sujets qu’elle doit détecter va s’aiguiser, la rendant de fait de plus en plus autonome et fiable. Les acteurs majeurs de ce secteur l’ont bien compris, et ceux qui disposent des bases de connaissances les plus larges ont souvent une longueur d’avance.
Le mode non supervisé
À l’inverse, le mode non supervisé du Machine Learning est utilisé dans les cas où l’on ne connaît pas l’objet précis de recherche. Un modèle parfait pour déceler des anomalies dans l’environnement observé, sans en connaître la teneur. Le but est ici de construire un modèle abstrait de ce qui doit être analysé et surveillé grâce à des données réelles brutes, en classifiant les informations récoltées à partir de leurs similitudes et en identifiant tous les éléments hors cadre. Reprenons notre exemple de détection d’animaux : au sein d’un panorama contenant deux personnes en Jeep au milieu de dizaines de girafes et d’éléphants, on pourrait regrouper les animaux identiques par groupe se découpant dans l’espace, et une anomalie pourrait être le groupe d’humains.
Dans un contexte de mise en œuvre de moyens de protection contre les cybermenaces, la machine va développer une image abstraite de l’écosystème à défendre (activité réseau, activité des machines des utilisateurs…) en observant son comportement au quotidien : dès lors, toute sortie de route, qu’elle ait déjà été remarquée, ou qu’elle soit complètement inédite, correspond à une anomalie qui est instantanément enregistrée et étudiée. Elle pourrait par exemple vérifier les deux adresses IP à l’origine de ces flux, remonter jusqu’à un serveur dans un pays étranger en train d’exfiltrer des gigaoctets de données et comprendre qu’il s’agit d’une cyberattaque.
Ces éléments peuvent ensuite être utilisés comme base pour passer à une phase de mitigation (blocage de l’adresse IP de l’attaquant, isolation du serveur ciblé…), plus ou moins automatisée selon la robustesse et la technicité de l’architecture de sécurité globale déployée.
Aujourd’hui, certaines solutions de cybersécurité cumulent ces deux modes de Machine Learning. Enfin, le Deep Learning, est une autre facette du Machine Learning. Elle passe par la création d’une IA capable de décomposer l’information en une multitude de couches hiérarchiques (aussi appelées réseau de neurones). Ces solutions sont celles qui se rapprochent le plus d’un cerveau humain. Bonne nouvelle : on commence à pouvoir observer leur utilisation dans l’univers de la cybersécurité. Mauvaise nouvelle : en parallèle, l’IA commence à être utilisée par les hackers[2].
[1]Rapport Mandiant M-Trends 2019 (FireEye).
[2]Voir principe du « HiveNet ».
Dans le langage courant, l’intelligence artificielle est devenue un synonyme inadéquat du Machine Learning. L’intelligence artificielle est un domaine de recherche très vaste qui vise, à travers des programmes plus ou moins complexes, à reproduire les capacités d’un être humain (compréhension du langage oral ou écrit, reconnaissance d’objets, déplacement dans l’espace, etc.).
Pour faire simple, l’IA est un système capable d’apprendre et de comprendre des choses de façon plus ou moins autonome, là où un logiciel classique est programmé pour effectuer des actions très précises en réponse à des événements définis à la lettre (dans le monde de la cybersécurité, via des règles – typiquement ce que l’on trouve dans un pare-feu par exemple – ou encore des signatures, qui correspondent en quelque sorte aux empreintes digitales des menaces), et nécessite un certain nombre d’actions humaines au quotidien (la phase de configuration) pour conserver sa pertinence.
Face à l’inconnu, une solution traditionnelle se retrouve démunie. Ainsi, dans le cadre d’une attaque d’un nouveau genre (« zero-day »), les solutions de sécurité traditionnelle ne savent, bien souvent, pas réagir. Selon les entreprises, même lorsque de telles anomalies finissent par être repérées via un travail de recherche complémentaire, les actions prises en réaction sont alors partiellement ou complétement manuelles.
Le Machine Learning, est quant à lui, la facette de l’IA la plus populaire à ce jour. Il se focalise sur les capacités d’auto-apprentissage de la machine. Dans le domaine de la cybersécurité, cette approche permet, à l’inverse des solutions traditionnelles, non seulement de détecter plus efficacement les attaques, que ces dernières soient connues ou inconnues, mais également de mieux appréhender les nouvelles, le tout à une vitesse proche du temps réel… une révolution dans ce secteur : rappelons qu’en moyenne, une entreprise de la zone EMEA met environ 180 jours à comprendre qu’elle a été attaquée[1]. Elle peut également être couplée avec des capacités de réaction.
On pourrait distinguer deux types principaux de Machine Learning :
Le mode supervisé
Le Machine Learning supervisé est une IA « nourrie » avec des données « étiquetées » dans le but d’apprendre à détecter ses cibles. Si elle est conçue pour détecter des animaux par exemple, on pourrait imaginer lui fournir des téraoctets de photos et de vidéos des animaux en question, enrichies d’informations permettant à l’IA de comprendre, dans chaque fichier, où sont ces animaux et leurs noms respectifs. Ce type de Machine Learning peut parfois voir son comportement modulé par les administrateurs, via configuration. Il est utilisé lorsque l’on sait ce que l’on souhaite détecter. Là où des mécanismes classiques ne vont identifier en général que ce qui est déjà connu précisément (par exemple une girafe bien particulière sur un certain type de photographie), ici l’IA est entraînée à déceler les éléments ciblés dans toutes leurs spécificités (pour en revenir à l’exemple animalier : couleur, taille, formes…) grâce au large volume de données enrichies décrites précédemment et mis à disposition de la solution par les développeurs. L’administrateur se retrouve donc avec une solution capable de détecter ce qu’elle a appris, sous toutes ses formes.
Bien évidemment, plus le nombre de fichiers « d’apprentissage » soumis est important, plus la qualité des prédictions réalisées par l’IA sera grande. Aujourd’hui, les grandes évolutions en termes de puissance de calcul permettent de traiter des quantités astronomiques d’informations (« Big Data »), ingérables pour un être humain.
Dans le monde de la cybersécurité, ce mode de Machine Learning peut être employé pour détecter des comportements suspicieux ou encore des malwares. Plus elle engrange de données enrichies, plus sa connaissance des sujets qu’elle doit détecter va s’aiguiser, la rendant de fait de plus en plus autonome et fiable. Les acteurs majeurs de ce secteur l’ont bien compris, et ceux qui disposent des bases de connaissances les plus larges ont souvent une longueur d’avance.
Le mode non supervisé
À l’inverse, le mode non supervisé du Machine Learning est utilisé dans les cas où l’on ne connaît pas l’objet précis de recherche. Un modèle parfait pour déceler des anomalies dans l’environnement observé, sans en connaître la teneur. Le but est ici de construire un modèle abstrait de ce qui doit être analysé et surveillé grâce à des données réelles brutes, en classifiant les informations récoltées à partir de leurs similitudes et en identifiant tous les éléments hors cadre. Reprenons notre exemple de détection d’animaux : au sein d’un panorama contenant deux personnes en Jeep au milieu de dizaines de girafes et d’éléphants, on pourrait regrouper les animaux identiques par groupe se découpant dans l’espace, et une anomalie pourrait être le groupe d’humains.
Dans un contexte de mise en œuvre de moyens de protection contre les cybermenaces, la machine va développer une image abstraite de l’écosystème à défendre (activité réseau, activité des machines des utilisateurs…) en observant son comportement au quotidien : dès lors, toute sortie de route, qu’elle ait déjà été remarquée, ou qu’elle soit complètement inédite, correspond à une anomalie qui est instantanément enregistrée et étudiée. Elle pourrait par exemple vérifier les deux adresses IP à l’origine de ces flux, remonter jusqu’à un serveur dans un pays étranger en train d’exfiltrer des gigaoctets de données et comprendre qu’il s’agit d’une cyberattaque.
Ces éléments peuvent ensuite être utilisés comme base pour passer à une phase de mitigation (blocage de l’adresse IP de l’attaquant, isolation du serveur ciblé…), plus ou moins automatisée selon la robustesse et la technicité de l’architecture de sécurité globale déployée.
Aujourd’hui, certaines solutions de cybersécurité cumulent ces deux modes de Machine Learning. Enfin, le Deep Learning, est une autre facette du Machine Learning. Elle passe par la création d’une IA capable de décomposer l’information en une multitude de couches hiérarchiques (aussi appelées réseau de neurones). Ces solutions sont celles qui se rapprochent le plus d’un cerveau humain. Bonne nouvelle : on commence à pouvoir observer leur utilisation dans l’univers de la cybersécurité. Mauvaise nouvelle : en parallèle, l’IA commence à être utilisée par les hackers[2].
[1]Rapport Mandiant M-Trends 2019 (FireEye).
[2]Voir principe du « HiveNet ».