ITrust explore depuis plusieurs années le potentiel de l’IA pour la Cyber Sécurité. En s’appuyant sur le Machine Learning et la corrélation intelligente, des outils comme Reveelium permettent, par exemple de décupler l’analyse de logs. Dans le cadre de cette démarche R&D, Thomas Anglade, notre Lead Data Scientist, présente ici ses travaux.
Cet article présente des méthodes d’analyse de données et de machine learning permettant d’effectuer de la modélisation comportementale sur des données firewall afin de détecter des comportements suspicieux associés à ces données.
Ces dernières années, le nombre et la variété des cyber-attaques a fortement augmenté. On recense aujourd’hui un panorama important de cybermenaces (Denial of Service, distributed Denial of Service, phishing, Command & Control, botnets, malwares, ransomwares, etc.). Au vu de la volumétrie importante de données générées par les équipements réseaux des entreprises (proxy, firewall, serveurs, …), il paraît indispensable de compléter l’expertise humaine par des algorithmes d’intelligence artificielle, pour mettre au point des systèmes de détection efficaces adaptés aux menaces encourues.
Cet article présente les étapes d’implémentation d’une méthode d’analyse comportementale de type UEBA(1) pour détecter des attaques avancées dans des données Firewall.
Données utilisées
La modélisation se base sur des logs provenant d’un Firewall enregistrant les échanges entre les machines au sein d’un réseau pendant une période de 2 semaines, pour un total de 14 Go. Les données contiennent l’intégralité des messages échangés entre les IP du réseau, avec toutes les informations associées (IP source, IP destination, port utilisé, volume de données échangé).
![logs firewall](https://www.itrust.fr/wp-content/uploads/2020/09/1.png)
Illustration : pour chaque ligne de donnée, on dispose de l’heure du message, de l’IP source, l’IP destination, le port de communication, l’action du firewall, le nombre de bytes envoyés et reçus
On recense environ 2 Millions de lignes de logs par jour, ce qui justifie le recours à des méthodes d’intelligence artificielle pour traiter une telle volumétrie.
Méthode de Modélisation
On peut représenter les données de manière mathématique sous la forme d’un graphe (IP-IP communication graph). Chaque adresse IP constitue un point du graphe. Dès qu’un message a été échangé entre 2 adresses IPs, une connexion entre les deux points est effectuée dans le graphe.
![log firewall 2](https://www.itrust.fr/wp-content/uploads/2020/09/2.png)
Illustration : représentation schématique de logs Firewall sous la forme d’un graphe contenant 3 IPs et 5 messages. En rouge, les messages sur le port 443, en vert les messages sur le port 53 et en bleu les messages sur le port 80.
A partir de cette modélisation, il est possible de répondre aux questions suivantes :
– Quelles sont les adresses IPs les plus importantes et les plus actives dans les logs ?
– Quelles sont les différentes phases d’activité du graphe de communication dans le temps ?
– Quels types de messages sont envoyés ? Ces types de messages dépendent-ils des périodes ? (jour / nuit / week-end, etc.)
En réunissant toutes ces informations, on arrive à dresser de manière algorithmique un « portrait-robot » de l’activité du réseau et à définir les périodes pendant lesquelles le comportement observé dévie trop de la normale. Ces périodes anormales donnent lieu à une levée d’anomalies, transmise aux équipes d’investigations du « Security Operational Center » qui confirment ou infirment la menace. La performance de l’algorithme peut être évaluée selon plusieurs critères, mais deux seront observés de manière prioritaire :
– le pourcentage d’attaques détectées (vrais positifs)
– le pourcentage de fausses alertes (faux positifs).
Un système optimal devra détecter un maximum d’attaques tout en ayant un taux de faux positifs relativement limité.
Analyse comportementale du réseau :
En observant l’évolution du graphe dans le temps, il est possible de comprendre de manière précise le comportement du réseau informatique. Par exemple, l’analyse du nombre de noeuds du graphe dans le temps donne les résultats suivants :
![log firewall 3](https://www.itrust.fr/wp-content/uploads/2020/09/3.png)
Illustration :Nombre de noeuds dans le graphe de données Firewall entre le 2 mai et le 9 mai.
Dans cette représentation, on voit clairement les rythmes d’activité du réseau :
– un volume très faible le Week-End
– une activité soutenue entre 9h et 18h
– une baisse correspondant à la pause déjeuner.
Il est possible de déterminer les anomalies, comme par exemple le pic d’activité observée autour de 23h pendant le Week-End du 4 et 5 mai.
Résultats obtenus :
A l’aide d’algorithmes d’intelligence artificielle, il est possible de mettre en place un système permettant d’automatiser ces tâches et de détecter différents types de cyber-attaques se focalisant sur le firewall, notamment le « Command & Control » qui consiste à prendre le contrôle d’un ensemble d’adresses IPs pour exfiltrer un gros volume d’informations du réseau en découpant les fichiers en morceaux qui seront exfiltrés de manière individuelle par chacune des IPs. Cet algorithme a été détaillé dans l’article scientifique présenté par les équipes d’iTrust au cours de la « European Cyber Week 2019 » de Rennes le 20 Novembre 2019 : https://www.cesar-conference.org/wp-content/uploads/2019/09/resume_soum10.pdf
1 Analyse comportementale des entités et des utilisateurs du réseau (voir : https://digitalguardian.com/blog/what-user-and-entity-behavior-analytics-definition-ueba-benefits-how-it-works-and-more)
T.A., Lead Data Scientist
Copyright ITRUST©