Cybersécurité

Aider l’intelligence artificielle à détecter les malwares

Date:
Mis à jour le 22/02/2024
Outil de cybersécurité en cours de conception au Centre Inria de l’Université de Rennes, Baguette propose une façon innovante d’appréhender les traces d’exécution laissées par un malware. En construisant un modèle de signatures dynamiques où toutes les informations sont capturées dans un graphe, ce prototype de recherche va faciliter la lecture des événements par les experts, mais aussi rendre possible l’analyse automatique à l’aide d’un modèle d’IA. À la clé : la détection du malware dès qu’il commence à s’exécuter.
ransomware global - baguette - cybersécurité
© Inria / Vincent Raulin

 

Classiquement, pour repérer l’intrusion d’un malware, les antivirus passent le code des fichiers exécutables à la loupe. Dans ces milliers de lignes, ils cherchent des bribes d’instructions caractéristiques des logiciels malveillants. Pour cela, ils doivent maintenir à jour une bibliothèque de "signatures" de tous les malwares courant le vaste monde. Mais l’attaque s’est raffinée. Aujourd’hui, des bots savent produire automatiquement des variants de malwares à la signature encore inconnue. L’analyse statique ne suffit donc plus.

Pour offrir un échelon supplémentaire de sécurité, il faut aussi s’intéresser aux multiples événements qui se produisent sur les machines : les accès aux fichiers, les envois de données sur le réseau… Des plates-formes d’analyse dynamique existent pour collecter toutes ces traces d’exécution sur les systèmes. Mais la masse d’information récupérée demeure peu intelligible.

Difficile de trouver l’aiguille dans la botte de foin. Et c’est là que l’outil Baguette intervient.

Les expériences sont conduites au Laboratoire de haute sécurité (LHS) de Rennes. Les scientifiques lancent tout d’abord un malware sur un ordinateur cobaye, puis récupèrent l’intégralité des traces d’exécution. « Baguette va ensuite prendre ce rapport pour synthétiser à très haut niveau toutes les informations contenues », explique Vincent Raulin qui travaille sur le projet dans le cadre de sa thèse de doctorat au sein de Cidre, une équipe de recherche en cybersécurité (Inria/Université de Rennes/CNRS/CentraleSupélec).

Verbatim

Le but est de faire apparaître, sous forme de graphe, les liens qui peuvent exister entre différentes informations. Car pour débusquer un malware, il est parfois important de pouvoir corréler deux événements. Si un logiciel est en train de lire des données d’une part et qu’au même moment, il envoie des informations sur le réseau, alors le système subit peut-être une attaque. Mais ces liens restent souvent difficiles à repérer car ils concernent des données de nature différente, très hétérogènes, éparses et, de surcroît, présentes en très grande quantité.

Auteur

Vincent Raulin

Poste

Doctorant, équipe CIDRE

Une graphe pour révéler des liens

Randsomware encryption - cybersécurité - malware - intelligence artificielle
© Inria / Vincent Raulin
Zoom sur un comportement spécifique du ransomware :
le chiffrement des fichiers personnels

À l’aide de graphes, Baguette va faciliter la mise en évidence de ces liens révélateurs. Exemple ? « On peut définir un pattern, un motif, pour s’intéresser au chiffrement. Dans le graphe, il suffit d’écrire qu’un sommet de type fichier est lié à un sommet de type données avec deux conditions. La première : qu’il y ait une forte entropie dans les données. Autrement dit, que les suites de caractères soient très variées, donc que ce n’est pas du texte, mais du chiffrement ou de la compression. La seconde : que l’on ne parvienne pas à identifier le type de fichier et donc, qu’il ne s’agit pas d’une archive compressée. Si l’on arrive à repérer ce schéma qui contient simplement deux sommets et quelques conditions dans un graphe d’exécution, alors on arrive à dire que ce fichier a été chiffré. Un ransomware (ou rançongiciel) est donc très probablement à l’œuvre. » Les travaux initiaux explorant cette piste ont donné lieu à une première publication, en 2022 , durant la conférence RESSI consacrée à la cybersécurité.

Vers de l'analyse dynamique en temps réel

Vision globale de signatures d'un virus - malware - cybersécurité - intelligence artificielle

Signatures de malwares

Même si le travail d'apprentissage des signatures dynamiques n'en est qu'au début,  en voici un résultat préliminaire. Il s'agit de quelques signatures dynamiques qui ont pu être extraites de certains malwares.

Vision global du virus - malware - cybersécurité - intelligence artificielle

Vision globale d'un virus

Chacun des graphes générés par le projet Baguette représente entièrement ("global") l'exécution d'un échantillon d'un certain type de malware. Par exemple, ce graphe représente tout ce qui a pu être observé du déroulement de l'exécution d'un certain échantillon de type virus.

Zoom sur des signatures d'un virus - malware - cybersécurité - intelligence artificielle

Exemples de signatures

Voici 3 exemples zoomés de signatures de malware.

 

Le principe fondateur étant posé, les scientifiques ont entrepris la conception d’un modèle de signature dynamiques systématisant ainsi les éventuels liens qui pourraient exister entre de multiples phénomènes d’intérêt. « En termes de comportements, il y a énormément de choses que l’on peut surveiller, précise Alexandre Sanchez, ingénieur de recherche au LHS : les appels systèmes, les événements réseaux, l’utilisation du processeur, la mémoire, la consommation électrique… Les expériences menées dans le laboratoire permettent de confronter le modèle à la réalité terrain pour vérifier dans quelle mesure la présence du malware est ainsi effectivement détectée. »

Les chercheurs abordent maintenant l’étape suivante. « Avec le graphe, on organise les données dans une structure parfaitement définie, une sorte de grammaire stricte. Grâce à ces règles très précises, il devient ensuite possible de construire par-dessus le graphe des modèles d’intelligence artificielle, explique Vincent Raulin. Les patterns étant très simples à définir, un modèle de machine learning pourrait très bien définir ces patterns lui-même dans un certain but. Par exemple, on pourrait lui demander de nous trouver les 10 motifs les plus caractéristiques d’un jeu de données d’une famille de malwares. De cette façon, l’algorithme viendrait apprendre les signatures comportementales de cette famille. En pratique, cela ouvrirait la voie à un antivirus dynamique effectuant de l’analyse en temps réel sur des données massives. Ce qui faciliterait énormément le travail… »

visuel audio bloc par defaut
Titre du lecteur

En savoir plus sur le projet Baguette avec Vincent Raulin

Fichier audio
Audio file