An Evolutionary Ensemble Approach for Distributed Intrusion Detection

Similar documents
GP Ensemble for Distributed Intrusion Detection Systems

Approach Using Genetic Algorithm for Intrusion Detection System

Hybrid Feature Selection for Modeling Intrusion Detection Systems

Review on Data Mining Techniques for Intrusion Detection System

An Ensemble Data Mining Approach for Intrusion Detection in a Computer Network

International Journal of Scientific & Engineering Research, Volume 4, Issue 7, July-2013 ISSN

Selecting Features for Intrusion Detection: A Feature Relevance Analysis on KDD 99 Intrusion Detection Datasets

Data Mining for Intrusion Detection: from Outliers to True Intrusions

A study on fuzzy intrusion detection

INTRUSION DETECTION MODEL IN DATA MINING BASED ON ENSEMBLE APPROACH

Ensemble of Soft Computing Techniques for Intrusion Detection. Ensemble of Soft Computing Techniques for Intrusion Detection

Data Mining Based Online Intrusion Detection

Intrusion Detection System with FGA and MLP Algorithm

Genetic Programming for Data Classification: Partitioning the Search Space

A Data Mining Approach for Intrusion Detection System Using Boosted Decision Tree Approach

Boosting Algorithms for Parallel and Distributed Learning

Intrusion detection in computer networks through a hybrid approach of data mining and decision trees

Ensemble Image Classification Method Based on Genetic Image Network

A Software Architecture for Classifying Users in e-payment Systems

A Network Intrusion Detection System Architecture Based on Snort and. Computational Intelligence

Two Level Anomaly Detection Classifier

Intrusion Detection System Using New Ensemble Boosting Approach

A Detailed Analysis on NSL-KDD Dataset Using Various Machine Learning Techniques for Intrusion Detection

Preprocessing of Stream Data using Attribute Selection based on Survival of the Fittest

K-Nearest-Neighbours with a Novel Similarity Measure for Intrusion Detection

Intrusion Detection System based on Support Vector Machine and BN-KDD Data Set

A study of Intrusion Detection System for Cloud Network Using FC-ANN Algorithm

Deep Learning Approach to Network Intrusion Detection

Cluster Based detection of Attack IDS using Data Mining

OPTIMIZATION OF BAGGING CLASSIFIERS BASED ON SBCB ALGORITHM

Analysis of Feature Selection Techniques: A Data Mining Approach

Anomaly Based Network Intrusion Detection with Unsupervised Outlier Detection

DECISION TREE BASED IDS USING WRAPPER APPROACH

A Hybrid Approach for Misbehavior Detection in Wireless Ad-Hoc Networks

Parallelism in Knowledge Discovery Techniques

REVIEW OF VARIOUS INTRUSION DETECTION METHODS FOR TRAINING DATA SETS

Empirical Study of Automatic Dataset Labelling

Research Article An Adaptive Hybrid Multi-level Intelligent Intrusion Detection System for Network Security

RUSMA MULYADI. Advisor: Dr. Daniel Zeng

An Adaptive Growing Hierarchical Self Organizing Map for Network Intrusion Detection

ISSN: (Online) Volume 4, Issue 3, March 2016 International Journal of Advance Research in Computer Science and Management Studies

Naïve Bayes for text classification

Modeling Intrusion Detection Systems With Machine Learning And Selected Attributes

Dynamic Ensemble Construction via Heuristic Optimization

Domain Independent Prediction with Evolutionary Nearest Neighbors.

A Neuro-Fuzzy Classifier for Intrusion Detection Systems

Network Intrusion Detection Using Fast k-nearest Neighbor Classifier

Multiple Classifier Fusion With Cuttlefish Algorithm Based Feature Selection

Lecture Notes on Critique of 1998 and 1999 DARPA IDS Evaluations

Evolving SQL Queries for Data Mining

International Journal of Computer Engineering and Applications, Volume XII, Special Issue, March 18, ISSN

Metaheuristic Development Methodology. Fall 2009 Instructor: Dr. Masoud Yaghini

Effect of Principle Component Analysis and Support Vector Machine in Software Fault Prediction

Feature Selection in the Corrected KDD -dataset

Unsupervised clustering approach for network anomaly detection

Using Association Rules for Better Treatment of Missing Values

