« Apprentissage automatique appliqué aux systèmes de détection d'intrusion réseau » : différence entre les versions

Un article de Wikipédia, l'encyclopédie libre.
Contenu supprimé Contenu ajouté
Corentin-b (discuter | contributions)
AymericDu (discuter | contributions)
Statistique - Rédaction
Ligne 28 : Ligne 28 :


=== Statistique ===
=== Statistique ===
En statistique, on définit une anomalie comme une observation qui est soupçonnée d'être partiellement ou totalement non pertinente.<ref>{{Article|prénom1=F. J.|nom1=Anscombe|titre=Rejection of Outliers|périodique=Technometrics|volume=2|numéro=2|date=1960-05-01|issn=0040-1706|doi=10.2307/1266540|lire en ligne=http://www.tandfonline.com/doi/abs/10.1080/00401706.1960.10489888|consulté le=2018-01-07|pages=123–146}}</ref> Pour la détection de ces anomalies, il existe deux techniques :
Statistically speaking, an anomaly is an observation which is suspected of being partially or wholly irrelevant because it is not generated by the stochastic model assumed. (Rejection of Outliers - JSTOR)
* Les techniques paramétriques : elles supposent la connaissance de la distributions des données et estiment les paramètres à partir de celle-ci.<ref>{{Article|langue=en|prénom1=Eleazar|nom1=Eskin|titre=Anomaly Detection over Noisy Data Using Learned Probability Distributions|date=2000|doi=10.7916/d8c53skf|lire en ligne=https://academiccommons.columbia.edu/catalog/ac:125813|consulté le=2018-01-07}}</ref>
* Les techniques non-paramétriques : elles ne supposent pas la connaissance de la distribution des données.<ref>{{Article|langue=en|prénom1=M J|nom1=Desforges|prénom2=P J|nom2=Jacob|prénom3=J E|nom3=Cooper|titre=Applications of probability density estimation to the detection of abnormal conditions in engineering|périodique=Proceedings of the Institution of Mechanical Engineers, Part C: Journal of Mechanical Engineering Science|volume=212|numéro=8|date=2016-08-10|doi=10.1243/0954406981521448|lire en ligne=http://journals.sagepub.com/doi/10.1243/0954406981521448|consulté le=2018-01-07|pages=687–703}}</ref>
En détectant ces anomalies, les méthodes statistiques appliquent des tests sur les données d'un modèle statistique pour déterminer si un nouveau cas (non observé) existe.<ref name=":1">{{Article|prénom1=T. T. T.|nom1=Nguyen|prénom2=G.|nom2=Armitage|titre=A survey of techniques for internet traffic classification using machine learning|périodique=IEEE Communications Surveys Tutorials|volume=10|numéro=4|date=Fourth 2008|issn=1553-877X|doi=10.1109/surv.2008.080406|lire en ligne=http://ieeexplore.ieee.org/document/4738466/|consulté le=2018-01-07|pages=56–76}}</ref> Les méthodes les plus récentes s'intéressent aux caractéristiques statistiques du trafic dans le but d'identifier l'application. Ces méthodes partent du principe que le trafic sur la couche réseau a des propriétés statistiques<ref name=":1" />, comme :
* la distribution de la durée du flux
* le temps d'attente du flux
* le temps d'interception des paquets
* la longueur des paquets


==== Exemples ====
Normally, statistical methods fit a statistical model (usually for normal behavior) to the given data and then apply a statistical inference test to determine if an unseen instance belongs to this model. (Network Anomaly Detection: Methods, Systems and Tools)
Voici deux exemple de NIDS statistiques :
* N@G<ref>{{Article|langue=en|prénom1=N.|nom1=Subramanian|prénom2=Pramod S.|nom2=Pawar|prénom3=Mayank|nom3=Bhatnagar|prénom4=Nihar S.|nom4=Khedekar|titre=Development of a Comprehensive Intrusion Detection System – Challenges and Approaches|périodique=Information Systems Security|série=Lecture Notes in Computer Science|éditeur=Springer, Berlin, Heidelberg|date=2005-12-19|isbn=9783540307068|doi=10.1007/11593980_27|lire en ligne=https://link.springer.com/chapter/10.1007/11593980_27|consulté le=2018-01-07|pages=332–335}}</ref> (Network at Guard) est un IDS hybride qui utilisent les approches de mauvaise usage et d'anomalie. Il dispose de quatre méthodes de détection, à savoir la collecte de données, la détection basée sur la signature, la violation de la politique d'accès au réseau et la détection des anomalies de protocole dans le cadre de son capteur de réseau. Il comprend des pistes d'audit, des analyses de journaux, des analyses statistiques et des politiques d'accès.
* FSAS<ref>{{Article|prénom1=Sui|nom1=Song|prénom2=Li|nom2=Ling|prénom3=C. N.|nom3=Manikopoulo|titre=Flow-based Statistical Aggregation Schemes for Network Anomaly Detection|périodique=2006 IEEE International Conference on Networking, Sensing and Control|date=2006|doi=10.1109/icnsc.2006.1673246|lire en ligne=http://ieeexplore.ieee.org/document/1673246/|consulté le=2018-01-07|pages=786–791}}</ref> (Flow-based Statistical Aggregation Scheme) est un IDS statistique basé sur les flux. Il comprend deux modules: un générateur de caractéristiques et un détecteur basé sur le flux. Dans le générateur de caractéristiques, le module de préprocesseur d'événements collecte le trafic réseau d'un hôte ou d'un réseau. Les gestionnaires d'événements génèrent des rapports pour le module de gestion de flux. Le module de gestion de flux détermine efficacement si un paquet fait partie d'un flux existant ou s'il doit générer une nouvelle clé de flux. En inspectant les clés de flux, ce module regroupe les flux et met à jour de façon dynamique les mesures de comptabilité par flux. Le module de temps d'événement appelle périodiquement le module d'extraction de caractéristiques pour convertir les statistiques concernant les flux dans le format requis par le modèle statistique. Le classificateur du réseau neuronal classe les vecteurs de score pour hiérarchiser les flux avec le degré de malveillance. Plus la malveillance d'un flux est élevée, plus la possibilité que le flux soit un attaquant est élevée.


==== Avantages/Inconvénients ====
Newer approaches rely on traffic's statistical characteristics to identify the application. An assumption underlying such methods is that traffic at the network layer has statistical properties (such as the distribution of flow duration, flow idle time, packet inter-arrival time and packet lengths) that are unique for certain classes of applications and enable different source applications to be distinguished from each other. (A survey of techniques for internet traffic classification using machine learning 10.1109/SURV.2008.080406)
Les approches statistiques présentent de nombreux avantages :<ref name=":3">{{Article|prénom1=M. H.|nom1=Bhuyan|prénom2=D. K.|nom2=Bhattacharyya|prénom3=J. K.|nom3=Kalita|titre=Network Anomaly Detection: Methods, Systems and Tools|périodique=IEEE Communications Surveys Tutorials|volume=16|numéro=1|date=First 2014|issn=1553-877X|doi=10.1109/surv.2013.052213.00046|lire en ligne=http://ieeexplore.ieee.org/document/6524462/|consulté le=2018-01-07|pages=303–336}}</ref>

* Elles ne nécessitent pas la connaissance préalable des activités normales. Elles ont la capacité d'apprendre le comportement attendu à partir des observations.
The need to deal with traffic patterns, large datasets and multi-dimensional spaces of flow and packet attributes is one of the reasons for the introduction of ML techniques in this field. (A survey of techniques for internet traffic classification using machine learning 10.1109/SURV.2008.080406)
* Elles permettent d'obtenir une détection précise sur de longues périodes, à condition d'avoir correctement paramétré le seuil d'alerte.

* Elles analysent le trafic sur la base de la théorie "Detection of Abrupt Changes", c'est-à-dire qu'elles surveillent pendant de longue période et détectent les changement brutaux.
Both parametric and nonparametric techniques have been applied to design statistical models for anomaly detection. While parametric techniques assume knowledge of the underlying distribution and estimate the parameters from the given data [79], non-parametric techniques do not generally assume knowledge of the underlying distribution [80]. (Network Anomaly Detection: Methods, Systems and Tools)
Mais il existe également des inconvénients :<ref name=":3" />

* Il est possible qu'un attaquant entraîne le modèle de manière que le trafic généré par l'attaque soit considéré comme normal.
In addition to the detection methods, there are several statistical NIDSs. As mentioned earlier, a NIDS includes one or more intrusion detection methods that are integrated with other required sub-systems necessary to create a practically suitable system. We discuss a few below. (Network Anomaly Detection: Methods, Systems and Tools)
* Il est difficile de définir les valeurs des paramètres car il faut trouver le juste équilibre entre les faux positifs et les faux négatifs.

* Il faut attendre longtemps pour détecter les premières anomalies car la construction du modèle nécessite une longue période.
    * N@G (Network at Guard) [93] is a hybrid IDS that exploits both misuse and anomaly approaches. N@G has both network and host sensors. Anomaly-based intrusion detection is pursued using the chi-square technique on various network protocol parameters. It has four detection methodologies viz., data collection, signature-based detection, network access policy violation and protocol anomaly detection as a part of its network sensor. It includes audit trails, log analysis, statistical analysis and host access policies as components of the host sensor. The system has a separate IDS server, i.e., a management console to aggregate alerts from the various sensors with a user interface, a middle-tier and a data management component. It provides real time protection against malicious changes to network settings on client computers, which includes unsolicited changes to the Windows Hosts file and Windows Messenger service.
* Il est compliqué de choisir la meilleure statistique car plusieurs statistiques peuvent être utilisées pour détecter une anomalie.

    * FSAS (Flow-based Statistical Aggregation Scheme) [94] is a flow-based statistical IDS. It comprises of two modules: feature generator and flow-based detector. In the feature generator, the event preprocessor module collects the network traffic of a host or a network. The event handlers generate reports to the flow management module. The flow management module efficiently determines if a packet is part of an existing flow or it should generate a new flow key. By inspecting flow keys, this module aggregates flows together, and dynamically updates per-flow accounting measurements. The event time module periodically calls the feature extraction module to convert the statistics regarding flows into the format required by the statistical model. The neural network classifier classifies the score vectors to prioritize flows with the amount of maliciousness. The higher the maliciousness of a flow, the higher is the possibility of the flow being an attacker.

In addition to their inherent ability to detect network anomalies, statistical approaches have a number of additional distinct advantages as well. (Network Anomaly Detection: Methods, Systems and Tools)

    * They do not require prior knowledge of normal activities of the target system. Instead, they have the ability to learn the expected behavior of the system from observations.

    * Statistical methods can provide accurate notification or alarm generation of malicious activities occurring over long periods of time, subject to setting of appropriate thresholding or parameter tuning.

    * They analyze the traffic based on the theory of abrupt changes, i.e., they monitor the traffic for a long time and report an alarm if any abrupt change (i.e., significant deviation) occurs.

Drawbacks of the statistical model for network anomaly detection include the following. (Network Anomaly Detection: Methods, Systems and Tools)

    * They are susceptible to being trained by an attacker in such a way that the network traffic generated during the attack is considered normal.

    * Setting the values of the different parameters or metrics is a difficult task, especially because the balance between false positives and false negatives is an issue. Moreover, a statistical distribution per variable is assumed, but not all behaviors can be modeled using stochastic methods. Furthermore, most schemes rely on the assumption of a quasi-stationary process [6], which is not always realistic.

    * It takes a long time to report an anomaly for the first time because the building of the models requires extended time.

    * Several hypothesis testing statistics can be applied to detect anomalies. Choosing the best statistic is often not straightforward. In particular, as stated in [88] constructing hypothesis tests for complex distributions that are required to fit high dimensional datasets is nontrivial.

    * Histogram-based techniques are relatively simple to im-plement, but a key shortcoming of such techniques for multivariate data is that they are not able to capture interactions among the attributes.


<ref name="=BhuyanBhattacharyyaKalita2013" />
<ref name="=BhuyanBhattacharyyaKalita2013" />

Version du 7 janvier 2018 à 23:28

Introduction...

Apprentissage automatique appliqué aux systèmes de détection d’intrusion réseau

Contexte

Limites de la détection avec signatures

Les systèmes de détection d'intrusion, et plus spécifiquement de détection d'intrusion au niveau réseau (en anglais Network Intrusion Detection System), ont pour responsabilité d'identifier des menaces ou intrusions sur un réseau informatique. Ceci peut être une tentative d'accès non autorisée, un accès ou une modification illégale de données ou encore la mise hors service d'un ou plusieurs composants informatiques [1]. L'identification peut se faire en temps réel sur le réseau pour détecter les menaces immédiatement ou en analysant du trafic réseau capturé précédemment. Ces système de détection pour le réseau peuvent être classifiés en deux catégories, répartis par méthode de détection [2]:

  • Les systèmes de détection reposant sur une base de signatures mise régulièrement à jour.
  • Les systèmes de détection identifiant le trafic réseau anormal.

L'avantage d'un système de détection reposant sur des signatures est d'avoir un nombre de faux positifs relativement faible, car la base contenant les signatures de détection peut être adaptée facilement [3]. Par contre, dû au grand nombre d'attaques réseau découvertes régulièrement, à la difficulté d'analyser rapidement ces attaques avant d'en générer des signatures de détection et aux multiples formes qu'une attaque peut avoir, il est extrêmement difficile de maintenir une base de signatures d'intrusion à jour [4]. De plus, un système reposant sur des signatures d'intrusion ne peut que détecter les intrusions contenues dans se base et laissera donc passer celles qu'il ne connaît pas (ou d'autres catégories de menace tel que les attaques par déni de service et les balayages de ports) [5].

Améliorations avec l'apprentissage automatique

Au vu de la difficulté à mettre en place un système reposant sur des signatures et le nombre grandissant d'attaques sur les réseau, les systèmes de détection d'intrusion réseau qui identifient les anomalies ont fait l'objet de beaucoup de recherches scientifiques. Bien que des avancées conséquentes aient déjà été réalisées dans ce domaine, il y a encore beaucoup d'opportunités d'amélioration pour les systèmes de détection d'intrusion réseau [6]. Plus particulièrement, des efforts pour arriver à l'objectif ultime de tout système de détection déployé dans un environnement réel : réduire le nombre de faux positifs remontés tout en augmentant la précision et l’efficacité du modèle de détection [7].

Pour arriver à cet objectif, tout en ayant la capacité de détecter des attaques inconnues, les systèmes de détection d'intrusion réseau qui se basent sur les anomalies ont embarqué des mécanismes d'apprentissage automatique [8]. Pour les systèmes basés sur de l'apprentissage supervisé, le principe général est de définir en premier lieu le comportement "normal" d'un réseau informatique avec un modèle formel. Lors de la phase de détection, toute activité réseau sera identifiée comme étant anormale si la déviation par rapport au modèle dépasse un certain seuil. Deux composant essentiels se retrouvent donc généralement dans les systèmes avec apprentissage automatique [9]:

  • Un composant de modélisation : cette partie a pour objectif d’entraîner le système suffisamment pour obtenir un modèle de normalité réseau convenable.
  • Un composant de détection : sur base du modèle formé par le composant de modélisation, cette partie pourra évaluer la déviance d'un évènement réseau (paquet entrant, par exemple) par rapport au modèle.

[MODELES NON-SUPERVISES]

Méthodes d'apprentissage superficiel

[EXPLICATION APPRENTISSAGE SUPERFICIEL]

Les différentes méthodes d'apprentissage automatique utilisées dans les système de détection d'intrusion réseau peuvent être définies en regroupant des algorithmes d'apprentissage automatique similaires (du point de vue de leur fonctionnement). Cette approche permet de différencier la façon dont chaque système de détection fonctionne, mais présente l'inconvénient que certains algorithmes ne peuvent pas être classés dans une catégorie spécifique [10].

[référence [11] ]

Statistique

En statistique, on définit une anomalie comme une observation qui est soupçonnée d'être partiellement ou totalement non pertinente.[12] Pour la détection de ces anomalies, il existe deux techniques :

  • Les techniques paramétriques : elles supposent la connaissance de la distributions des données et estiment les paramètres à partir de celle-ci.[13]
  • Les techniques non-paramétriques : elles ne supposent pas la connaissance de la distribution des données.[14]

En détectant ces anomalies, les méthodes statistiques appliquent des tests sur les données d'un modèle statistique pour déterminer si un nouveau cas (non observé) existe.[15] Les méthodes les plus récentes s'intéressent aux caractéristiques statistiques du trafic dans le but d'identifier l'application. Ces méthodes partent du principe que le trafic sur la couche réseau a des propriétés statistiques[15], comme :

  • la distribution de la durée du flux
  • le temps d'attente du flux
  • le temps d'interception des paquets
  • la longueur des paquets

Exemples

Voici deux exemple de NIDS statistiques :

  • N@G[16] (Network at Guard) est un IDS hybride qui utilisent les approches de mauvaise usage et d'anomalie. Il dispose de quatre méthodes de détection, à savoir la collecte de données, la détection basée sur la signature, la violation de la politique d'accès au réseau et la détection des anomalies de protocole dans le cadre de son capteur de réseau. Il comprend des pistes d'audit, des analyses de journaux, des analyses statistiques et des politiques d'accès.
  • FSAS[17] (Flow-based Statistical Aggregation Scheme) est un IDS statistique basé sur les flux. Il comprend deux modules: un générateur de caractéristiques et un détecteur basé sur le flux. Dans le générateur de caractéristiques, le module de préprocesseur d'événements collecte le trafic réseau d'un hôte ou d'un réseau. Les gestionnaires d'événements génèrent des rapports pour le module de gestion de flux. Le module de gestion de flux détermine efficacement si un paquet fait partie d'un flux existant ou s'il doit générer une nouvelle clé de flux. En inspectant les clés de flux, ce module regroupe les flux et met à jour de façon dynamique les mesures de comptabilité par flux. Le module de temps d'événement appelle périodiquement le module d'extraction de caractéristiques pour convertir les statistiques concernant les flux dans le format requis par le modèle statistique. Le classificateur du réseau neuronal classe les vecteurs de score pour hiérarchiser les flux avec le degré de malveillance. Plus la malveillance d'un flux est élevée, plus la possibilité que le flux soit un attaquant est élevée.

Avantages/Inconvénients

Les approches statistiques présentent de nombreux avantages :[18]

  • Elles ne nécessitent pas la connaissance préalable des activités normales. Elles ont la capacité d'apprendre le comportement attendu à partir des observations.
  • Elles permettent d'obtenir une détection précise sur de longues périodes, à condition d'avoir correctement paramétré le seuil d'alerte.
  • Elles analysent le trafic sur la base de la théorie "Detection of Abrupt Changes", c'est-à-dire qu'elles surveillent pendant de longue période et détectent les changement brutaux.

Mais il existe également des inconvénients :[18]

  • Il est possible qu'un attaquant entraîne le modèle de manière que le trafic généré par l'attaque soit considéré comme normal.
  • Il est difficile de définir les valeurs des paramètres car il faut trouver le juste équilibre entre les faux positifs et les faux négatifs.
  • Il faut attendre longtemps pour détecter les premières anomalies car la construction du modèle nécessite une longue période.
  • Il est compliqué de choisir la meilleure statistique car plusieurs statistiques peuvent être utilisées pour détecter une anomalie.

[10]

Auteur(s) Année de publication Architecture Nature de la détection Attaques traitées Méthode de détection
Eskin 2000 Autre Non temps réel U2R Probality Model
Manikopoulos et Papavassiliou 2002 Distribuée Non temps réel DDoS, R2L Statical model with neural network
Mahoney et Chan 2003 Centralisée Non temps réel All attacks LERAD algorithm
Chan et al. 2003 Centralisée Non temps réel All attacks Learning Rules
Wang et Stolfo 2004 Centralisée Non temps réel All attacks Payload-based algorithm
Song et al. 2007 Centralisée Non temps réel Intrusive pattern Gaussian Mixture Model
Chhabra et al. 2008 Distribuée Non temps réel Anomalous FDR method
Lu et Ghorbani 2009 Centralisée Non temps réel All attacks Wavelet Analysis
Wattenberg et al. 2011 Centralisée Non temps réel DDoS GLRT Model
Yu 2012 Centralisée Non temps réel DDoS Adaptive CUSUM

Classification

(or supervised learning)

(Network Anomaly Detection: Methods, Systems and Tools)

Classification is the problem of identifying which of a set of categories a new observation belongs to, on the basis of a training set of data containing observations whose category membership is known.

Assuming we have two classes whose instances are shown as + and −, and each object can be defined in terms of two attributes or features x1 and x2, linear classification tries to find a line between the classes as shown in Figure 7(a). The classification boundary may be non-linear as in Figure 7(b). In intrusion detection, the data is high dimensional, not just two. The attributes are usually mixed, numeric and categorial as discussed earlier.

Thus, classification techniques are based on establishing an explicit or implicit model that enables categorization of network traffic patterns into several classes [95]–[96][97][98][99][100].

A singular characteristic of these techniques is that they need labeled data to train the behavioral model, a procedure that places high demands on resources [101].

In many cases, the applicability of machine learning principles such as classification coincides with that of statistical techniques, although the former technique is focused on building a model that improves its performance on the basis of previous results [7].

Several classification-based techniques (e.g., k-nearest neighbor, support vector machines, and decision trees) have been applied to anomaly detection in network traffic data.

An example of classification-based IDS is Automated Data Analysis and Mining (ADAM) [32] that provides a testbed for detecting anomalous instances. An architecture diagram of ADAM is shown in Figure 8. ADAM exploits a combination of classification techniques and association rule mining to discover attacks in a tcpdump audit trail. First, ADAM builds a repository of “normal” frequent itemsets from attack-free periods. Second, ADAM runs a sliding-window based online algorithm that finds frequent itemsets in the connections and compares them with those stored in the normal itemset repository, discarding those that are deemed normal. ADAM uses a classifier which has been trained to classify suspicious connections as either a known type of attack or an unknown type or a false alarm.

Support Vector Machines (SVMs) are very successful maximum margin linear classifiers [109]. However, SVMs take a long time for training when the dataset is very large.

Classification-based anomaly detection approaches are popular for detecting network anomalies. The following are some advantages.

    * These techniques are flexible for training and testing. They are capable of updating their execution strategies with the incorporation of new information. Hence, adaptability is possible.

    * They have a high detection rate for known attacks subject to appropriate threshold setting.

Though such methods are popular they have the following disadvantages.

    * The techniques are highly dependent on the assumptions made by the classifiers.

    * They consume more resources than other techniques.

    * They cannot detect or predict unknown attack or event until relevant training information is fed.

(A survey of techniques for internet traffic classification using machine learning 10.1109/SURV.2008.080406)

Classification learning involves a machine learning from a set of pre-classified (also called pre-labeled) examples, from which it builds a set of classification rules (a model) to classify unseen examples.

A challenge when using supervised learning algorithms is that both the training and testing phases must be performed using datasets that have been previously classified (labeled)1. Ideally one would have a large training set (for optimal learning and creation of models) and a large, yet independent, testing dataset to properly assess the algorithm's performance. (Testing on the training dataset is broadly misleading. Such testing will usually only show that the constructed model is good at recognising the instances from which it was constructed.)

In the real world we are often faced with a limited quantity of pre-labeled datasets. A simple procedure (sometimes known as holdout [29]) involves setting aside some part (e.g. two thirds) of the pre-labeled dataset for training and the rest (e.g. one third) for testing.

[10]

Auteur(s) Année de publication Architecture Nature de la détection Attaques traitées Méthode de détection
Tong et al. 2005 Autre Non temps réel All attacks KPCC model
Gaddam et al. 2007 Centralisée Non temps réel All attacks k-means+ID3
Khan et al. 2007 Centralisée Non temps réel All attacks DGSOT + SVM
Das et al. 2008 Autre Non temps réel All attacks APD Algorithm
Lu et Tong 2009 Autre Non temps réel All attacks CUSUM-EM
Qadeer et al. 2010 Centralisée Temps réel DDoS Traffic statistics
Wagner et al. 2011 Centralisée Temps réel DDoS Kernel OCSVM
Muda et al. 2011 Autre Non temps réel All attacks KMNB algorithm
Kang et al. 2012 Autre Non temps réel All attacks Differentiated SVDD

Partitionnement de données

Le partitionnement de données (en anglais data clustering, communément nommé clustering) est une méthode d'analyse des données qui permet de diviser un ensemble de données en groupes possédant des caractéristiques communes. Cette méthode permet de mettre en place des solutions d'apprentissage non supervisé pour déduire de façon automatique des structure de données en regroupant des données similaires. Une fois le partitionnement effectué, certaines données aberrantes peuvent ne pas avoir été réparties dans des groupes par l'apprentissage automatique et contrastent grandement avec les autres données de l'ensemble. Dans le contexte de systèmes de détection d'intrusion réseau basé sur des comportement anormaux, ce sont les données aberrantes qui permettent d'identifier le trafic anormal dans un réseau informatique [19].

Pour que le système d'apprentissage utilisant le partitionnement de données fonctionne correctement, deux prérequis doivent être posés concernant les données que le système de détection recevra en entrée [20] :

  • Que le nombre d'évènement normaux sur un réseau soient nettement supérieurs au nombre d'évènements avec un comportement à risque (intrusion ou menace réseau). Pour que les données liées à des comportements anormaux soient identifiés comme étant aberrantes, il est nécessaire que ces données suspectes soient isolées de tout groupe ou réparties au sein de tout petits groupes. Si les données qui forment une menace pour le réseau se retrouvent dans un groupe de même grandeur que d'autres groupes contenant des données normales, le système de détection ne verra pas ce groupe suspect comme une menace ou intrusion.
  • Que les données qui représentent une menace pour le réseau soient qualitativement différentes du trafic réseau normal. Sans différence "marquante" entre ces deux classes de données, le mécanisme de partitionnement ne pourra pas correctement classifier les menaces comme étant des données aberrantes et risque de les mettre dans un groupe contenant des données réseau normales.

[ZULKERINE][21]

[EXEMPLE, DONNEES EN ENTREE, ...][22]

[AVANTAGES]

[INCONVENIENTS]

Auteur(s) Année de publication Architecture Nature de la détection Attaques traitées Méthode de détection
Sequeria et Zaki 2002 Centralisée Temps réel Synthetic intrusions ADMIT
Zhang et al. 2005 Décentralisée Non temps réel All attacks Cluster-based DIDS
Leung et Leckie 2005 Centralisée Non temps réel All attacks fsMAFIA algorithm
Otey et al. 2006 Centralisée Non temps réel All attacks FDOD algorithm
Jiang et al. 2006 Centralisée Non temps réel All attacks CBUID algorithm
Chen et Chen 2008 Autre Non temps réel Probe AAWP model
Zhang et al. 2009 Autre Non temps réel All attacks KD algorithm
Zhuang et al. 2010 Centralisée Temps réel Worms PAIDS model
Bhuyan et al. 2011 Centralisée Non temps réel All attacks NADO algorithm
Casas et al. 2012 Centralisée Non temps réel All attacks UNIS method

Combination learners

Ensemble-based methods

(X)

Fusion-based methods

(X)

Hybrid methods

(X)

Machine à vecteurs de support

(en anglais Support Vector Machine)

Réseaux de neurones artificiels

Les réseaux de neurones artificiels

Artificial Neural Networks (ANN) are motivated by the recognition that the human brain computes in an entirely different way from the conventional digital computer [129]. The brain organizes its constituents, known as neurons, so as to perform certain computations (e.g., pattern recognition, perception, and motor control) many times faster than the fastest digital computer. To achieve good performance, real neural networks employ massive interconnections of neurons. Neural networks acquire knowledge of the environment through a process of learning, which systematically changes the interconnection strengths, or synaptic weights of the network to attain a desired design objective. (Bhuyan)

Fuzzy

Association Rules and Fuzzy Association Rules

(X)

Autres

Association Rules and Fuzzy Association Rules

Réseau bayésien

(en anglais Bayesian Network) -> Peut être placé dans "classifiers"

Arbre de décision

(en anglais Decision Trees)

Apprentissage ensembliste

(en anglais Ensemble Learning)

Calcul évolutif

(en anglais Evolutionary Computation)

Modèle de Markov caché

(en anglais Hidden Markov Models)

Apprentissage inductif

(en anglais Inductive Learning)

Bayésien naïf

(en anglais Naïve Bayes)

Fouille de motif séquentiel

(en anglais Sequential Pattern Mining)

Méthodes d'apprentissage profond

L'apprentissage profond (en anglais deep learning)... comparé à apprentissage automatique

Thanh: Deep learning a class of machine learning techniques, where many layers of information processing stages in hierarchical architectures are exploited for unsupervised feature learning and for pattern analysis or classification. Deep learning show the power of generative models with high accuracy classification, capabilities to extract parts of its information from incomplete training data.

Thanh: The principle of deep learning is to compute hierarchical features or representations of the observational data, where the higher-level features or factors are defmed from lower­ level ones. The Deep learning techniques aim to learn a good feature representation from a large amount of unlabeled data, so the model can be pre-trained in a completely unsupervised fashion.

-> Dans Phai, voir "existing work"

Comparaison des méthodes

  • Dans [22], en haut de la page #3, tableau très interessant de comparaison entre
    • Clustering
    • Markov
    • Neural networks
    • Fuzzy logic
    • Genetic algorithms
  • Dans [22], page 2 section B, avis tranché avec références sur désavantages d'utiliser les méthodes sur base de data-mining
    • Attention, si utilisation de cette information, bien définir avant dans article Wikipedia quelles sont les types de méthodes basées sur le data mining
  • Discuter des faux positifs si possible

Apprentissage supervisé et non-supervisé

Une comparaison à haut niveau peut être faite en fonction du type d'apprentissage automatique utilisé : apprentissage supervisé ou apprentissage non supervisé. Une différence majeure entre ces deux catégories réside dans la façon d’interagir avec les données à traiter. Dans une système de détection utilisant un apprentissage supervisé, le données d’entraînement auront un "résultat" connu que le système de détection pourra utiliser pour affiner son modèle de détection [23]. Un système avec apprentissage non supervisé n'aura pas cette possibilité, car les données utilisées n'auront pas d'indication quant au résultat à obtenir [24]. Par exemple, un système de détection de paquets réseau suspects en apprentissage supervisé aura été entraîné auparavant avec une liste de paquets réseau et un indicateur de dangerosité pour chaque paquet, tandis qu'un système non supervisé aura seulement la liste des paquets à disposition.

Les systèmes de détection ayant comme base l'apprentissage automatique supervisé ou semi-supervisé nécessitent un ensemble conséquent de données d’entraînement sur le réseau (un jeu de données avec des activités réseau) pour affiner le modèle de détection d'anomalies. Deux difficultés sont liées à l'utilisation de données d’entraînement pour la détection d'activités inhabituelles [25] :

  • Le jeu de données doit absolument être exempt d'attaques réseau : toute attaque qui se serait glissée dans les données d’entraînement sera perçu par le système de détection comme un comportement normal lors de se phase d'apprentissage. Lors de son utilisation en environnement réel, le système de détection ne pourra donc pas détecter ces attaques et les signaler comme étant une menace pour le réseau.
  • Le système de détection réagit mal aux changement au sein du réseau. Étant donné que l'apprentissage se fait sur un jeu de données contenant des activités réseau qui reflète un certain modèle (topologie, services mis à disposition, etc.), tout changement légitime pourra être perçu comme un comportement anormal et le système de détection remontera une erreur. Ceci a pour conséquence de causer un haut nombre de faux positif lors de tout changement réseau.

[AVANTAGES SUP, AVANTAGES INCONV UNSUPERVISED]

Pour pallier aux désavantages de chaque type d'apprentissage automatique et profiter de leurs forces pour la détection d'intrusion, il est possible de les combiner au sein d'une architecture en deux couches [26]. La première couche est basée sur un algorithme non supervisé qui effectue une première identifications des paquets réseau en se basant sur la charge utile du paquet (en anglais payload). Une fois le contenu du paquet identifié, une seconde couche peut alors identifier les anomalies, en se basant sur les entêtes du paquet et l'identification de la première couche. L'identification des anomalies peut être réalisé avec un modèle qui a été mis au point avec un apprentissage supervisé.

[COMMENTER AVANTAGES METHODE Ci-DESSUS]

Aprentissage superficiel et deep learning

Phai:As networks continue to increase in dynamicity and complexity, the longevity of behavioural models is reducing.

Hence, detection and classification models require frequent retraining, to account for changes. Similarly, since the adoption of shallow machine learning-based methods (e.g. Naive Bayes, Decision Trees and Support Vector Machines (SVM) [1]) into NIDSs research, the sizes of the datasets required have drastically increased. It is therefore no longer feasible to rely on separate processes to restructure and rebalance datasets

Thanh : With deep learning, we expect to tackle issues in anomaly-based network intrusion detection, such as high intrusion detection rate, ability to adapt to dynamic network environments, unavailability of labeled data

Thanh: Because of the large sized input and dynamic network environment, an issue is the false positive rate. To address this problem, an expected characteristic is ability to adapt to generalize its behavior and cope with dynamic network environments. That means a self-learning system is needed. In our work, we focus on researching and implementing the anomaly detection in network-based IDS, called anomaly

Très bonne comparaison dans "A Deep Learning Approach for Intrusion Detection, intro"

Difficultés liées à l'apprentissage automatique

  • Expliquer les difficultés liées à l'apprentissage automatique, p5 [27] (posséder assez de données de test, ...
  • Dans papier de thanh (such as ability to adapt to dynamic network environments, unavailability of labeled data, false positive rate)

Perspectives et évolutions

()

Historique

()

Bibliographie

Général

  • (en) Wenke Lee, Salvatore J. Stolfo et Kui W. Mok, « Adaptive Intrusion Detection: A Data Mining Approach », Artificial Intelligence Review, vol. 14, no 6,‎ , p. 533–567 (ISSN 0269-2821 et 1573-7462, DOI 10.1023/A:1006624031083, lire en ligne, consulté le )
  • Shelly Xiaonan Wu et Wolfgang Banzhaf, « The use of computational intelligence in intrusion detection systems: A review », Applied Soft Computing, vol. 10, no 1,‎ , p. 1–35 (DOI 10.1016/j.asoc.2009.06.019, lire en ligne, consulté le )
  • M. H. Bhuyan, D. K. Bhattacharyya et J. K. Kalita, « Network Anomaly Detection: Methods, Systems and Tools », IEEE Communications Surveys Tutorials, vol. 16, no 1,‎ first 2014, p. 303–336 (ISSN 1553-877X, DOI 10.1109/surv.2013.052213.00046, lire en ligne, consulté le )
  • A. L. Buczak et E. Guven, « A Survey of Data Mining and Machine Learning Methods for Cyber Security Intrusion Detection », IEEE Communications Surveys Tutorials, vol. 18, no 2,‎ secondquarter 2016, p. 1153–1176 (ISSN 1553-877X, DOI 10.1109/comst.2015.2494502, lire en ligne, consulté le )
  • R. P. Palnaty et A. Rao, « JCADS: Semi-supervised clustering algorithm for network anomaly intrusion detection systems », 2013 15th International Conference on Advanced Computing Technologies (ICACT),‎ , p. 1–5 (DOI 10.1109/icact.2013.6710498, lire en ligne, consulté le )
  • (en) James P. Anderson, « Computer Security Threat Monitoring and Surveillance », Early NIST security papers,‎

Méthode de partitionnement

  • J. Zhang et M. Zulkernine, « Anomaly Based Network Intrusion Detection with Unsupervised Outlier Detection », 2006 IEEE International Conference on Communications, vol. 5,‎ , p. 2388–2393 (DOI 10.1109/icc.2006.255127, lire en ligne, consulté le )
  • M. Bailey, C. Collins, M. Sinda et G. Hu, « Intrusion detection using clustering of network traffic flows », 2017 18th IEEE/ACIS International Conference on Software Engineering, Artificial Intelligence, Networking and Parallel/Distributed Computing (SNPD),‎ , p. 615–620 (DOI 10.1109/snpd.2017.8022786, lire en ligne, consulté le )
  • (en) Leonid Portnoy, Eleazar Eskin et Sal Stolfo, « Intrusion Detection with Unlabeled Data Using Clustering », Proceedings of ACM CSS Workshop on Data Mining Applied to Security,‎ , p. 14

Méthode avec machines à vecteur de support

  • H. S. Wang et X. L. Gui, « A New Network Security Model Based on Machine Learning », 2012 International Conference on Control Engineering and Communication Technology,‎ , p. 860–865 (DOI 10.1109/iccect.2012.28, lire en ligne, consulté le )

Méthode avec réseaux de neurones

  • Nguyen Thanh Van, Tran Ngoc Thinh et Le Thanh Sach, « An anomaly-based network intrusion detection system using Deep learning », 2017 International Conference on System Science and Engineering (ICSSE),‎ , p. 210–214 (DOI 10.1109/icsse.2017.8030867, lire en ligne, consulté le )
  • P. V. Dinh, T. N. Ngoc, N. Shone et A. MacDermott, « Deep learning combined with de-noising data for network intrusion detection », 2017 21st Asia Pacific Symposium on Intelligent and Evolutionary Systems (IES),‎ , p. 55–60 (DOI 10.1109/iesys.2017.8233561, lire en ligne, consulté le )
  • N. Gao, L. Gao, Q. Gao et H. Wang, « An Intrusion Detection Model Based on Deep Belief Networks », 2014 Second International Conference on Advanced Cloud and Big Data,‎ , p. 247–252 (DOI 10.1109/cbd.2014.41, lire en ligne, consulté le )

Comparaisons

  • Stefano Zanero et Sergio M. Savaresi, « Unsupervised Learning Techniques for an Intrusion Detection System », Proceedings of the 2004 ACM Symposium on Applied Computing, ACM, sAC '04,‎ , p. 412–419 (ISBN 1581138121, DOI 10.1145/967900.967988, lire en ligne, consulté le )
  • C. Yin, Y. Zhu, J. Fei et X. He, « A Deep Learning Approach for Intrusion Detection Using Recurrent Neural Networks », IEEE Access, vol. 5,‎ , p. 21954–21961 (DOI 10.1109/access.2017.2762418, lire en ligne, consulté le )
  • B. Dong et X. Wang, « Comparison deep learning method to traditional methods using for network intrusion detection », 2016 8th IEEE International Conference on Communication Software and Networks (ICCSN),‎ , p. 581–585 (DOI 10.1109/iccsn.2016.7586590, lire en ligne, consulté le )
  • R. Vinayakumar, K. P. Soman et P. Poornachandran, « Evaluating effectiveness of shallow and deep networks to intrusion detection system », 2017 International Conference on Advances in Computing, Communications and Informatics (ICACCI),‎ , p. 1282–1289 (DOI 10.1109/icacci.2017.8126018, lire en ligne, consulté le )

Difficultés et alternatives

  • R. Sekar, A. Gupta, J. Frullo et T. Shanbhag, « Specification-based Anomaly Detection: A New Approach for Detecting Network Intrusions », Proceedings of the 9th ACM Conference on Computer and Communications Security, ACM, cCS '02,‎ , p. 265–274 (ISBN 1581136129, DOI 10.1145/586110.586146, lire en ligne, consulté le )

Références

  1. Anderson
  2. Palnaty, 2004, p. 1
  3. Palnaty, 2004, p. 1
  4. Zanero, 2004, p. 1
  5. Palnaty, 2013, p. 1
  6. Bhuyan, 2013, p. 2
  7. Bailey, 2017, p. 5
  8. Zulkerine
  9. Bhuyan, 2013, p. 4
  10. a b et c Erreur de référence : Balise <ref> incorrecte : aucun texte n’a été fourni pour les références nommées =BhuyanBhattacharyyaKalita2013
  11. Wu
  12. F. J. Anscombe, « Rejection of Outliers », Technometrics, vol. 2, no 2,‎ , p. 123–146 (ISSN 0040-1706, DOI 10.2307/1266540, lire en ligne, consulté le )
  13. (en) Eleazar Eskin, « Anomaly Detection over Noisy Data Using Learned Probability Distributions », {{Article}} : paramètre « périodique » manquant,‎ (DOI 10.7916/d8c53skf, lire en ligne, consulté le )
  14. (en) M J Desforges, P J Jacob et J E Cooper, « Applications of probability density estimation to the detection of abnormal conditions in engineering », Proceedings of the Institution of Mechanical Engineers, Part C: Journal of Mechanical Engineering Science, vol. 212, no 8,‎ , p. 687–703 (DOI 10.1243/0954406981521448, lire en ligne, consulté le )
  15. a et b T. T. T. Nguyen et G. Armitage, « A survey of techniques for internet traffic classification using machine learning », IEEE Communications Surveys Tutorials, vol. 10, no 4,‎ fourth 2008, p. 56–76 (ISSN 1553-877X, DOI 10.1109/surv.2008.080406, lire en ligne, consulté le )
  16. (en) N. Subramanian, Pramod S. Pawar, Mayank Bhatnagar et Nihar S. Khedekar, « Development of a Comprehensive Intrusion Detection System – Challenges and Approaches », Information Systems Security, Springer, Berlin, Heidelberg, lecture Notes in Computer Science,‎ , p. 332–335 (ISBN 9783540307068, DOI 10.1007/11593980_27, lire en ligne, consulté le )
  17. Sui Song, Li Ling et C. N. Manikopoulo, « Flow-based Statistical Aggregation Schemes for Network Anomaly Detection », 2006 IEEE International Conference on Networking, Sensing and Control,‎ , p. 786–791 (DOI 10.1109/icnsc.2006.1673246, lire en ligne, consulté le )
  18. a et b M. H. Bhuyan, D. K. Bhattacharyya et J. K. Kalita, « Network Anomaly Detection: Methods, Systems and Tools », IEEE Communications Surveys Tutorials, vol. 16, no 1,‎ first 2014, p. 303–336 (ISSN 1553-877X, DOI 10.1109/surv.2013.052213.00046, lire en ligne, consulté le )
  19. Bailey, 2017, p. 5
  20. Portnoy, 2001, p. 2
  21. Zulkerine
  22. a b et c Erreur de référence : Balise <ref> incorrecte : aucun texte n’a été fourni pour les références nommées :0
  23. Buczak, 2016, p. 3
  24. Buczak, 2016, p. 3
  25. Zulkerine, 2006, p. 1
  26. Zanero, 2004, p. 3
  27. Lee, 2000, p. 4

Bibliographie [DEPRECATED]

  • Ahmed Patel, Mona Taghavi, Kaveh Bakhtiyari et Joaquim Celestino Júnior, « An intrusion detection and prevention system in cloud computing: A systematic review », Journal of Network and Computer Applications, vol. 36, no 1, {{Article}} : paramètre « date » manquant, p. 25–41 (DOI 10.1016/j.jnca.2012.08.007, lire en ligne, consulté le ) (cité 210 fois)
  • Shan Suthaharan, « Big Data Classification: Problems and Challenges in Network Intrusion Prediction with Machine Learning », SIGMETRICS Perform. Eval. Rev., vol. 41, no 4,‎ , p. 70–73 (ISSN 0163-5999, DOI 10.1145/2627534.2627557, lire en ligne, consulté le ) (cité 117 fois)
  • C. Kolias, G. Kambourakis et M. Maragoudakis, « Swarm intelligence in intrusion detection: A survey », Computers & Security, vol. 30, no 8, {{Article}} : paramètre « date » manquant, p. 625–642 (DOI 10.1016/j.cose.2011.08.009, lire en ligne, consulté le ) (cité 84 fois)
  • Terrence P. Fries, « A Fuzzy-genetic Approach to Network Intrusion Detection », Proceedings of the 10th Annual Conference Companion on Genetic and Evolutionary Computation, ACM, gECCO '08,‎ , p. 2141–2146 (ISBN 9781605581316, DOI 10.1145/1388969.1389037, lire en ligne, consulté le ) (cité 48 fois)
  • Nico Görnitz, Marius Kloft, Konrad Rieck et Ulf Brefeld, « Active Learning for Network Intrusion Detection », Proceedings of the 2Nd ACM Workshop on Security and Artificial Intelligence, ACM, aISec '09,‎ , p. 47–54 (ISBN 9781605587813, DOI 10.1145/1654988.1655002, lire en ligne, consulté le ) (cité 39 fois)
  • S. Akbar, J. A. Chandulal, K. N. Rao et G. S. Kumar, « Improving network security using machine learning techniques », 2012 IEEE International Conference on Computational Intelligence and Computing Research,‎ , p. 1–5 (DOI 10.1109/iccic.2012.6510197, lire en ligne, consulté le ) (cité 4 fois)
  • T. Pevný, M. Komoň et M. Reháky, « Attacking the IDS learning processes », 2013 IEEE International Conference on Acoustics, Speech and Signal Processing,‎ , p. 8687–8691 (DOI 10.1109/icassp.2013.6639362, lire en ligne, consulté le ) (cité 3 fois)
  • Yasir Hamid, M. Sugumaran et Ludovic Journaux, « Machine Learning Techniques for Intrusion Detection: A Comparative Analysis », Proceedings of the International Conference on Informatics and Analytics, ACM, iCIA-16,‎ , p. 53:1–53:6 (ISBN 9781450347563, DOI 10.1145/2980258.2980378, lire en ligne, consulté le ) (cité 3 fois)
  • Tao Zou, Hongwei Sun, Xinguang Tian et Eryang Zhang, « Modeling a self-learning detection engine automatically for IDS », IEEE International Conference on Robotics, Intelligent Systems and Signal Processing, 2003. Proceedings. 2003, vol. 1,‎ , p. 462–466 vol.1 (DOI 10.1109/rissp.2003.1285618, lire en ligne, consulté le ) (cité 2 fois)
  • Eitan Menahem, Gabi Nakibly et Yuval Elovici, « Network-based Intrusion Detection Systems Go Active! », Proceedings of the 2012 ACM Conference on Computer and Communications Security, ACM, cCS '12,‎ , p. 1004–1006 (ISBN 9781450316514, DOI 10.1145/2382196.2382306, lire en ligne, consulté le ) (cité 2 fois)
  • K. P. Adhiya, S. R. Kolhe et Sandip S. Patil, « Tracking and Identification of Suspicious and Abnormal Behaviors Using Supervised Machine Learning Technique », Proceedings of the International Conference on Advances in Computing, Communication and Control, ACM, iCAC3 '09,‎ , p. 96–99 (ISBN 9781605583518, DOI 10.1145/1523103.1523124, lire en ligne, consulté le ) (cité 1 fois)
  • M. A. Jabbar, Rajanikanth Aluvalu et S. Sai Satyanarayana Reddy, « Cluster Based Ensemble Classification for Intrusion Detection System », Proceedings of the 9th International Conference on Machine Learning and Computing, ACM, iCMLC 2017,‎ , p. 253–257 (ISBN 9781450348171, DOI 10.1145/3055635.3056595, lire en ligne, consulté le ) (cité 1 fois)
  • D. Bhamare, T. Salman, M. Samaka et A. Erbad, « Feasibility of Supervised Machine Learning for Cloud Security », 2016 International Conference on Information Science and Security (ICISS),‎ , p. 1–5 (DOI 10.1109/icissec.2016.7885853, lire en ligne, consulté le ) (cité 1 fois)
  • C. Feng, S. Wu et N. Liu, « A user-centric machine learning framework for cyber security operations center », 2017 IEEE International Conference on Intelligence and Security Informatics (ISI),‎ , p. 173–175 (DOI 10.1109/isi.2017.8004902, lire en ligne, consulté le ) (cité 0 fois)
  • D. H. Hagos, A. Yazidi, Ø Kure et P. E. Engelstad, « Enhancing Security Attacks Analysis Using Regularized Machine Learning Techniques », 2017 IEEE 31st International Conference on Advanced Information Networking and Applications (AINA),‎ , p. 909–918 (DOI 10.1109/aina.2017.19, lire en ligne, consulté le ) (cité 0 fois)
  • Ram Shankar Siva Kumar, Andrew Wicker et Matt Swann, « Practical Machine Learning for Cloud Intrusion Detection: Challenges and the Way Forward », Proceedings of the 10th ACM Workshop on Artificial Intelligence and Security, ACM, aISec '17,‎ , p. 81–90 (ISBN 9781450352024, DOI 10.1145/3128572.3140445, lire en ligne, consulté le ) (cité 0 fois)