Mémoire de maîtrise (2017)
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 (2MB) |
Résumé
La détection d'anomalie est une tâche consistant à repérer au sein d'un groupe de modèles ceux qui s'écartent de manière significative du comportement attendu ou souhaité. Ces modèles, non conformes, sont appelés anomalies ou données aberrantes. La détection des anomalies comporte diverses applications, telles que la détection des fraudes, la vidéosurveillance, les soins de santé et la détection des intrusions. Généralement, la détection d'anomalies vise à modéliser une fonction d'aide à la décision de manière à ce qu'elle puisse distinguer l'écart, significatif ou non, entre l'anomalie détectée et le comportement classique attendu. La détection des intrusions est maintenant un sujet d'intérêt pour le domaine de la sécurité informatique. Les intrusions (ou anomalies) sont des activités malveillantes permettant de pénétrer un ou plusieurs systèmes afin d'en retirer des informations confidentielles. Par conséquent, nous pouvons utiliser des méthodes de détection d'anomalie pour détecter les intrusions. Afin de pouvoir distinguer les intrusions des comportements classiques ou attendus (modèles non liés à l'attaque), différents systèmes de détection d'intrusion ont été développés. Ces derniers sont divisés en deux catégories: (1) les systèmes basés sur l'anomalie et (2) les systèmes basés sur la signature. Pour ce qui est des systèmes basés sur la signature, les modèles des anomalies sont connus, alors que pour ce qui est des systèmes de détection basés sur l'anomalie, les modèles d'intrusions peuvent être nouveaux. Autrement dit, les systèmes de détection d'intrusions basés sur l'anomalie peuvent détecter de nouvelles anomalies ou des attaques. Cependant, ces systèmes produisent un taux élevé de fausses alertes. Plus précisément, ces systèmes classent par erreur les modèles de non-attaque comme des anomalies, ce qui entraîne un taux élevé de fausses alarmes. Diminuer ce taux est l'un des principaux défis dans les systèmes de détection d'intrusion basés sur l'anomalie. Il existe plusieurs techniques pour diminuer le taux de fausses alarmes dans les systèmes de détection basés sur l'anomalie, telles que les méthodes de classification d'une classe. Le taux de faux positif montre le taux d'observations de non-attaque qui sont classées comme aberrantes et le taux de faux négatif représente la fraction des valeurs aberrantes qui sont détectées comme des non-attaques. Un système de détection d'intrusion idéal a un taux de faux positif nul et un taux de faux négatif nul. Nous proposons d'utiliser un algorithme nommé une machine de vecteur de support de classe unique (SVM à une classe) pour détecter des anomalies, en diminuant le taux de fausses alarmes (faux positif) avec le même taux de vrai positif. Le SVM d'une classe est un algorithme de classification d'une classe, à savoir une extension non supervisée de SVM qui construit un modèle basé sur une classe nommée classe cible. Toute observation qui ne se trouve pas dans cette classe s'appelle un horsain. En pratique, cette technique construit une classe pour les observations de cible ou non et une autre classe pour l'origine, et elle tente de trouver un classificateur approprié pour séparer les deux classes. Cette technique vise à calculer un hyperplan qui maximise la distance entre les points de formation et l'origine. Cet hyperplan (fonction de décision) peut être utilisé pour distinguer les observations non vues en tant que horsains ou non-attaques. Sur la base de la définition de cet algorithme, toute observation qui tombe sur le mauvais côté de cette frontière est un dépassement et les autres observations sont classées comme des non-attaques. De plus, cet algorithme profite d'un paramètre important appelé v, qui peut être défini par l'utilisateur pour déterminer la fraction des valeurs aberrantes et des vecteurs de support. Pour évaluer la méthode proposée, nous utilisons un jeu de données réel capturé à partir des journaux du serveur contenant des indicateurs de bas niveau, tels que la charge de la CPU, l'utilisation du processeur, etc., pour détecter les activités d'intrusion réelle. Nous comparons trois scénarios différents: une SVM de classe unique, une SVM de classe unique avec une étape de réduction de fausses alarmes et une SVM de classe unique avec une étape de réduction de fausses alarmes qui est formée sans valeurs aberrantes. Nous avons utilisé un métrique appelé F-measure pour comparer ces trois scénarios. La mesure F est le moyen harmonique entre précision et rappel. La précision montre la fraction des attaques vraies sur le nombre total d'observations détectées comme attaques, et le rappel représente la fraction des attaques réelles détectées. Sur la base des résultats expérimentaux, la SVM d'une classe avec le scénario de réduction de la fausse alarme a atteint une valeur élevée de F-0, 963. Plus précisément, la valeur de la mesure F a augmenté de 34, 4 par rapport à la SVM seule et de 52, 2 par rapport à la SVM d'une seule classe avec la réduction de la fausse alarme qui est formée sans valeurs aberrantes. Nous observons que le deuxième scénario a permis de réduire le nombre de fausses alarmes. Nous comparons également nos scénarios avec trois algorithmes de classification d'une classe : densité de Parzen, mélange d'estimation de densité de Gaussiens et description de données k-means. Les résultats de la description des données k-means et du mélange de Gaussians sont comparables à ceux de la SVM d'une classe avec l'étape de réduction des fausses alarmes, alors que la méthode de densité de Parzen présentait une faible valeur de mesure F de 0, 341. En outre, nous avons testé ces trois scénarios sur un ensemble de données réel (Knowledge Discovery Data Mining 99), sous-tendant encore l'efficacité de la méthode de réduction des fausses alarmes proposée.
Abstract
Anomaly detection is a task of detecting patterns that significantly deviate from an expected behavior. These nonconforming patterns are referred to as anomalies or outliers. Anomaly detection has various applications, such as fraud detection, video surveillance, health care and intrusion detection. Generally, anomaly detection aims to find a decision function such that it can distinguish deviation from the expected behavior. The detection of intrusions is now a topic of great interest in the computer security field. Intrusions (or anomalies) are malicious activities and can penetrate systems and obtain confidential information. Consequently, we can use anomaly detection methods to detect intrusions. For this reason, intrusion detection systems have been introduced to distinguish intrusions from expected behavior (non-attack patterns). Intrusion detection systems are divided into two categories: anomaly-based and signature-based systems. In signature-based systems, the patterns of the anomalies are known, whereas in anomaly-based detection systems, these patterns can be novel. Anomaly-based intrusion detection systems can detect novel anomalies or attacks, although these systems produce a high false alarm rate. Specifically, these systems mistakenly classify non-attack patterns as anomalies, which leads to a high false alarm rate. Decreasing this rate is one of the main challenges in anomaly-based intrusion detection systems. There are multiple techniques to decrease the false alarm rate in anomaly-based detection systems, such as one-class classification methods. The false positive rate shows the rate of non-attack observations that are classified as outliers, and the false negative rate depicts the fraction of outliers that are detected as non-attacks. An ideal intrusion detection system has zero false positive rate and zero false negative rate. We propose to use an algorithm named one-class support vector machine (one-class SVM) to detect anomalies, decreasing the false alarm (false positive) rate with the same false negative rate. One-class SVM is a one-class classification algorithm, namely, an unsupervised extension of SVMs that constructs a model based on one class named the target class. Any observation that is not in this class is called an outlier. In practice, this technique builds one class for target or non-attack observations and another class for the origin, and it attempts to find a proper one-class classifier to separate the two classes. This technique aims to compute a hyperplane that maximizes the distance between the training points and the origin. This hyperplane (decision function) can be used for distinguishing the unseen observations as outliers or non-attacks. Based on the definition of this algorithm, any observation that falls on the wrong side of this frontier is an outlier, and the other observations are classified as non-attacks. Moreover, this algorithm takes advantage of an important parameter called v, which can be defined by the user to determine the fraction of outliers and support vectors. To evaluate the proposed method, we use a real dataset captured from server logs containing low-level indicators, such as CPU load, CPU usage, and so forth, to detect real intrusion activities. We compare three different scenarios: a one-class SVM alone, a one-class SVM with the false alarm reduction step, and a one-class SVM with the false alarm reduction step that is trained without outliers. We use a metric called F-measure to compare these three scenarios. F-measure is the harmonic mean between precision and recall. Precision shows the fraction of true attacks on the total number of observations that are detected as attacks, and recall depicts the fraction of detected real attacks. Based on the experimental results, one-class SVM with the false alarm reduction step scenario achieved a high F-measure value of 0.963. Specifically, the F-measure value increased 34.4 percent compared to the one-class SVM alone and 52.2 percent compared to the one-class SVM with the false alarm reduction step that is trained without outliers. We observe that the second scenario achieved a lower number of false alarms. We also compare our scenarios with three one-class classification algorithms: Parzen density estimation, mixture of Gaussians density estimation and k-means data description. The results of the one-class SVM with the false alarm reduction step is comparable to those of the k-means data description, whereas the Parzen density method presented the lowest F-measure value of 0.341. Furthermore, we test these three scenarios on one real dataset (Knowledge Discovery Data Mining 99), again underlying the efficiency of the proposed false alarm reduction method. Finally, we investigate the sample size and dimensionality behavior in one-class SVM with respect to F-measure, training time and FP reduction time on six artificial normally distributed datasets. According to the experimental results, for the same sample sizes, when the dimensionality increases, the F-measure value decreases. Moreover, by increasing the sample size and dimensionality, the training time and FP reduction time also increase.
Département: | Département de mathématiques et de génie industriel |
---|---|
Programme: | Maîtrise recherche en génie industriel |
Directeurs ou directrices: | Samuel Bassetto |
URL de PolyPublie: | https://publications.polymtl.ca/2666/ |
Université/École: | École Polytechnique de Montréal |
Date du dépôt: | 30 oct. 2017 13:30 |
Dernière modification: | 26 sept. 2024 10:27 |
Citer en APA 7: | Farnia, F. (2017). Low-Rate False Alarm Anomaly-Based Intrusion Detection System with One-Class SVM [Mémoire de maîtrise, École Polytechnique de Montréal]. PolyPublie. https://publications.polymtl.ca/2666/ |
---|---|
Statistiques
Total des téléchargements à partir de PolyPublie
Téléchargements par année
Provenance des téléchargements