Mémoire de maîtrise (2022)
Document en libre accès dans PolyPublie |
|
Libre accès au plein texte de ce document Conditions d'utilisation: Tous droits réservés Télécharger (1MB) |
Résumé
Lorsqu’un système informatique subit une cyberattaque, il peut être important pour l’organisation attaquée d’avoir des informations sur l’attaquant et sur l’attaque en cours. En effet, en ayant une bonne connaissance du cyberattaquant et de la cyberattaque que ce dernier souhaite réaliser, il est possible d’effectuer une analyse de risques pertinente et de construire une réaction défensive adaptée à l’attaque en cours. Cette classification se doit d’être automatique, en raison du nombre important de cybermenaces auquel un système informatique peut être confronté ; il serait déraisonnable d’essayer de classifier manuellement des centaines, des milliers et parfois même des millions de potentielles menaces qu’un système informatique peut subir quotidiennement. Il s’agit donc de réaliser une classification automatique de cyberattaquants et de cyberattaque. Le sujet de nos travaux présentés dans ce mémoire porte plus précisément sur la classification de cyberattaques. La classification de cyberattaques proposée sera la base d’un projet plus ample, qui réutilisera ce travail afin de construire une classification de cyberattaquants. Pour réaliser cette classification, il est compliqué de trouver des données représentatives de l’ensemble de la population cybercriminelle, car les entreprises ne divulguent pas publiquement les données des cybermenaces qu’elles subissent quotidiennement. Cependant, nous avons eu la chance de réaliser nos travaux de recherche en coopération avec l’entreprise Thales Digital Solutions, qui a mis à disposition une base de données non labellisées très pertinente pour notre objectif. Ce travail de recherche emploie alors des techniques d’apprentissage non supervisées afin de construire un modèle utilisable sur des données non labellisées. L’objectif est alors d’isoler des ensembles de données représentant différents types d’attaques dans des partitions séparées. Idéalement, on cherche donc à isoler un type d’attaque dans une partition. Ainsi, lorsqu’on a accès à de nouvelles données en temps réel, on peut leur attribuer une partition, ce qui revient à les classifier. Ceci facilite alors le travail des analystes qui ont pour but d’analyser des quantités importantes de trafic malveillant. Le modèle qui a été développé dans nos travaux de recherche a la particularité de ne s’appliquer qu’à un protocole à la fois, ce qui permet d’accéder au contenu des paquets (inspection approfondie), plutôt que de se baser uniquement sur les métadonnées de ces paquets. Dans nos travaux, le modèle a été appliqué aux protocoles Hypertext Transfer Protocol (HTTP) et Secure SHell (SSH). Afin de valider ce modèle, il s’agit de l’appliquer dans un premier temps sur des jeux de données labellisées publics. Il sera alors possible d’utiliser des métriques pour évaluer la précision du modèle, pour l’appliquer par la suite aux données non supervisées fournies par notre partenaire industriel. Ainsi, trois jeux de données labellisées différents ont été utilisés pour valider notre modèle. La validation s’est faite uniquement sur des attaques web. Avec un des jeux de données les plus utilisés dans la littérature, notre modèle a réussi à parfaitement classifier chacune des attaques. Bien que les scores permettant d’évaluer la performance de notre modèle soient moins élevés pour les deux autres jeux de données, les résultats obtenus sont tout de même très pertinents une fois interprétés. Le travail sur les données de notre partenaire industriel a révélé qu’une très grande majorité des données sont relatives à du trafic automatisé. Ce type de trafic ne comporte pas réellement de cyberattaques complexes. Néanmoins, notre classification apporte une certaine compréhension de ces données. Cette classification peut ainsi servir de base pour d’autres travaux. Il est par exemple possible d’utiliser des techniques de corrélation sur notre classification afin de détecter des scénarios de cyberattaques complexes. On pourrait aussi utiliser cette classification afin d’augmenter la précision de certaines classifications de cyberattaquants existantes. Mais afin d’utiliser notre modèle en temps réel, il faudrait l’optimiser pour améliorer sa vitesse d’exécution.
Abstract
Computer networks, supporting the economic and political activities of society, are under threat from malicious actors conducting a wide range of cyberattacks. At the forefront of defending systems from threats, it is necessary to detect malicious events and differentiate anomalous activities from legitimate network traffic. Traditionally, this process is performed using hard-coded detection rules to identify violations to genuine traffic and employs the use of security analysts to manually triage suspicious events. These defensive activities can establish a baseline defensive posture for organizations, however, they come with limitations. The scarcity of security analysts is widely spread across organizations and their time is increasingly being stretched thin as the quantity of attacks they are faced are constantly mounting. Recent advancements in Machine Learning (ML) methods offer promising approaches for automating attack classification tasks and streamlining the work of security personnel. Supervised learning methods are a paradigm of ML where a model learns to classify samples by first training on labelled data to establish decision boundaries. However, these methods are dependent on a massive amount of labelled data to train upon, a constraint that is generally not readily available in cybersecurity domains, and they are limited to classifying events that they have been trained upon, restricting their ability to generalize to unseen events. In response to the shortcomings of supervised learning methods, we propose to advance the study of unsupervised learning methods for attack classification by presenting a novel unsupervised learning approach. Under the unsupervised learning paradigm, there is the opportunity to learn patterns in unlabelled data and ultimately classify attacks that have never been encountered during the training of an ML model. Furthermore, we propose a new approach by building a classification model specific to the Hypertext Transfer Protocol (HTTP) and Secure SHell (SSH). Rather than limiting our work to numerical networking attributes, which are common to all the protocols, we focus on more specific attributes by choosing to work protocol by protocol. Although, in this work, we test our method with the HTTP and SSH protocols, the approach has the potential to be extended to any communication protocol. Our model uses a new approach combining a pre-processing method, a recent dimension reduction algorithm, and an efficient clustering technique to classify malicious data. While the final purpose of this algorithm is to be applied on real unlabelled traffic data, we evaluate the performances of our model by using labelled data, in order to validate our model. We test our model on 3 different labelled datasets, and we achieve to perfectly classify a very popular dataset in cyberattack classification. Finally, we have the chance to access to data provided by Thales Digital Solutions. We apply our model in these data, which were not labelled. We propose a detailed analysis of each cluster, for both HTTP and SSH data. As a future work, we could apply our model on several protocols and combine the results. Further, we could use correlation algorithms in order to recognize each step of a multi-step attack in our classified data. Thus, these algorithms could describe a multi-step attack as a sequence of clusters computed with our model. An optimization work has to be done to make real time classification possible with our model.
Département: | Département de génie informatique et génie logiciel |
---|---|
Programme: | Génie informatique |
Directeurs ou directrices: | Frédéric Cuppens et Nora Boulahia Cuppens |
URL de PolyPublie: | https://publications.polymtl.ca/10711/ |
Université/École: | Polytechnique Montréal |
Date du dépôt: | 24 mars 2023 11:39 |
Dernière modification: | 25 sept. 2024 21:52 |
Citer en APA 7: | Aurora, V. (2022). Classification non supervisée de cyberattaques par inspection de paquets [Mémoire de maîtrise, Polytechnique Montréal]. PolyPublie. https://publications.polymtl.ca/10711/ |
---|---|
Statistiques
Total des téléchargements à partir de PolyPublie
Téléchargements par année
Provenance des téléchargements