Novel Intrusion Detection using Probabilistic Neural Network and Adaptive Boosting

An Optimized Genetic Algorithm with Classification Approach used for Intrusion Detection

Model Generation for an Intrusion Detection System Using Genetic Algorithms

Late Parallelization and Feedback Approaches for Distributed Computation of Evolutionary Multiobjective Optimization Algorithms

Study of Machine Learning Based Intrusion Detection System

Data Reduction and Ensemble Classifiers in Intrusion Detection

Overview. Non-Parametrics Models Definitions KNN. Ensemble Methods Definitions, Examples Random Forests. Clustering. k-means Clustering 2 / 8

Distributed Pasting of Small Votes

Optimized Intrusion Detection by CACC Discretization Via Naïve Bayes and K-Means Clustering

Feature selection using closeness to centers for network intrusion detection

April 3, 2012 T.C. Havens

A Rough Set Based Feature Selection on KDD CUP 99 Data Set

Study on Classifiers using Genetic Algorithm and Class based Rules Generation

Multi-label classification using rule-based classifier systems

6, 11, 2016 ISSN: X

Combination of Three Machine Learning Algorithms for Intrusion Detection Systems in Computer Networks

An Unsupervised Approach for Combining Scores of Outlier Detection Techniques, Based on Similarity Measures

Intrusion Detection through Session Hijacking

Performance Analysis of various classifiers using Benchmark Datasets in Weka tools

CHAPTER 5 CONTRIBUTORY ANALYSIS OF NSL-KDD CUP DATA SET

Network Anomaly Detection

From Ensemble Methods to Comprehensible Models

Denial of Service (DoS) Attack Detection by Using Fuzzy Logic over Network Flows

A Parallel Evolutionary Algorithm for Discovery of Decision Rules

Anomaly Intrusion Detection System Using Hierarchical Gaussian Mixture Model

Optimization Model of K-Means Clustering Using Artificial Neural Networks to Handle Class Imbalance Problem

Important Roles Of Data Mining Techniques For Anomaly Intrusion Detection System

DDoS Attacks Detection Using GA based Optimized Traffic Matrix

On Dataset Biases in a Learning System with Minimum A Priori Information for Intrusion Detection

An Enhanced Genetic Algorithm based Intrusion Detection System for detection of Denial of-service Attacks B.Koustubha Madhavi [1]

Ensemble Methods, Decision Trees

ADVANCES in NATURAL and APPLIED SCIENCES

Information Fusion Dr. B. K. Panigrahi

Adaptive Boosting for Spatial Functions with Unstable Driving Attributes *

Intrusion Detection Based On Clustering Algorithm

McPAD and HMM-Web: two different approaches for the detection of attacks against Web applications

Clara Pizzuti. ISI-CNR, c/o DEIS. Univ. della Calabria Rende (CS), Italy.

Classification Of Attacks In Network Intrusion Detection System

Improving the Attack Detection Rate in Network Intrusion Detection using Adaboost Algorithm

SOMSN: An Effective Self Organizing Map for Clustering of Social Networks

A Distributed Agent-Based Approach to Intrusion Detection Using the Lightweight PCC Anomaly Detection Classifier

A Multi-agent Based Cognitive Approach to Unsupervised Feature Extraction and Classification for Network Intrusion Detection

Learning Intrusion Detection: Supervised or Unsupervised?

Ranking and Filtering the Selected Attributes for Intrusion Detection System

Transcription:

