Contriubtions du CRIL dans le cadre de l’ACI Daddi Mars 2006 Présenté par: Zied Elouedi zied.elouedi@gmx.fr
Introduction Traitement du problème de détection d’intrusions comme un problème de classification.
Modèle de classification Ensemble d’apprentissage Classifieur Choix de la technique Phase de construction (apprentissage) Phase de classification (inférence) Certain Incertain Certain Incertain
Cadre stanadrd
Ensemble d’apprentissage certain (détection d’intrusions) Nature des connexions Protocole Service Flag Classe tcp http SF Normal RSTO REJ Probing time SO DOS auth private udp domain_u …
Techniques utilisées Arbres de décision Réseaux Bayésiens naïfs Une technique de classification. Expression simple de la connaissance. Compréhension et interprétation facile des résultats. Réseaux Bayésiens naïfs Un nœud racine (classe). Plusieurs nœuds enfants (attributs). Forte hypothèse (naïve) d'indépendance entre les enfants. dans le contexte de leur parent.
Arbres de décision flag protocole service D N service N P D P N P SF RSTO REJ protocole service D tcp udp http private domain-u N service N P D http private domain-u Expression simple de la connaissance. Compréhension et interprétation facile des résultats. P N P Nouvelle connexion udp Private C=? SF
Réseaux Bayésiens naïfs Classe P(Classe) Flag Protocole Service P(Protocole | Classe) P(Service | Classe) P(Flag | Classe) Nouvelle connexion udp Private C=? RSTO E Max P(Classes | E)
Méta-classifieur AD RBN Méta-classifieur AD+RBN Type de la connexion
Arbre de décision crédibiliste Cadre incertain: Arbre de décision crédibiliste (BDT)
Ensemble d’apprentissage incertain Protocole Service Flag Classe tcp http SF Normal RSTO REJ Probing ou DOS time Probing SO DOS auth ? private DOS avec degré 1 et U2R avec degré 2 udp domain_u DOS avec degré 1 et (U2R ou R2L) avec degré 2
Théorie des fonctions de croyance Fonction de masse de croyance élémentaire (bba) m(A) Partie de croyance attribuée exactement à A m: 2 [0,1] Exemple = {A, H, M}; A: Avion; H: Hélicoptère; M: Missile 2 = {, {A}, {H}, {M}, {A, H}, {A, M}, {H, M},{A, H, M}} m({A}) = 0.6; m({A, H}) = 0.2; m() = 0.2
Idée Utilisation de la théorie des fonctions de croyance qui permet: L'expression des croyances partielles. La possibilité d'exprimer l'ignorance partielle ou totale. Le traitement des jugements subjectifs et personnels. La représentation des informations mathématiques et épistémiques. La combinaison de l’évidence survenue de plusieurs sources d’information. L’adaptation aux systèmes de raisonnement (système expert, système d’aide à la décision, IDS,…).
Théorie des fonctions de croyance Combinaison Règle conjonctive: Construire une bba quand toutes les pièces d’évidence sont acceptées. Règle disjonctive: Construire une bba quand au moins une pièce d’évidence est acceptée mais on ne connaît pas laquelle. Exemple m1({A}) = 0.6; m1({A, H}) = 0.2; m1() = 0.2; m2({H}) = 0.4; m2({A, H}) = 0.3; m2() = 0.3; Règle conjonctive: (m1m2)() = 0.24; (m1m2)({A}) = 0.36; (m1m2)({H})=0.16; (m1m2)({A, H}) = 0.18; (m1m2)() = 0.06; Règle disjonctive: (m1 m2)({A, H}) = 0.56; (m1 m2)() = 0.44;
Théorie des fonctions de croyance Prise de décision Niveau de croyance Niveau pignistique Transformation pignistique Exemple m({H}) = 0.4; m({A, H}) = 0.3; m() = 0.3 betP({A}) = 0.25; betP({H}) = 0.65; betP({M}) = 0.1;
Exemple Protocole Service Flag Classe tcp http SF m{I1} RSTO m{I2} REJ time m{I4} SO m{I5} auth m{I6} m{I7} private m{I8} m{I9} m{I10} m{I11} m{I12} udp domain_u m{I13} m{I14} m{I15} m{I16} m{I17}
Connexions d’apprentissage N : Normal; D: DOS; U: U2R; R: R2L; P: Probing tcp http N SF m{I1} m{I1}(N) = 1 tcp http REJ m{I2} P D m{I2}(P D) = 1 tcp auth m{I3} SF N(70%),D(30%) m{I3}(N) = 0.7; m{I3}(D) = 0.3
Connexions d’apprentissage udp private m{I4} SF D(60%),U R(40%) m{I4}(D) = 0.6; m{I4}(U R) = 0.4 udp domain-u m{I5} SF N(80%),? m{I5}(N) = 0.8; m{I5}() = 0.2 = {N, D, P, U, R} tcp auth m{I6} SO ? m{I6}() = 1
Arbre de décision crédibiliste Arbres de décision crédibilistes (BDT) Arbres de décision + Théorie des fonctions de croyance (TBM) Arbre de décision crédibiliste Traiter l’incertitude au niveau de la détection d’intrusions
Arbres de décision crédibilistes (BDT) flag SF protocol-type RSTO udp tcp http domain-u private service REJ m1 m5 m6 m4 m3 m2 m7 m8 Comment construire un classifieur (BDT) avec des classes de connexions d’apprentissages incertaines ?
Le principe: Mesure de sélection d’attributs Stratégie de partitionnement Critères d’arrêt Structure des feuilles
Mesure de sélection d’attributs Extension de l’algorithme de Quinlan (C4.5). Approche par moyenne Adaptation du ratio de gain au conexte incertain Utilisation de distance entre les objets. Approche conjunctive Basée sur les concepts de base du TBM
Choisir l’attribut qui offre le plus de ratio de gain Approche par moyenne Ensemble d’apprentissage T I4 I1 I2 I3 m{I1} m{I2} m{I3} m{I4} . L’entropie de la distribution des classes dans T. L’entropie de la distribution des classes dans les sous ensembles d’apprentissage (suite au partitionnement). Calculer la ratio de gain de chaque attribut. Choisir l’attribut qui offre le plus de ratio de gain (le plus discriminant)
Approche conjunctive Ensemble d’apprentissage T m{I1} m{I2} m{I3} m{I4} . I4 I1 I2 I3 Développer une distance entre bba’s Tous les objets d’une feuiles doivent être proches les uns des autres Minimiser la distance intra-groupe. Maximiser la distance inter-group.
Création d’une branche pour chaque valeur d’attributs. Stratégie de pratitionnement Attributs symboliques Création d’une branche pour chaque valeur d’attributs. Attributs continus Découper en sous-ensembles ordonnés
Critères d’arrêt Le nœuds contient une seule connexion (objet). Le nœud contient des connexions ayant la même bba. Il n’ y a plus d’attributs à tester. La valeur de la mesure de sélection sur les attributs restants est inférieure ou égale à zéro.
Structure d’une feuille bba sur les classes Un seul objet appartenant à la feuille bba de la feuille = bba de l’objet Plusieurs objets appartenant à la feuille bba de la feuille = bba jointe
Comment utiliser le BDT pour trouver les classes des connexions ? Arbres de décision crédibilistes (BDT) flag SF protocol-type RSTO udp tcp http domain-u private service REJ m1 m5 m6 m4 m3 m2 m7 m8 Comment utiliser le BDT pour trouver les classes des connexions ?
Classification off-line Valeurs d’attributs disponibles flag: RSTO service: http Protocol-type: udp flag SF protocol-type RSTO udp tcp http domain-u private service REJ m1 m5 m6 m4 m3 m2 m7 m8 m6(Probing) =0.5; m6() = 0.5 Normal: 0.1 Dos: 0.1 U2R: 0.1 R2L: 0.1 Probing: 0.6
Classification off-line/on-line Qu’en est-il de la classification on-line/anticipée ? Est-ce qu’on peut arrêter une connexion (douteuse) avant sa terminaison ?
Cas disjonctif valeurs d’attributs disjonctives flag protocol-type flag: RSTO service: http domain-u Protocol-type: udp flag SF protocol-type RSTO udp tcp http domain-u private service REJ m1 m5 m6 m4 m3 m2 m7 m8 Règle disjonctive: m6 m7 Normal: 0.05; Dos: 0.05; U2R: 0.05 R2L: 0.05: Probing: 0.8
Cas des valeurs manquantes valeurs d’attributs manquantes flag: SF service: http protocol-type: ? flag SF protocol-type RSTO udp tcp http domain-u private service REJ m1 m5 m6 m4 m3 m2 m7 m8 Règle disjonctive: m1 m2 Normal: 0; Dos: 0.8; U2R: 0 R2L: 0; Probing: 0.2
Cas général: attributs incertains Incertitude dans les valeurs de certains attributs bba pour chaque attribut flag: m(RSTO) = 1 service: m(http domain-u) = 0.8; m(private) = 0.2 protocol-type: m(udp) = 0.6; m(udp tcp) = 0.4 flag SF RSTO REJ protocol-type m5 service tcp udp http private domain-u m1 service m6 m8 m7 http private domain-u Tenir compte de toutes les bba’s m2 m4 m3
Arbre de décision possibiliste (Approche qualitative) Cadre incertain: Arbre de décision possibiliste (Approche qualitative)
Exemple flag service count wrong_fragment SF 3 REJ 4 RSTO 1 http 1 domain-u 3 private 1 <1 2 >=1, <=46 1 >46 2 flag service count >0 1 <=0 3 wrong_fragment
Théorie des possibilités Distribution de possibilités : : [0,1] Possible / Impossible : ()=1 / ()=0, Ignorance : , () = 1 Normalisation : / ()=1 Ordinale Numérique A(a1) > A(a2) : A= a1 est plus plausible que A= a2 complètement possible (()=1) quelque peu possible totalement impossible (()=0) Minimum Produit
Arbres de décision possibilistes + Théorie des possibilités Différentes façons pour classer des connexions avec des attributs incertains/manquants en utilisant la théorie des possibilités.
Travail effectué Plusieurs propositions: Méthode basée sur les opérateurs Min/max ou Min/leximax Méthode basée sur les opérateurs Min/leximax Méthode basée sur les opérateurs Leximin/leximax
Méthode basée sur le Leximin/leximax Établir un pré-ordre total de tous les chemins utilisant l’opérateur leximin Sélectionner un premier ensemble des classes candidates correspondant aux classes libellant les meilleurs chemins dans le pré-ordre total. Si cet ensemble contient plus qu’une classe, il faut le raffiner en sélectionnant les classes leximax préférées en utilisant l’ordre leximin-leximax.
Exemple SF 3 REJ 4 RSTO 1 http 1 domain-u 3 private 1 <1 2 >=1, <=46 1 >46 2 flag service count >0 1 <=0 3 wrong_fragment service http private domain-u 1 1 3 count flag P (P4) >46 <=46 SF REJ RSTO 2 1 3 3 4 1 N (P1) count Wrong_fragment Wrong_fragment P (P9) >=1 <1 <=0 >0 <=0 >0 3 1 2 2 1 3 1 1 D (P5) N (P2) N (P6) P (P7) N (P8) D (P3) 3 3 4 4 3 1 P3 =leximinP9 >leximinP1>leximinP2 =leximinP4=leximin P6 >leximinP5 >leximinP8 >leximinP7
Donc la classe candidate est P Exemple service http private domain-u 1 1 3 count flag P (P4) >46 <=46 SF REJ RSTO 2 1 3 3 4 1 C={ P, D} P=(P9, P4, P7) >leximin-leximax D=(P3, P5) N (P1) count Wrong_fragment Wrong_fragment P (P9) >=1 <1 <=0 >0 <=0 >0 3 1 2 2 1 3 1 1 D (P5) N (P2) D (P3) N (P6) P (P7) N (P8) 3 3 4 4 3 1 P3 =leximinP9 >leximinP1>leximinP2 =leximinP4=leximin P6 >leximinP5 >leximinP8 >leximinP7 Donc la classe candidate est P
Autre options Arbres de décision possibiliste (incertitude au niveau de l’apprentissage). Arbres de décision qualitatifs (possibilistes) avec options Evaluation des classifieurs
Travaux en cours Réseaux naïfs crédibilistes Réseaux naïfs possibilistes Expérimentations
Publications "Qualitative classification with possibilistic decision trees" Nahla Ben Amor, Salem Benferhat, Zied Elouedi, Chapitre of The Tenth International Conference on Information Processing and Management of Uncertainty in Knowledge-Based Systems IPMU 2006. "Réseaux Bayésiens naïfs et arbres de décision dans les systèmes de détection d'intrusions" Nahla Ben Amor, Salem Benferhat, Zied Elouedi, A paraître dans le journal Technique et Science Informatiques (TSI), 2006. "Qualitative inference in possibilistic option decision trees“ Ilyes Jenhani, Zied Elouedi, Nahla Ben Amor, Khaled. Mellouli, The Eighth European Conference of Symbolic and Quantitative Approaches to Reasoning with Uncertainty ECSQARU-2005, Barcelone, Espagne, 944-955, 6-8 Juillet 2005. "Towards a definition of evaluation criteria for probabilistic classifiers“ Nahla Ben Amor, Salem Benferhat, Zied Elouedi, The Eighth European Conference of Symbolic and Quantitative Approaches to Reasoning with Uncertainty ECSQARU-2005, Barcelone, Espagne, 921-931,6-8 Juillet 2005. “On the combination of Naïve Bayes and decision trees for intusion detection“ Salem Benferhat, Karim Tabia, The International Conference of Intelligence, Control and Automation, CIMCA 2005.