Orthrus : Une architecture d'apprentissage bimodal pour la classification de logiciels malveillants
La détection et la classification du malware constituent un problème complexe et un domaine de recherche actif. Les méthodes traditionnelles d’apprentissage automatique dépendent presque entièrement de la capacité à extraire un ensemble de caractéristiques discriminantes permettant de caractériser le malware. Toutefois, ce processus d’ingénierie de caractéristiques est extrêmement chronophage. À l’inverse, les méthodes d’apprentissage profond remplacent l’ingénierie manuelle des caractéristiques par un système capable d’effectuer simultanément l’extraction de caractéristiques et la classification à partir de données brutes. Malgré cela, un inconvénient majeur de ces approches réside dans leur incapacité à intégrer plusieurs sources d’information disparates lors de la classification, ce qui les pénalise par rapport aux méthodes multimodales. Dans ce travail, nous proposons Orthrus, une nouvelle approche bimodale fondée sur l’apprentissage profond pour catégoriser les malwares en familles. Orthrus combine deux modalités de données : (1) la séquence d’octets représentant le contenu binaire du malware, et (2) les instructions en langage assembleur extraites à partir du code source en langage assembleur du malware, et réalise un apprentissage automatique des caractéristiques ainsi qu’une classification grâce à un réseau de neurones convolutif. L’idée consiste à tirer parti de différents types de caractéristiques afin de mieux refléter les caractéristiques du malware. Les expérimentations menées sur le jeu de données Microsoft Malware Classification Challenge montrent que notre approche proposée atteint des performances de classification supérieures à celles des méthodes d’apprentissage profond existantes dans la littérature ainsi qu’aux méthodes basées sur les n-grammes.