An Evolutionary Ensemble Approach for Distributed Intrusion Detection Gianluigi Folino, Clara Pizzuti, and Giandomenico Spezzano ICAR-CNR, Via P.Bucci 41/C, Univ. della Calabria 87036 Rende (CS), Italy {folino,pizzuti,spezzano}@icar.cnr.it Abstract. An architecture for a distributed intrusion detection system is proposed, and a genetic programming algorithm, extended with the ensemble paradigm, to classify malicious or unauthorized network activity is presented. The architecture is based on a distributed hybrid multiisland model that combines the two well known approaches adopted to parallelize genetic programming: the cellular and the island models. Each island contains a subpopulation and a cellular genetic program enhanced with the boosting technique, that generates a decision-tree predictor trained on the local data stored in the island, and cooperates with the others by exchanging the outermost individuals of the population. After the classifiers are computed, they are collected to form the GP ensemble. Experiments on the KDD Cup 1999 Data shows the proposed method obtains accuracy comparable to other approaches proposed for this kind of problem. 1 Introduction In this paper we propose an architecture for a distributed Intrusion Detection System (dids) and an intrusion detection algorithm (GEdIDS, Genetic programming Ensemble for Distributed Intrusion Detection Systems ) based on the ensemble paradigm that employs a Genetic Programming-based classifier as component learner. To run genetic programs we use a distributed environment based on a hybrid multi-island model [3] that combines the island model with the cellular model. Each node of the network is considered as an island that contains a learning component, based on cellular genetic programming, whose aim is to generate a decision-tree predictor trained on the local data stored in the node. Every genetic program, however, though isolated, cooperates with the neighboring nodes by collaborating with the other learning components located on the network and takes advantage of the cellular model by exchanging the outermost individuals of the population. A learning component employs the ensemble method AdaBoost.M2 [11], thus it evolves a population of individuals for a number of rounds, where a round is

a fixed number of generations. Every round the islands import the remote classifiers from the other islands and combine them with its own local classifier. Finally, once the classifiers are computed, they are collected to form the GP ensemble. In the distributed architecture proposed, each island thus operates cooperatively yet independently by the others, providing for efficiency and distribution of resources. This architecture gives significant advantages in scalability, flexibility, extensibility, and fault tolerance. To evaluate the system proposed, we performed experiments using the network records of the KDD Cup 1999 Data [2]. Experiments on this data set point out the capability of genetic programming in successfully dealing with the problem of distributed intrusion detection. The paper is organized as follows. The next section gives a brief description of Intrusion Detection Systems. Section 3 outlines the genetic programming based ensemble paradigm for distributed IDS. Section 4 describes the distributed programming environment and the architecture of the dids proposed. Finally, section 5 presents the results of our experiments. 2 Background Intrusion detection Systems originally were developed to examine the activity of a single computer to process operating system audit records. This approach quickly expanded to systems looking at network traffic, gathering information produced in different hosts. Currently the emphasis is on developing Intrusion Detection Systems able to manage large volumes of data coming from multiple computers in a distributed system. A Distributed Intrusion Detection System (dids) can be defined as a collection of multiple IDS spread over a large network, all of which communicate with each other to facilitate advanced network monitoring, incident analysis, and instant attack data [7]. One of the main advantages of dids is the ability to detect attack patterns across an entire network, with geographic locations dispersed over continents. The most important part of an IDS is its detection technique. Traditionally, signature-based detection techniques have been used to individuate intrusions. Such methods gather features from the network data and detect intrusions by comparing the feature values to a set of attack signatures provided by a human expert. The main drawback of these approaches is that they are not able to discover new types of attacks, since their signature is not contained in the signature database. This weakness has stimulated research in trying data mining techniques to solve this task. Data mining based intrusion detection approaches can be categorized in misuse detection [14, 4] and anomaly detection [13, 8]. In misuse detection, each instance in a set of data is labelled as normal or intrusion and a learning algorithm is trained over the labelled data. In anomaly detection a model is built over normal data and any deviation from the normal model in the new observed data is considered an intrusion. Misuse detection techniques reaches high degree

of accuracy in discovering known intrusions and their variant, but they need to be retrained if new types of attacks are added to the input data set. On the other hand, anomaly detection techniques could generate high false alarm rate because normal unseen instances that differ from the normal behavior modelled are considered anomalies. Genetic Programming for intrusion detection has not been explored very much. The first proposal is due to Crosbie and Spafford [6] which used agent technology to detect anomalous behavior in a system. Each autonomous agent was used to monitor a particular network parameter. However how to handle communication among the agents was not very clear. Linear Genetic Programming was proposed by Song et al. [18] to address the intrusion detection classification problem over the KDD CUP 1999 data set. An individual is represented as a linear list of instructions and evaluation corresponds to the process of program execution associated with a simple register machine. In section 5 a comparison of our results with those presented in [18] will be done. Linear GP is also adopted by Mukkamala et al. [16] to model intrusion detection systems and compare its performance with artificial neural networks and support vector machines. Another proposal for detecting novel attacks on network is presented by Lu and Traore [15]. The authors use Genetic programming to evolve rules whose aim is to discover attacks. In the next section we propose the ensemble paradigm as base framework to define a scalable and efficient distributed Intrusion Detection algorithm. 3 GP ensembles Ensemble is a learning paradigm where multiple component learners are trained for a same task by a learning algorithm, and the predictions of the component learners are combined for dealing with new unseen instances. Ensemble techniques have been shown to be more accurate than component learners constituting the ensemble [5, 17], thus such a paradigm has become a hot topic in recent years and has already been successfully applied in many application fields. A key feature of the ensemble paradigm, often not much highlighted, concerns its ability to solve problems in a distributed and decentralized way. Ensemble methods adopt the divide-and-conquer strategy that consists in breaking a problem into simpler subproblems of the same type, next to solve these subproblems, finally to amalgamate the obtained results into a solution to the problem. The ensemble method is an important and pervasive problem-solving technique to develop scalable applications on distributed high performance systems. We adopt such a paradigm for modelling distributed intrusion detection systems and investigate the suitability of genetic programming (GP) as component learner. A GP ensemble offers several advantages over a monolithic GP that uses a single GP program to solve the intrusion detection task. First, it can deal with very large data sets. Second, it can make an overall system easier to understand, modify and implement in a distributed way. Finally, it is more robust than a

monolithic GP, and can show graceful performance degradation in situations where only a subset of GPs in the ensemble are performing correctly. One of the disadvantages of such an approach is the loss of interaction among the individual GPs during the learning phase. In fact, the individual GPs are often trained independently or sequentially. To overcome this drawback we propose a method that emphasizes the cooperation among the individual GPs in the ensemble during the building of the solution. Our approach is based on the use of cooperative GP-based learning programs that compute intrusion detection models over data stored locally at a site, and then integrate them by applying a majority voting algorithm. The models are built using the local audit data generated on each node by, for example, operating systems, applications, or network devices so that each ensemble member is trained on a different training set. The GP classifiers cooperate using a multi-island model to produce the ensemble members. Each node is an island and contains a GP-based learning component whose task is to build a decision tree classifier by collaborating with the other learning components located on the network. Each learning component evolves its population for a fixed number of iterations and computes its classifier operating on the local data. Each island may then import (remote) classifiers from the other islands and combine them with its own local classifier. Finally, once the classifiers are computed, they are collected to form the GP ensemble. Diversity is an important problem that must be considered for forming successful ensembles. Genetic programming, differently from ensemble methods that need to resampling the training data to induce diversity [5], does not require any change in a training set to generate individuals of different behaviors. In [10] it is shown that GP enhanced with a boosting technique improves both the prediction accuracy and the running time with respect to the standard GP. We adopt the extension of GP with the AdaBoost.M2 algorithm as component learner to construct classification models for intrusion detection. Next section describes the distributed architecture for intrusion detection based on GP ensembles that use a hybrid multi-island model to monitor securityrelated activity within a network. Each island uses an extended GP model with the boosting technique and operates cooperatively yet independently by the others, providing for efficiency and distribution of resource. This architecture provides significant advantages in scalability, flexibility, extensibility, fault tolerance. 4 The architecture for dids In order to run GP ensembles a distributed computing environment is required. We use dcage (distributed Cellular Genetic Programming System) a distributed environment to run genetic programs by a multi-island model, which is an extension of [9]. We implemented a hybrid variation of the classic multi-island model that leads not only to a faster algorithm, but also to superior numerical

performance. The hybrid model combines the island model with the cellular model. Island model is based on subpopulations, that are created by dividing the original population to disjunctive subsets of individuals, usually of the same size. Each subpopulation can be assigned to one processor and a standard (panmictic) GP algorithm is executed on it. Occasionally, migration process between subpopulation is carried out after a fixed number of generations. For example, the k best individuals from one subpopulation are copied to the other subpopulations exchanging the genetic information between populations. The hybrid model modifies the island model by substituting the standard GP algorithm with a cellular GP (cgp) algorithm [9]. In the cellular model each individual has a spatial location, a small neighborhood and interacts only within its neighborhood. The main difference in a cellular GP, with respect to a panmictic algorithm, is its decentralized selection mechanism and the genetic operators (crossover, mutation) adopted. In dcage, to take advantage of the cellular model of GP, the cellular islands are not independently evolved, but the outmost individuals are asynchronously exchanged so that all islands can be thought as portions of a single population. dcage distributes the evolutionary processes (islands) that implement the detection models over the network nodes using a configuration file that contains the configuration of the distributed system. dcage implements the hybrid model as a collection of cooperative autonomous islands running on the various hosts within an heterogeneous network that work as a peer-to-peer system. Each island, employed as a peer IDS, is identical to each other except one that is supposed to be the collector island. The procedure to appoint one island as a collector can be done by means of election algorithms [12]. the collector island is in charge of collecting the GP classifiers from the other nodes and to redistribute the GP ensemble for future predictions to all network nodes. Respect to the other islands, it has some more duties for administration. The configuration of the structure of the processors is based on a ring topology. The pseudo-code of the algorithm is shown in figure 1. Each island is furnished with a cgp algorithm enhanced with the boosting technique AdaBoost.M2, a population initialized with random individuals, and operates on the local audit data weighted according to a uniform distribution. The selection rule, the replacement rule and the asynchronous migration strategy are specified in the cgp algorithm. Each peer island generates the GP classifier iterating for a certain number of iterations necessary to compute the number of boosting rounds. During the boosting rounds, each classifier maintains the local vector of the weights that directly reflect the prediction accuracy on that site. At each boosting round the hypotheses generated by each classifier are stored and combined in the collector island to produce the ensemble of predictors. Then the ensemble is broadcasted at each island to locally recalculate the new vector of the weights. After the execution of the fixed number of boosting rounds, the classifiers are used to evaluate the accuracy of the classification algorithm for intrusion detection on the test set.

Given a network constituted by P nodes, each having a data set S j For j = 1, 2,..., P (for each island in parallel) Initialize the weights associated with each tuple Initialize the population Q j with random individuals end parallel for For t = 1,2,3,..., T (boosting rounds) For j = 1, 2,..., P (for each island in parallel) Train cgp on S j using a weighted fitness according to the weight distribution Compute a weak hypothesis end parallel for Exchange the hypotheses among the P islands Update the weights end for t Output the hypothesis Fig. 1. The GEdIDS algorithm using AdaBoost.M2 5 Experimental results We performed experiments over the KDD Cup 1999 Data set [2]. This data set comes from the 1998 DARPA Intrusion Detection Evaluation Data [1] and contains a training data consisting of 7 weeks of network-based attacks inserted in the normal data, and 2 weeks of network-based attacks and normal data for a total of 4,999,000 of connection records described by 41 characteristics. The main categories of attacks are four: Dos (Denial Of Service), R2L (unauthorized access from a remote machine), U2R (unauthorized access to a local superuser privileges by a local unprivileged user), PROBING (surveillance and probing). However a smaller data set consisting of the 10% the overall data set is generally used to evaluate algorithm performance. In this case the training set consists of 494,020 records among which 97,277 are normal connection records, while the test set contains 311,029 records among which 60,593 are normal connection records. Table 1 shows the distribution of each attack type in the training and the test set. Table 1. Class distribution for training and test data for KDDCUP 99 dataset Normal Probe DoS U2R R2L Total Train 97277 4107 391458 52 1126 494020 Test 60593 4166 229853 228 16189 311029

The experiments were performed by assuming a network composed by 10 dual-processor 1,133 Ghz Pentium III nodes having 2 Gbytes of memory. The training set of 499,467 tuples was equally partitioned among the 10 nodes, thus containing 1/10 of instances for each class. On each node we run AdaBoost.M2 as base GP classifier with a population of 100 elements for 10 rounds, each round consisting of 100 generations. The GP parameters used where the same for each node and. All the experiments have been obtained by running the algorithm 10 times and averaging the results. Each ensemble have been trained on the train set and then evaluated on the test set. To evaluate the system, besides the classical accuracy measure, the two standard metrics of detection rate and false positive rate developed for network intrusions, have been used. Detection rate is computed as the ratio between the number of correctly detected attacks and the total number of attacks, that is #T ruep ositive DR = #F alsenegative+#t ruep ositive. False positive ( also said false alarm) rate is computed as the ratio between the number of normal connections that are incorrectly classifies as attacks and the total number of normal connections, that #F alsealarm #T ruenegative+#f alsealarm is F P =. These metrics are important because they measure the percentage of intrusions the system is able to detect and how many misclassifications it makes. Table 2. Main parameters used in the experiments Name Value max depth for new trees 6 max depth after crossover 17 max mutant depth 2 grow method RAMPED selection method GROW crossover func pt fraction 0.7 crossover any pt fraction 0.1 fitness prop repro fraction 0.1 parsimony factor 0 The results of our experiments are summarized in table 3 where the detection rate, false positive rate, and accuracy are reported after 2, 5, and 10 rounds of the boosting algorithm. For each of them the table shows the average values obtained by running the algorithm 10 times, and the best values obtained with respect to the false positive and detection rates. The table shows that increasing the number of boosting rounds has a positive effect on both the false positive rate and accuracy, while the average detection rate slightly diminishes, though the best value obtained among the 10 executions improves. The confusion matrices, tables 4, 5, 6 after 2, 5, and 10 rounds, respectively, attained on the test set by averaging the 10 confusion matrices coming from 10 different executions of

GEdIDS are displayed. The tables points out that the prediction accuracy is worse on the two classes U2R and R2L. This result is probably explained by the discrepancy between the number of instances used to train each classifiers on every node and the number of instances to classify in the test set. Table 7 compares our approach with the first and second winner of the KDD-99 CUP competition and the linear genetic programming approach proposed by Song et al. [18]. The table shows the values of the standard metrics described above. From the table we can observe that the performance of GEdIDS is very good compared with that of the two winning entries and better than Linear GP. In fact, the average GEdIDS detection rate is 0.905812 while those of the first two winners are 0.908819 and 0.915252. However the detection rate value of the best of the 10 GEdIDS runs is 0.910165, which is better than the winning entry. As regards the false positive rate the average value of GEdIDS 0.005648 is lower than the second entry, while the best value obtained 0.004340 is lower than both the first and second entries. Thus the best solution found by GEdIDS overcomes the winning entry. In any case our results overcome those obtained with linear GP. These experiments emphasizes the capability of genetic programming to deal with this kind of problem. Table 3. Detection Rate and False Positive Rate for GEdIDS (avg, best Det. Rate and Best False Pos. Rate) for 2, 5 and 10 rounds. Detection Rate FP Rate Accuracy Avg GEdIDS 0.907483 0.023154 0.901569 2 rounds Best Det. Rate 0.910267 0.045658 0.909548 Best FP Rate 0.903428 0.012931 0.911478 Avg GEdIDS 0.907038 0.008324 0.917586 5 rounds Best Det. Rate 0.911434 0.013632 0.919644 Best FP Rate 0.908815 0.004621 0.920468 Avg GEdIDS 0.905812 0.005648 0.918624 10 rounds Best Det. Rate 0.911522 0.005941 0.923592 Best FP Rate 0.910165 0.004340 0.923782 Table 4. Confusion matrix (averaged over all tries) for GEdIDS (2 rounds) Normal Probe DoS U2R R2L Normal 59190.0 77.2 913.5 82.2 330.1 Probe 1251.6 652.0 2027.4 55.3 179.7 DoS 8950.5 77.0 220158.6 175.4 491.5 U2R 101.7 4.2 106.8 4.7 10.6 R2L 12865.7 58.3 2209.4 646.6 409.0

Table 5. Confusion matrix (averaged over all tries) for GEdIDS (5 rounds) Normal Probe DoS U2R R2L Normal 60088.6 181.4 235.8 23.2 64.0 Probe 835.2 2863.4 321.0 33.8 112.6 DoS 7331.4 567.4 221913.0 10.0 31.2 U2R 94.4 53.4 47.8 6.8 25.6 R2L 15020.0 55.0 396.6 193.2 524.2 Table 6. Confusion matrix (averaged over all tries) for for GEdIDS (10 rounds) Normal Probe DoS U2R R2L Normal 60250.8 200.2 110.8 15.4 15.8 Probe 832.8 2998.4 263.6 26.4 44.8 DoS 7464.2 465.0 221874.8 19.2 29.8 U2R 139.6 45.2 17.2 11.8 14.2 R2L 15151.4 48.6 232.4 173.8 582.8 Table 7. Comparison with kdd-99 cup winners and other approaches Algorithm Detection Rate FP Rate Winning Entry 0.908819 0.004472 Second Place 0.915252 0.005760 Best Linear GP - FP Rate 0.894096 0.006818 Avg GEdIDS 0.905812 0.005648 Best GEdIDS - FP Rate 0.910165 0.004340 6 Conclusions We proposed an architecture for a distributed intrusion detection system, and a genetic programming based intrusion detection algorithm, extended with the ensemble paradigm, to classify malicious or unauthorized network activity. The architecture is based on a distributed hybrid multi-island model by combining the cellular and the island models. Experimental results showed the the suitability of genetic programming as component learner of the ensemble for this kind of

problems. Future research aims at extending the method for data streams that change online on each node of the network. Acknowledgments This work has been supported by MIUR programme L.449/97 Enabling ITC distributed complex platforms and by FIRB strategic project on Enabling Technologies for Information Society, Grid.it( RBNE01KNFP). References 1. Defense advanced research project agency darpa- intrusion detection evaluation. In http://www.ll.mit.edu/ist/ideval/index.html, 1998. 2. The third international knowledge discovery and data mining tools competition dataset kdd99-cup. In http://kdd.ics.uci.edu/databases/kddcup99/kddcup99.html, 1999. 3. E. Alba and M. Tomassini. Parallelism and evolutionary algorithms. IEEE Transaction on Evolutionary Computation, 6(5):443 462, October 2002. 4. D. Barbara, N. Wu, and S. Jajodia. Detecting novel network intrusions using bayes estimator. In First SIAM Conference on Data Mining, 2001. 5. Leo Breiman. Bagging predictors. Machine Learning, 24(2):123 140, 1996. 6. M. Crosbie and G. Spafford. Applying genetic programming techniques to intrusion detection. In Proceedings of the AAAI Fall Symposium Series. AAAI Press, November 1995. 7. N. Einwechter. An introduction to distributed intrusion detection systems. In http://www.securityfocus.com/infocus/1532, 2002. 8. E. Eskin, A. Arnold, M. Prerau, L. Portnoy, and S. Stolfo. A geometric framework for unsupervised anomaly detection : Detecting intrusions in unlabeled data. In Applications of Data Mining in Computer Security, Kluwer, 2002. 9. G. Folino, C. Pizzuti, and G. Spezzano. A scalable cellular implementation of parallel genetic programming. IEEE Transaction on Evolutionary Computation, 7(1):37 53, February 2003. 10. G. Folino, C. Pizzuti, and G. Spezzano. Boosting technique for combining cellular gp classifiers. In M. Keijzer, U. O Reilly, S.M: Lucas, E. Costa, and T. Soule, editors, Proceedings of the Seventh European Conference on Genetic Programming (EuroGP-2004), volume 3003 of LNCS, pages 47 56, Coimbra, Portugal, 2004. Springer Verlag. 11. Y. Freund and R. Schapire. Experiments with a new boosting algorithm. In Proceedings of the 13th Int. Conference on Machine Learning, pages 148 156, 1996. 12. H. Garcia-Molina. Elections in a distributed computing system. IEEE Trans. Computer, 31(1):48 59, 1982. 13. A. Lazarevic, L. Ertoz, V. Kumar, A. Ozgur, and J. Srivastava. A comparative study of anomaly detection schemes in network intrusion detection. In Proc. SIAM Int. Conf. on Data Mining (SIAM-03), 2003. 14. W. Lee and S.J. Stolfo. Data mining approaches for intrusion detection. In Proc. of the 1998 USENIX Security Symposium, pages 66 72, 1998. 15. Wei Lu and Issa Traore. Detecting new forms of network intrusion using genetic programming. In Proc. of the Congress on Evolutionary Computation CEC 2003, pages 2165 2173. IEEE Press, 2003.

16. Srinivas Mukkamala, Andrew H. Sung, and Ajith Abraham. Modeling intrusion detection systems using linear genetic programming approach. In 17th International Conference on Industrial and Engineering Applications of Artificial Intelligence and Expert Systems, IEA/AIE 2004, pages 633 642, Ottawa, Canada, 2004. 17. J. Ross Quinlan. Bagging, boosting, and c4.5. In Proceedings of the 13th National Conference on Artificial Intelligence AAAI96, pages 725 730. Mit Press, 1996. 18. D. Song, M.I. Heywood, and A. Nur Zincir-Heywood. A linear genetic programming approach to intrusion detection. In Proceedings Of the Genetic and Evolutionary Computation Conference GECCO 2003, pages 2325 2336. LNCS 2724, Springer, 2003.