Application des systèmes immunitaires artificiels à la détection d

publicité
République Algérienne Démocratique et Populaire
Ministère de l’Enseignement Supérieur et de la Recherche Scientifique
Université des Sciences et de la Technologie d’Oran – Mohamed Boudiaf
USTO-MB
Faculté des Sciences
Département d’Informatique
MEMOIRE
En vue de l’obtention du Diplôme de Magister
Spécialité : Informatique
Option : Modélisation et Simulation (MOSI)
Présenté par : Mr SLIMANI Ahmed
Thème :
Application des systèmes immunitaires
artificiels à la détection d’intrusion
Soutenu devant le jury:
- Président
Mr. A. BENYETTOU
Professeur
USTOMB
- Rapporteur
Mr. M .BE NYETTOU Professeur
USTOMB
-Examinateur
Mr. K. BELKADI
- Examinateur
Mr. K. SADOUNI
maitre de conférences
maitre de conférences
2010- 2011
USTOMB
USTOMB
Dédicaces
Je dédie ce modeste travail à :
- Mes chers parents qui m’avoir énormément encouragé et soutenu
pendant la réalisation de ce travail, que je ne pourrai assez
remercier de m’avoir apporté le nécessaire.
- Mes chers frères, sœurs et toute la famille de SLIMANI.
- Ma deuxième famille SLIMANI à Oran
- Mes chers frères de la mosquée « el-rachad » cité universitaire C1
- A mes chers amis
- A mes collègues du laboratoire LAMOSI et tous les étudiants
d’université USTO
- Tous ceux qui m’ont aidé de prés ou de loin surtout dans les
moments les plus difficiles.
A tous, je dédie ce modeste travail. ……
Mr. SLIMANI Ahmed.
Remerciements
Tout d’abord je remercie le bon dieu tout puissant qui ma guidé
dans mes pas, qui ma donné le courage, la volonté, et la patience pour
surmonter les épreuves que j’ai rencontré tout au long de ma vie.
Je tiens à exprimer ma sincère gratitude et reconnaissance à mon
encadreur : Mr Mohammed BENYETTOU professeur à l’USTOMB et
responsable de laboratoire LAMOSI pour avoir accepté de diriger ce
travail, pour son aide, sa disponibilité et ses conseils.
Mes remerciements vont aussi à Monsieur Mr Abdelkader
BENYETTOU professeur à l’USTOMB et responsable de l’option
RFIA qui nous a fait l’honneur de présider ce jury.
Je remercie Mr Khaled BELKADI maitre de conférences à
l’USTOMB d’avoir accepté d’examiner ce travail.
Je remercie Mr Kaddour SADOUNI maitre de conférences à
l’USTOMB d’avoir accepté d’examiner ce travail.
Mes remerciements s’adressent à tous mes collègues du
laboratoire LAMOSI.
Enfin je remercie toute personne ayant contribué de prés ou loin à
la réalisation de ce travail.
Mr. Ahmed SLIMANI
Résumé
Face aux nouvelles technologies de l’information et de la communication, apparues avec
l’avènement des réseaux et d’internet, la sécurité informatique est devenue un défi majeur, et les
travaux dans cet axe de recherche sont de plus en plus nombreux.
Divers outils et mécanismes sont développés afin de garantir un niveau de sécurité à la
hauteur des exigences de la vie moderne. Parmi eux, les systèmes de détection d’intrusions destinés à
repérer des activités ou comportements anormaux suspects de nuire au bon fonctionnement du
système.
L’objet de ce mémoire est la conception et la réalisation d’un IDS (Intrusion detection
system) inspiré des systèmes immunitaires naturels. L’étude de systèmes biologiques afin de s’en
inspirer pour la résolution de problèmes informatiques est un axe de l’intelligence artificielle qui a
donné naissance à des méthodes robustes et efficaces (colonies de fourmis, algorithmes génétiques,
réseaux de neurones …etc.). De part leur fonction naturelle, les systèmes immunitaires ont suscité
l’intérêt des chercheurs dans le domaine de la détection d’intrusion, compte tenu des similitudes des
objectifs d’un SIN (système immunitaire naturel) et d’un IDS.
Dans le cadre de ce travail on propose un IDS basé sur le système immunitaire artificiel qui
s’inspire du système immunitaire naturel en utilisant la base de données KDD99. L’algorithme analyse
les connexions réseaux afin de les classer comme normale ou anormales. Les résultats expérimentaux
montrent que le système est performant avec un taux de
reconnaissance satisfaisant.
Mots clés : Système de détection d’intrusions, systèmes immunitaires naturels, systèmes
immunitaires artificiels, KDD99.
Abstract
In view of new communication and information technologies that appeared with the
emergence of networks and Internet, the computer security became a major challenge, and
works in this research axis are increasingly numerous.
Various tools and mechanisms are developed in order to guarantee a safety level up to the
requirements of modern life. Among them, intrusion detection systems (IDS) intended to locate
activities or abnormal behaviors suspect to be detrimental to the correct operation of the system.
The purpose of this work is the design and the realization of an IDS inspired from
natural immune systems. The study of biological systems to get inspired from them for the
resolution of computer science problems is an axis of the artificial intelligence field which gave
rise to robust and effective methods (ants colonies, genetic algorithms, neuron networks… etc)
Within the framework of this work one proposes IDS based on the artificial immune system
which takes as a starting point the natural immune system by using the base of data KDD99. The
algorithm analyzes connections networks in order to classify them like normal or abnormal. The
experimental results show that the system is powerful with a satisfying rate of recognition.
Key words: intrusions detection System, natural immune system, artificial immune systems,
KDD99.
Sommaire
Introduction général .......................................................................................................................................... 1
Chapitre 01 : Introduction à la sécurité informatique .............................................................................. 3
1- La sécurité informatique ........................................................................................................................... 4
2- Services et mécanismes de sécurité .......................................................................................................... 5
2.1. Les services de sécurité ..................................................................................................................... 5
2.2. Les mécanismes de sécurité ............................................................................................................. 6
3- Services et mécanismes de sécurité .......................................................................................................... 8
3.1 Types d’attaques .................................................................................................................................. 9
3.2 Profils et capacités des attaquants...................................................................................................... 9
4- Quelques possibilités en matière de sécurité réseaux ......................................................................... 10
4.1 Les Firewalls .................................................................................................................................10
4.2 Les filtres de paquets....................................................................................................................11
4.3 Les scanners et les outils relatifs à la sécurité .............................................................................11
4.4 Les systèmes de détection d’intrusions ........................................................................................12
5- Conclusion ..........................................................................................................................................12
Chapitre 02 : Détection d’intrusion ............................................................................................................. 13
1- Introduction ............................................................................................................................................ 14
2- Intrusions informatiques ......................................................................................................................... 14
2.1 Types de pirates informatique ......................................................................................................... 15
2.2 Différentes phases d’une attaque ..................................................................................................... 15
2.3 contre- mesures .................................................................................................................................. 18
3- Systèmes de détection d’intrusions ........................................................................................................ 18
3.1 Introduction ...................................................................................................................................... 18
3.1.1 C’est Quoi la détection d’intrusion ? ................................................................................... 18
3.1.2 Efficacité des systèmes de détection d’intrusion .......................................................... 20
3.1.3 Que doit assurer la détection d'intrusion ? ........................................................................ 20
3.2 Modèle de processus de la détection d’intrusion ......................................................................... 21
4- Classification des systèmes de détection d'intrusion ........................................................................... 22
4.1 La méthode de détection .................................................................................................................. 23
4.1.1 L’approche comportementale ............................................................................................. 23
4.1.2 L’approche basée connaissance .......................................................................................... 23
4.2 Le comportement après la détection d’intrusions ......................................................................... 23
4.2.1 Réponse active........................................................................................................................ 23
4.2.2 Réponse passive ..................................................................................................................... 23
4.3 La nature des données analysée ....................................................................................................... 24
4.3.1 Les audits systèmes ................................................................................................................ 24
4.3.2 Les sources d’informations réseau ...................................................................................... 25
4.3.3 Les audits applicatifs ............................................................................................................. 25
4.4 La fréquence d’utilisation .................................................................................................................. 25
4.4.1 Surveillance périodique ........................................................................................................ 25
4.4.2 Surveillance en temps réel ................................................................................................... 25
5- L’analyse basée connaissance versus l’analyse comportemental .................................................... 25
5.1 L’analyse basée connaissance ...................................................................................................26
5.1.1 Les avantage de l’analyse basée connaissance.................................................................... 26
5.1.2 Les inconvénients de l’analyse basée connaissance .......................................................... 26
5.2 L’analyse comportementale ..........................................................................................................26
5.2.1 Les avantages de l’analyse comportementale ..................................................................... 27
5.2.2 Les inconvénients de l’analyse comportementale ............................................................ 27
5.3 Les techniques utilisées dans l’approche comportementale ................................................... 27
5.3.1 L’approche statistique ........................................................................................................... 28
5.3.2 L’approche de machine learning ......................................................................................... 29
5.3.3 L’approche de réseaux de neurone..................................................................................... 29
5.3.4 L’approche de datamining .................................................................................................. 30
5.3.5 L’approche immunologique ................................................................................................ 30
6- Les IDS Bases Hôtes Versus Les IDS Bases Réseau .......................................................................... 31
6.1 L’IDS basé hôte (host- based IDS) ................................................................................................. 31
6.1.1 Les avantage d’un IDS basé hôte ....................................................................................... 31
6.1.2 Les inconvénients d’un IDS basé hôte .............................................................................. 31
6.2 L’IDS basé réseau (Network- based IDS) ..................................................................................... 31
6.2.1 Les avantages d’un IDS basé réseau .................................................................................. 32
6.2.1 Les inconvénients d’un IDS basé réseau ........................................................................... 32
7- les architectures d’implémentation des IDS ......................................................................................... 32
7.1 L'approche monolithique (centralisée) ............................................................................................ 32
7.2 L'approche hiérarchique .................................................................................................................... 33
7.3 L'approche coopérative (distribuée) ............................................................................................... 33
8- Une vue générale de quelques systèmes de détection d’intrusions Existants ........................... 33
8.1 IDES .................................................................................................................................................... 33
8.2 NIDES ................................................................................................................................................. 34
8.3 NADIR ................................................................................................................................................ 34
8.4 DIDS .................................................................................................................................................... 34
8.5 GrIDS .................................................................................................................................................. 35
8.6 CSM...................................................................................................................................................... 35
8.7 AAFID................................................................................................................................................. 36
9- L’emplacement de l’IDS .......................................................................................................................... 36
10- Evaluation d’un IDS .............................................................................................................................. 37
11- Conclusion ................................................................................................................................................. 38
Chapitre 03 : Système immunitaire .........................................................................................................39
1- Introduction ............................................................................................................................................ 40
2- Le système immunitaire naturel .............................................................................................................. 40
2.1 Introduction ...................................................................................................................................... 40
2.2 Le système immunitaire ................................................................................................................... 41
2.3 L’architecture du système immunitaire ........................................................................................... 41
2.3.1 Le système immunitaire inné............................................................................................... 41
2.3.2 Le système immunitaire adaptatif ....................................................................................... 42
2.4 La physiologie du système immunitaire ......................................................................................... 42
2.4.1 Les cellules B ......................................................................................................................... 43
2.4.1 Les cellules T ......................................................................................................................... 43
2.5 Comment le système immunitaire assure t-il la protection du corps humain? ........................ 43
2.6 Les processus de base d’un système immunitaire......................................................................... 45
2.6.1L’identification dans le système immunitaire naturel........................................................ 45
2.6.2 L’activation ............................................................................................................................ 45
2.7 Le principe du mécanisme de la sélection clonal .......................................................................... 46
2.7.1 L’hypermutation somatique ................................................................................................ 47
2.7.2 La mémoire immunitaire ..................................................................................................... 47
2.7.2.1 La réponse primaire ..................................................................................................... 48
2.7.2.2 La réponse secondaire ................................................................................................. 48
2.7.2.3 La réponse réactive croisée ......................................................................................... 48
2.7.3 La maturation d’affinité........................................................................................................ 49
2.8 Le répertoire cellulaire ...................................................................................................................... 49
2.9 La discrimination entre soi / non soi ............................................................................................. 50
2.9.1 La sélection négative pour les cellules T............................................................................ 50
2.9.2 La sélection négative pour les cellules B............................................................................ 50
2.10 La théorie du réseau immunitaire ................................................................................................. 51
3- Caractéristique du système immunitaire............................................................................................... 52
4-
Le Système Immunitaire Artificiel ...................................................................................................... 53
4.1Définitions .......................................................................................................................................... 54
4.1.1 Définition 01 ......................................................................................................................... 54
4.1.2 Définition 02 ......................................................................................................................... 54
4.1.3 Définition 03 ......................................................................................................................... 54
4.2 Le processus de conception d’un AIS ........................................................................................... 54
4.2.1 La représentation ................................................................................................................. 55
4.2.1.1 Le modèle Shape - Space ........................................................................................... 55
4.2.1.2 Les concepts de base du modèle .............................................................................. 56
4.2.2 Les mesures d’affinités ........................................................................................................ 57
4.3 Les algorithmes du système immunitaire artificiel .................................................................... 57
4.3.1 L’algorithme de la sélection négative ................................................................................. 55
4.3.2 L’algorithme de la sélection positive .................................................................................. 58
4.3.3 Algorithme de la sélection clonale ...................................................................................... 59
4.3.4 L’algorithme du réseau immunitaire ................................................................................... 60
5- Extension du système immunitaire artificiel ........................................................................................ 61
5.1 Le modèle de soi / non soi .............................................................................................................. 61
5.2 Le modèle de la théorie de danger .................................................................................................. 62
5.2.1 Critique du modèle de soi / non soi ................................................................................. 62
5.2.2 Le principe de base de la théorie de danger ..................................................................... 62
5.2.3 La mort cellulaire ................................................................................................................ 63
5.2.3.1 La nécrose ..................................................................................................................... 63
5.2.3.2 L’apoptose ..................................................................................................................... 63
5.3 L’emploi de la théorie de danger dans un AIS ............................................................................... 64
6- L’analogie entre le système de détection d’intrusion et le système immunitaire ............................ 64
6.1 Introduction ................................................................................................................................ 64
6.2 L’immunologie et la sécurité des systèmes informatiques ..................................................... 64
6.2.1 L’immunologie ..................................................................................................................... 64
6.2.2 La sécurité des systèmes informatique............................................................................... 65
6.3 L’analogie entre le système immunitaire et un système de détection d’intrusion ............. 66
6.3.1Les exigences d'un IDS basé réseau .................................................................................... 66
6.3.2 Les buts de conception d'un IDS basé réseau .................................................................. 67
6.3.2.1 La distribution............................................................................................................... 67
6.3.2.2 L’auto organisation ...................................................................................................... 68
6.3.2.3 La souplesse ................................................................................................................. 68
6.3.3 Une analyse des caractéristiques du SIH ........................................................................... 68
6.3.3.1 Un modèle distribué...................................................................................................... 68
6.3.3.2 L’auto organisation ...................................................................................................... 69
6.3.3.3 La souplesse ................................................................................................................. 70
7- Les domaines d’application des AIS .................................................................................................... 71
7.1 La sécurité des ordinateurs ............................................................................................................. 71
7.2 La détection et l’élimination des virus informatiques .................................................................. 71
7.3 Optimisation ...................................................................................................................................... 72
7.4 Robotique ........................................................................................................................................... 72
7.5 Autres domaines d’utilisation .......................................................................................................... 72
7.6 Le Système Immunitaire Artificiel pour La détection d’intrusions ...................................... 73
8- Conclusion ............................................................................................................................................... 74
Chapitre 04 : Implémentation et résultat .................................................................................................. 76
1- Introduction ........................................................................................................................................... 77
2- Ressources matériels et logiciel ........................................................................................................... 77
3- Base de données KDD99 ..................................................................................................................... 77
3.1 Probing (Sondage) ............................................................................................................................. 78
3.2 Attaques de Dénis de Services ........................................................................................................ 78
3.3 Attaques User to Root ...................................................................................................................... 79
3.4 Attaques Remote to User .................................................................................................................. 79
3.5 Les attributs KDD99 ......................................................................................................................... 80
3.6 Distribution des attaques dans l’ensemble de données KDD9 ................................................... 81
4- Architecture du système ......................................................................................................................... 82
5- Fonctionnement ..................................................................................................................................... 84
5.1 Module de prétraitement de données ............................................................................................ 84
5.1.1 Étape d’élimination de redondances .................................................................................. 84
5.1.2 Numérisation de données .................................................................................................... 85
5.1.3 Scaling data (Mise à échelle de données) ........................................................................... 85
5.2 Sélection d’attribut ........................................................................................................................... 87
6- Utilisation de l’SIA ................................................................................................................................. 87
7- Résultats expérimentaux ....................................................................................................................... 87
8- Sélection d’attribut ................................................................................................................................. 95
8.1 Cas binaire ....................................................................................................................................... 95
8.2 Cas multi-classe ................................................................................................................................ 97
9- Etude comparative ................................................................................................................................ 100
10- Conclusion ........................................................................................................................................... 100
Conclusion général ........................................................................................................................................ 101
Bibliographie .................................................................................................................................................. 102
Annexe
Liste des figures
Chapitre 02
FIG II.1 Rapport de CSI des pertes causées par le piratage informatique en millier de dollars .......... 17
FIG II.2 Pourcentage des différents types de piratage informatique selon les dégâts causés .............. 17
FIG II.3 Modèle simplifié d’un système de détection d’intrusions ......................................................... 19
FIG II.4 Taxonomie des systèmes de détection d’intrusion .................................................................... 22
FIG II.5 Emplacement de l’IDS au sein d’un réseau. ................................................................................ 37
Chapitre 03
FIG III.1 Architecture du système immunitaire. ........................................................................................ 41
FIG III.2 Présentation d’une cellule B et une cellule T ............................................................................. 43
FIG III.3 Le processus de base de défense immunitaire .......................................................................... 44
FIG III.4 L’identification dans le système immunitaire ............................................................................ 45
FIG III.5 Le principe de la sélection clonale .............................................................................................. 47
FIG III.6 Les différents types de réponses immunitaires ......................................................................... 49
FIG III.7 La représentation du réseau immunitaire idiotypique ............................................................. 52
FIG III.8 structure de conception d’un AIS .............................................................................................. 55
FIG III.9 La représentation du modèle Shape-Space ............................................................................... 56
FIG III.10 Différentes distances pour le calcule d’affinité anticorps-antigène ............................................. 57
FIG III.11 La structure générale de l’algorithme de la sélection négative. .............................................. 57
FIG III.12 Principe de la théorie du danger ............................................................................................... 63
Chapitre 04
FIG IV.01 fonctionnement général du NIDS ............................................................................................ 82
FIG IV.02 construction de modèle de détection d’intrusion AIS ........................................................ 83
FIG III.03 Construction de modèle de détection d’intrusion AIS avec sélection d’attributs ............ 83
FIG IV.04 base de données KDD99 fichier texte ...................................................................................... 84
FIG IV.05 données après numérisation ....................................................................................................... 85
FIG IV.06 données après normalisation ..................................................................................................... 86
FIG IV.07 Techniques par filtre la sélection d’attributs ........................................................................... 86
FIG III.12 modèle de multi-classifieur ......................................................................................................... 99
Liste des Tableaux
Chapitre 03
Tableau01 Un récapitulatif des différents travaux dans le domaine des IDS......................................... 74
Chapitre 04
Tableau01. Attaques de Probe ...................................................................................................................... 78
Tableau02. Attaques de dénis de service .................................................................................................... 79
Tableau03. Attaques de User to Root ........................................................................................................ 80
Tableau04. Attaques de Remote to User ................................................................................................... 80
Tableau05. Répartition des attaques dans l’ensemble d’apprentissage KDD99.................................... 81
Tableau06. Répartition des attaques dans l’ensemble de test .................................................................. 81
Tableau07. Nombres d'enregistrements avant et après élimination des enregistrements dupliqués .. 84
Tableau08. Représentation des attaques dans les différents ensembles d’apprentissage(cas multi-classes).... 89
Tableau09. Représentation des attaques dans les différents ensembles d’apprentissage(cas binaire) 90
Tableau10 Les résultats d’apprentissage cas binaire ................................................................................. 90
Tableau11. Les résultats d’apprentissage cas multiclasse ......................................................................... 90
Tableau12. Les résultats de test cas binaire ................................................................................................. 91
Tableau13. Les résultats de test cas multi- classe ...................................................................................... 91
Tableau14 Les résultats d’apprentissage cas binaire ................................................................................. 91
Tableau15. Les résultats d’apprentissage cas multiclasse ......................................................................... 92
Tableau16. Les résultats de test cas binaire ................................................................................................. 92
Tableau17. Les résultats de test cas multi- classe ...................................................................................... 92
Tableau18 Les résultats d’apprentissage cas binaire ................................................................................. 93
Tableau19. Les résultats d’apprentissage cas multiclasse ......................................................................... 93
Tableau20 Les résultats de test cas binaire .................................................................................................. 93
Tableau21. Les résultats de test cas multi- classe ...................................................................................... 93
Tableau22. Résultats de F-score pour le cas binaire ................................................................................. 96
Tableau23. Les résultats d’apprentissage cas binaire ................................................................................. 96
Tableau24. Les résultats de test cas binaire ............................................................................................... 96
Tableau25. Les résultats d’apprentissage cas binaire ................................................................................. 97
Tableau26 Les résultats de test cas binaire ............................................................................................... 97
Tableau27. Résultats de F-score pour le cas multiclasse .......................................................................... 98
Tableau28. Les résultats d’apprrentissage cas multi-classe ...................................................................... 98
Tableau29. Les résultats de test cas multi-classe ...................................................................................... 98
Tableau30. Étude comparative .................................................................................................................... 99
Introduction
générale
Introduction générale
Introduction générale
Les attaques informatiques ont été depuis leur apparition une vraie menace. Avec leur grande
diversité
et
spécificité
aux
systèmes,
ces
dernières
peuvent
avoir
des
conséquences
catastrophiques. Différentes contre-mesures permettant d’éviter ces attaques ou de diminuer de leur
gravité existent mais aucune solution ne peut être considérée satisfaisante et complète.
Les systèmes de détection d’intrusions sont l’une de ces contre-mesures les plus efficaces.
Leur
rôle
est
de
reconnaitre
des
intrusions
ou
des
tentatives
d’intrusions
par
des
comportements anormaux des utilisateurs ou par la reconnaissance d’attaque à partir du flux des
données du réseau. Différentes méthodes et approches ont été adoptées pour la conception de
systèmes de détection d’intrusions. Parmi ces méthodes, l’une est inspirée de la nature,
notamment des systèmes immunitaires, qui présentent des propriétés et une grande similarité avec les
systèmes de détection d’intrusions.
Le système immunitaire biologique avec ses propriétés remarquables est une source
d’inspiration pour la résolution de problèmes. L’étude des systèmes immunitaires est un nouvel
axe de recherche très prometteur, qui a donné naissance à une nouvelle branche de
l’intelligence artificielle, à savoir, les systèmes immunitaires artificiels. Ces derniers sont en fait la
modélisation, l’implémentation et l’adaptation des concepts et méthodes des systèmes immunitaires
biologiques pour la résolution de problèmes.
Dans le cadre de notre étude, nous nous intéressons aux systèmes immunitaires pour la détection
d’intrusion. Notre objectif est de développer un système immunitaire artificiel pour notre système de
détection
d’intrusions,
en
implémentant la théorie de sélection clonale. Afin
d’évaluer ses
performances, nous procéderons à une série de tests dont nous analyserons les résultats
afin
de mesurer l’apport des systèmes immunitaires pour la détection d’intrusions.
Ce mémoire est organisé comme suit :
Le premier chapitre représente une introduction générale au domaine de la sécurité
informatique d’une façon générale.
La deuxième chapitre est consacré à une
description détaillé des systèmes de détection
d’intrusion (IDS : Intrusion Detection System). Dans ce chapitre nous allons définir la détection et le
processus de la détection d’intrusion, ainsi qu’une taxonomie des systèmes de détection d’intrusion.
Nous allons aussi mettre en évidence les travaux de standardisation dans le domaine de la détection.
Le troisième chapitre décrit les systèmes immunitaires artificiels (AIS). Afin de comprendre les
différents algorithmes proposés dans le domaine des systèmes immunitaires artificiels, ce chapitre
1
Introduction générale
commence par une présentation générale du système immunitaire naturel et les différents
mécanismes utilisés dans l’identification et la détection des intrus. La partie consacrée aux
systèmes immunitaires artificiels expose les différents algorithmes immunitaires disponibles ainsi
que les différents domaines d’application des systèmes immunitaires artificiels. A la fin montre
l’analogie entre l’objectif des systèmes de détection d intrusions et celui du système immunitaire
humain.
Le quatrième chapitre donne une description détaillé du système développé. Nous présentons au
premier lieu l’architecture du système et le rôle de chacun de ses composants. Les différents résultats
expérimentaux obtenus sur la base d’apprentissage et test KDD99 et sur la base KDD99 avec sélection
d’attributs seront exposés.
En fin nous concluons le mémoire par une idée générale et quelques perspectives pour les
travaux futurs. Une description détaillée de l’ensemble de données KDD99 est donnée dans l’annexe A.
2
Chapitre I : introduction à la sécurité informatique
Chapitre I :
Introduction à la sécurité
informatique
Dans ce chapitre :
1. La sécurité informatique.
2. Services et mécanismes de sécurité.
3. Terminologie de la sécurité informatique.
4. Quelques possibilités en matière de sécurité réseaux.
5. Conclusion.
3
Chapitre I : introduction à la sécurité informatique
1. La sécurité informatique
De nos jours, l'information dans l'entreprise est d'une importance capitale, ce qui rend
sa protection une fonction primordiale. L'institut britannique de standardisation [BSI00] définit
la sécurité informatique par la préservation des trois propriétés suivantes:
La confidentialité : assurer que l'information est accessible uniquement aux
utilisateurs autorisés (empêcher la divulgation non autorisée de données).
L'intégrité : assurer l'exactitude et la complétude de l'information (empêcher la
modification non autorisée de données).
La disponibilité: assurer l'accès à l'information aux utilisateurs autorisés (empêcher
l'utilisation non autorisée de ressources informatiques d’une façon générale).
UBEZEN [Ubi00] a rajouté une autre propriété concernant l'utilisation de l'information :
La responsabilité : assurer qu'une action peut être liée sans doute à son initiateur.
De façon générale, la sécurité informatique peut être définie par l'ensemble des moyens
matériels, logiciels et humains mis en œuvre pour minimiser les vulnérabilités d'un système
d'information, et le protéger contre les menaces accidentelles ou intentionnelles, provenant de
l’intérieur ou de l’extérieur de l'entreprise.
La vulnérabilité est souvent définie comme une faille dans le système permettant la
violation de la politique de sécurité. Une bonne politique de sécurité représente l’ensemble de
règles qui fixent les actions autorisées et interdites dans le domaine de sécurité. Cette
politique doit préserver les propriétés de sécurité citées ci-dessus.
Du point de vue organisationnel, nous pouvons découper le domaine de la sécurité
informatique de la façon suivante [Bac00]:
La sécurité logicielle gère la sécurité au niveau logiciel du système d'information (par
exemple : l’intégration des protections logicielles comme l’antivirus).
La sécurité du personnel comprend la formation et la sensibilisation des personnes
utilisant ou travaillant avec le système d'information.
La sécurité physique regroupe : la politique d'accès aux bâtiments, la politique d'accès aux
matériels
informatiques,
et
les
règles
de
sécurité
pour
la
protection
des
équipements réseaux.
La sécurité procédurale définit les procédures et les règles d'utilisation du système
d'information.
La sécurité réseau s’occupe de : l'architecture physique et logique du réseau, la
politique d'accès aux différents services, la gestion des flux d'informations sur les réseaux,
et surtout les points de contrôle et de surveillance du réseau.
4
Chapitre I : introduction à la sécurité informatique
La veille technologique souvent oubliée permet d’évaluer la sécurité au cours du temps
afin de maintenir un niveau suffisant de protection du système d'information.
La préservation des propriétés de sécurité nécessite l'implémentation d’un certain nombre
de services de sécurité.
2. Services et mécanismes de sécurité
Le célèbre modèle en couches OSI (Open Systems Interconnection) est décrit dans la
norme multi parties ISO 7498, intitulée “Interconnexion des Systèmes Ouverts - Modèle de
référence de base”. Dans la partie intitulée “Architecture de sécurité” [Bsi00], se trouvent des
définitions et des concepts de base de la sécurité.
De façon générale, les mécanismes de sécurité permettent de mettre en œuvre des services
de sécurité. Ces services peuvent être la confidentialité (des données ou du flux de données),
l’authentification (d’une entité ou de l’origine des données), le contrôle d’accès, l’intégrité ou
encore la non répudiation (avec preuve de l’origine ou preuve de la remise). Les mécanismes
peuvent être le chiffrement, l’authentification, l’intégrité, la signature numérique, et d’autres
encore.
2.1 Les services de sécurité
Les principaux besoins de sécurité que peut avoir l’émetteur d’un message sont les
suivants [Bsi00]:
E1 : le message ne doit être connu que de son destinataire,
E2 : le message doit parvenir au bon destinataire,
E3 : le message reçu doit être identique au message émis,
E4 : le destinataire ne doit pas pouvoir nier avoir reçu le message.
Et les besoins du destinataire peuvent être :
D1 : le message ne doit être connu que de lui (et de l’émetteur),
D2 : l’émetteur du message doit être connu avec certitude,
D3 : le message reçu doit être identique au message émis,
D4 : l’émetteur ne doit pas pouvoir nier avoir émis le message.
Les besoins E1 et D1 sont identiques. Ils sont satisfaits par la mise en œuvre d’un service
de confidentialité, définie dans la norme 7498-2 comme la “propriété d’une information qui
n’est ni disponible, ni divulguée aux personnes, entités ou processus non autorisés”.
Les besoins E2 et D2 sont symétriques. Chaque entité doit s’assurer de l’identité de l’autre,
ce qui implique de mettre en œuvre un service d’authentification, défini comme la
“confirmation qu’une entité homologue d’une association est bien l’entité déclarée”, et même,
5
Chapitre I : introduction à la sécurité informatique
dans le cas du destinataire, un service d’authentification de l’origine des données, ou
“confirmation que la source des données est telle que déclarée”.
Les besoins E3 et D3 sont identiques. L’égalité entre le message émis et le message
transmis est assurée par un service d’intégrité (des données), qui est la “propriété assurant que des
données n’ont pas été modifiées ou détruites de façon non autorisée”.
Enfin, les besoins E4 et D4 sont symétriques. Le service correspondant est la non
répudiation, qui empêche la répudiation, c’est-à-dire “le fait, pour une des entités impliquées dans
la communication, de nier avoir participé aux échanges, totalement ou en partie”. Dans un cas il
s’agira de non répudiation avec preuve de l’origine, dans l’autre de non répudiation avec preuve
de la remise.
A tout cela s’ajoute le service de contrôle d’accès, ou “précaution prise contre l’utilisation
non autorisée d’une ressource”, et qui peut s’appliquer à divers types d’accès (utilisation de
ressources de communication, lecture, écriture ou suppression d’une ressource d’information,
exécution d’une ressource de traitement).
Parfois, la simple observation du flux de données fournit de l’information à un
ennemi. C’est ce qu’on appelle l’analyse de trafic, qui permet de détecter la présence,
l’absence, la quantité, la direction, ou la fréquence de telles ou telles données, qu’elles
soient compréhensibles ou non. On peut alors renforcer la confidentialité des données en
assurant également la confidentialité du flux de données, c’est-à-dire un “service de
confidentialité fournissant une protection contre l’analyse de trafic”. La confidentialité, tout
comme l’intégrité, peut être sélective par champ, c’est-à-dire ne s’appliquer qu’à une partie
des champs contenus dans le message transmis.
2.2 Les mécanismes de sécurité
Les différents services de sécurité décrits précédemment sont mis en œuvre grâce à
des mécanismes, dont la plupart sont de nature cryptographique. La cryptographie est la
“discipline incluant les principes, moyens et méthodes de transformation des données, dans le
but de cacher leur contenu, d’empêcher que leur modification passe inaperçue et/ou
d’empêcher leur utilisation non autorisée” [Bsi00].
Afin d’assurer la confidentialité des données et/ou du flux de données, on fait appel à un
mécanisme de chiffrement, qui est la “transformation cryptographique de données produisant un
cryptogramme”, unité de données dont “le contenu sémantique n’est pas compréhensible”.
L’opération inverse du chiffrement est le déchiffrement. Lorsqu’il est effectué de bout en
bout, le chiffrement a lieu “à l’intérieur ou au niveau du système extrémité source, le
6
Chapitre I : introduction à la sécurité informatique
déchiffrement correspondant ne se produisant qu’à l’intérieur, ou au niveau du système
extrémité de destination”.
S’il n’est effectué qu’à chaque liaison du système (dans quel cas les données sont en clair à
l’intérieur des entités relais), il s’agit de chiffrement de liaison. La confidentialité du flux de
données exige en outre un mécanisme de bourrage de trafic, consistant à produire des
“instances de communications parasites, des unités de données parasites et/ou des données
parasites dans des unités de données”. Cet échange continu de données, transportant ou non de
l’information, permet d’éviter qu’un tiers ne sache quand deux entités sont entrées en
communication.
Le service d’authentification (d’entité homologue) est fourni par un mécanisme d’échange
d’authentification, “destiné à garantir l’identité d’une entité par échange d’informations”.
(Typiquement, cet échange est constitué d’un nombre choisi au hasard envoyé par l’entité qui
souhaite authentifier l’autre, et d’une réponse de cette dernière obtenue en appliquant un
mécanisme cryptographique à ce nombre et à un secret connu d’elle seule). L’authentification de
l’origine des données peut être obtenue grâce à un mécanisme de signature numérique. Il s’agit de
“données ajoutées à une unité de données permettant à un destinataire de prouver la source et
l’intégrité de l’unité de données et protégeant contre la contrefaçon (par le destinataire, par
exemple)”. Le même terme désigne aussi la transformation cryptographique qui produit ces
données. Pour produire une signature, il faut une information privée, c’est-à-dire connue du seul
signataire. Pour la vérifier, il suffit d’une information publique. Il doit cependant être
matériellement
impossible de
déduire
l’information
privée
de l’information publique
correspondante.
L’intégrité des données est assurée par un mécanisme du même nom. Un tel mécanisme
peut consister à produire une valeur de contrôle cryptographique, à partir des données à
protéger et d’un secret partagé par les entités en communication. Dans ce cas, la vérification par
le destinataire consiste à recalculer cette valeur et à la comparer avec celle reçue. Si elles sont
égales, il y a présomption d’intégrité. Mais on peut également utiliser un mécanisme de signature
numérique qui, en plus de l’origine des données, garantit également leur intégrité. Par ailleurs, il
peut être nécessaire de recourir en outre à des mécanismes visant à éviter le rejoue (répétition
frauduleuse de tout ou partie des données), tels que la numérotation, l’horodatage ou le
chaînage cryptographique des données.
7
Chapitre I : introduction à la sécurité informatique
Pour obtenir le non répudiation avec preuve de l’origine, on peut utiliser un mécanisme de
signature numérique. En effet, la caractéristique essentielle de ce mécanisme est que la
signature ne peut être produite qu’en utilisant l’information privée du signataire. On peut
donc, en vérifiant la signature, prouver à tout moment à une tierce partie (par exemple un juge ou
un arbitre) que seul le détenteur unique de l’information privée peut avoir produit la
signature. Il est cependant possible d’utiliser aussi des mécanismes de chiffrement ou
d’intégrité.
La non répudiation avec preuve de la remise peut aussi reposer sur un mécanisme
de signature, produite cette fois par le destinataire du message. Les deux services de non
répudiation, et plus particulièrement le second, peuvent aussi faire appel à un mécanisme de
notariat. Ce mécanisme met en jeu une tierce partie, appelée notaire, qui garantit certaines
propriétés relatives à des données communiquées entre deux ou plusieurs entités, telles que
leur intégrité, leur origine, l’heure d’émission, etc. Le notaire s’interpose alors entre les entités
communicantes.
Les mécanismes de contrôle d’accès peuvent utiliser des éléments variés tels que l’identité
authentifiée de l’entité, une information sur cette entité, une liste de droits d’accès, des
“étiquettes” de sécurité spécifiant des niveaux de sensibilité, etc. La politique de contrôle
d’accès choisie peut être de type discrétionnaire (l’utilisateur définit les droits d’accès aux
informations dont il a la responsabilité) ou de type par mandat (l’autorisation d’accès dépend des
droits du demandeur, du niveau de sensibilité des informations et d’attributs spécifiques).
Le contrôle de routage permet d’acheminer l’information à travers des sous réseaux,
liaisons ou relais considérés comme sûrs. Il peut, soit spécifier explicitement les chemins
autorisés, soit tenir compte du niveau de sensibilité des informations dans le choix des
chemins utilisés.
3.
Terminologie de la sécurité informatique
La sécurité informatique utilise un vocabulaire bien défini que nous utilisons dans
cette thèse. Il est nécessaire de définir certains termes [Sec04]:
•
Les vulnérabilités : ce sont les failles de sécurité dans un ou plusieurs systèmes. Tout
système vu dans sa globalité présente des vulnérabilités, qui peuvent être exploitables ou
non.
•
Les attaques (exploits): elles représentent les moyens d'exploiter une vulnérabilité. Il
peut y avoir plusieurs attaques pour une même vulnérabilité mais toutes les
vulnérabilités ne sont pas exploitables.
8
Chapitre I : introduction à la sécurité informatique
•
les contre-mesures : ce sont les procédures ou techniques permettant de résoudre une
vulnérabilité ou de contrer une attaque spécifique (auquel cas il peut exister d'autres
attaques sur la même vulnérabilité).
•
Les menaces : ce sont des adversaires déterminés capables de monter une attaque
exploitant une vulnérabilité.
3.1 Types d'attaques
Les attaques peuvent à première vue être classées en deux grandes catégories :
•
Les attaques passives : consistent à écouter sans modifier les données ou
le fonctionnement du réseau. Elles sont généralement indétectables mais une
prévention est possible.
•
Les attaques actives : consistent à modifier des données ou des messages,
à s'introduire dans des équipements réseaux ou à perturber le bon fonctionnement
de ce réseau. Notons qu'une attaque active peut être exécutée sans la capacité
d'écoute. De plus, il n'y a généralement pas de prévention possible pour ces
attaques, bien qu'elles soient détectables (permettant ainsi une réponse adéquate).
3.2
Profils et capacités des attaquants
Les attaquants peuvent être classés non seulement par leurs connaissances (débutant,
expert, etc.) mais également suivant leur capacité d'attaques dans une situation bien définie. Ainsi,
on dénombre les capacités suivantes [Sec04] :
Transmission de messages sans capacité d'écoute (IP spoofing);
Écoute et transmission de messages ;
Écoute et perturbation des communications (blocage de paquets, DoS (Denial of
Service) et DDoS (Distribute DoS));
Écoute, perturbation et transmissions de messages;
Écoute et relais de messages (attaques type man-in-the-middle).
Une autre caractéristique des attaquants est leur contrôle unidirectionnel ou bidirectionnel
sur les communications, du fait de la nature asymétrique de celles-ci. En effet, la plupart des
canaux de transmissions sur Internet ou sur tout autre réseau hétérogène sont unidirectionnels et
empruntent des chemins différents suivant les règles de routage. Ainsi, de nombreux
protocoles de sécurité sont également unidirectionnels et il faut établir plusieurs canaux pour
permettre un échange en "duplex". Ces canaux qui sont au nombre de 2 minimums, sont la
plupart du temps gérés de façon totalement indépendante par les protocoles de sécurité. C'est le
cas pour SSL/TLS (Secure Socket Layer/Transport Layer Security) mais également pour IPSec
9
Chapitre I : introduction à la sécurité informatique
(IP sécurisé) dont les associations de sécurité sont unidirectionnelles et indépendantes, chacune
définissant son propre jeu de clés, algorithmes, etc.
4. Quelques possibilités en matière de sécurité réseaux
Actuellement, toute une série d’outils et de techniques permettent à un administrateur de
sécuriser facilement son réseau et les machines qui le composent. Chacune de ces techniques se
base sur des principes fondamentalement différents, mais celles-ci ont un but commun :
permettre une connexion entre Internet (réseau non sécurisé) et le réseau de l’entreprise
concernée, en assurant la sécurité des équipements et des informations disponibles sur ce
réseau, tout en tenant compte des contraintes de plus en plus présentes, telles que les
interconnexions de réseaux, les besoins de « contacts électroniques » pour le personnel (mails,
transferts de fichiers, accès Web, etc.), les systèmes d’informations complexes, et autres
[Bac00].
Nous allons citer et expliquer brièvement quelques outils de sécurité courants, pour nous
permettre par la suite de distinguer entre les systèmes de détection d’intrusions (IDSs),
l’objectif de cette thèse, et les Firewalls, à cause de la confusion qui peut exister entre eux.
4.1 Les Firewalls
Le mot Firewall (Pare-feu) signifie qu’on instaure une série de protections en un
point particulier entre deux entités connectées, en l’occurrence entre Internet et le réseau
interne d’une entreprise. En pratique, le Firewall consiste en une architecture, plutôt qu’un
matériel ou un logiciel précis. Cette architecture intègre alors une série de composants
matériels et logiciels, qui tentent précisément d’assurer le niveau de sécurité requis. [Dav06]
L’architecture la plus utilisée actuellement est basée sur une « Zone démilitarisée »,
communément appelée DMZ (Demilitarized Zone). Elle consiste à placer un réseau
intermédiaire entre l’accès Internet et le réseau interne (éventuellement plusieurs). Cette DMZ
sera isolée, aussi bien vis-à-vis de l’Internet que du réseau local, par des systèmes de filtrage
(filtres de paquets entrant et sortant). Ensuite, les éventuels serveurs nécessaires à l’entreprise
devant continuer à être accessibles de l’extérieur seront connectés directement sur cette DMZ, de
manière à les séparer du réseau interne. Par exemple, on pourra y trouver un serveur Web, un
serveur DNS (Domain Name Service), un serveur de mails, un serveur FTP (File Transfer
Protocol), etc. Dans le cas où l’un de ces serveurs serait compromis, le filtrage entre la DMZ et le
réseau interne doit être capable d’assurer une protection suffisante au réseau interne.
10
Chapitre I : introduction à la sécurité informatique
Bien évidement, cette architecture doit être adaptée plus précisément à la structure d’une
entreprise précise, et éventuellement intégrer des composants supplémentaires, tels que des
Proxys (machine intermédiaire entre les ordinateurs d'un réseau local et le Web) et autres
dispositifs.
4.2 Les filtres de paquets
Un filtre de paquet, tout comme son nom l’indique, permet de filtrer les paquets circulant
sur un réseau. Plus précisément, on peut même dire que le filtrage s’effectue sur les paquets
traversant une interface réseau. Celui-ci fonctionne en analysant le contenu de ces paquets,
principalement en observant les valeurs de certains champs des en-têtes des protocoles IP
(Internet Protocol), ICMP (Internet Control Message Protocol), UDP (User Datagramme
Protocol) et TCP (Transmission Control Protocol). Cela permet par exemple d’interdire des
paquets provenant d’une source précise, étant destinés à une destination précise, des paquets
réceptionnés sur une interface précise, des paquets avec des ports sources ou cibles
précis, d’intégrer des contraintes d’heures éventuelles d’après l’horaire d’une entreprise, etc.
[Dav06]
Au niveau de la configuration, on fait établir une série de règles de filtrage qui reflète la
politique de sécurité de l’entreprise. Les paquets ne satisfaisant pas aux règles de filtrage
seront alors bloqués (supprimés), et peuvent entraîner éventuellement la génération d’un
message d’erreur (via un protocole comme ICMP).
4.3 Les scanners et les outils relatifs à la sécurité
Etant donné que les hackers (pirates informatique) trouvent de plus en plus les
outils nécessaires à la réalisation de leurs attaques, les entreprises travaillant dans le domaine de la
sécurité ont petit à petit commencé à proposer leurs propres outils de vérification de
vulnérabilités. C’est ainsi qu’on commence à avoir apparaître toute une série de scanners, qui
offrent de nombreuses possibilités. Il est primordial à l’heure actuelle d’effectuer de
nombreux tests de sécurité réguliers, car ces tests permettent de mettre en avance des
modifications dans l’architecture et dans la configuration du réseau et des machines qui le
composent. Ces outils sont décomposés en toute une série de catégories, dont notamment :
[Dav06]
Les scanners de vulnérabilités.
Les scanners orientés réseaux.
Les scanners orientés hosts (machines).
Les sniffers.
Les vérificateurs de mots de passe.
11
Chapitre I : introduction à la sécurité informatique
4.4 Les systèmes de détection d’intrusions
Un IDS a pour fonction d'analyser en temps réel ou différé les évènements en provenance
des différents systèmes à travers le réseau, de détecter et de prévenir les attaques. Les IDS ont
donc un rôle d’alarme (la comparaison avec une alarme anti-vol placée dans le hall d’une
maison, qui détecte des mouvements ou des ouvertures de portes, correspond d’ailleurs assez
bien). Les buts sont nombreux :
•
Collecter des informations sur les intrusions.
•
Gestion centralisée des alertes.
•
Effectuer un premier diagnostic sur la nature de l'attaque permettant une
réponse rapide et efficace.
•
Réagir activement à l'attaque pour la ralentir ou la stopper.
5. Conclusion
Bien que le domaine de la sécurité informatique soit très vaste, et qu’il est difficile de le
cerner par une définition, la sécurité peut être considérée par le niveau de confiance donné à la
confidentialité, l’intégrité et la disponibilité de l’information. La préservation de ces
propriétés nécessite la mise en place des services de sécurité qui seront implémentés par des
mécanismes de sécurité.
Ces
services peuvent
être
la
confidentialité
(des
données ou
du
flux
de
données),l’authentification (d’une entité ou de l’origine des données), le contrôle d’accès,
l’intégrité ou encore la non répudiation (avec preuve de l’origine ou preuve de la remise). Les
mécanismes peuvent être le chiffrement, l’authentification, l’intégrité, la signature numérique
...etc.
Dans cette thèse on s’intéresse au mécanisme de contrôle d’accès, et plus précisément à la
surveillance du flux de données. Cette fonction est assurée par les systèmes de détection
d’intrusion. Ils analysent en temps réel ou différé les évènements en provenance des différents
systèmes à travers le réseau, détectent, préviennent les attaques et éventuellement
prennent des contre-mesures.
Enfin, il faut noter que la sécurité ne peut être assurée à cent pour cent, et que les outils ne
sont pas parfaits. Ils possèdent toujours des failles. Cependant, avec une bonne politique de
sécurité, et un bon déploiement des outils, la sécurité peut être très proche des niveaux
acceptés.
12
Chapitre II : détection d’intrusion
Chapitre II :
Détection des intrusions
Dans ce chapitre :
1. Introduction.
2. Intrusions informatiques.
3. Systèmes de détection d’intrusions.
4. Classification des systèmes de détection d'intrusion
5. L’analyse basée connaissance versus l’analyse comportementale
6. Les IDS Bases Hôtes Versus Les IDS Bases Réseau
7. les architectures d’implémentation des IDS
8. Une
vue
générale
de
quelques
systèmes
de détection
d’intrusions existants
9. Emplacement de l’IDS
10.
Evaluation de l’IDS
11.
Conclusion
13
Chapitre II : détection d’intrusion
1. Introduction
De nos jours l’outil informatique est omni présent dans notre vie quotidienne. Que ce
soit pour l’achat d’articles, faire des transactions bancaires, l’envoi de courrier ou encore la
réservation de places de cinéma, nous dépendons énormément de cette technologie et nous ne
pouvons plus nous en passer.
L’arrivée
d’Internet
est
définie
comme
l’âge
d’or
de
l’informatique.
Avec
l’interconnexion des réseaux, la rapidité de diffusion et d’acquisition de l’information,
Internet a révolutionné notre vie. Comme toute innovation ou nouvelle technologie, Internet
peut avoir des conséquences regrettables en cas de mauvaise utilisation. De nouveaux genres
d’espionnage industriel, guerre inter-nations ou abus ont vu le jour. Par conséquent une
communauté de gens malveillants s’est fondée et de nouveaux objectifs se sont créés tel que le
détournement d’informations, la percée des secrets personnels et cela peut aller jusqu'à la
destruction d’informations vitales.
2. Intrusions informatiques
Avec l’arrivée d’internet, de nouveaux marchés ont vu le jour et de nouvelles
perspectives sont apparues. La plupart des opportunités sont dans le domaine commercial, où les
entreprises peuvent exposer leurs produits et services au monde entier grâce à des sites
web. Des transactions avec des sommes colossales sont effectuées chaque jour, ce qui expose les
entreprises à différentes menaces.
Autrefois, on s’était beaucoup plus intéressé aux avantages de cette nouvelle
technologie et rares étaient ceux qui pensaient ou mettaient quelques moyens et ressources
pour assurer un minimum de sécurité. [Col01]
Le plus grave est que plusieurs entreprises courent des risques sans le savoir, et que les
administrateurs réseau ou les personnes chargées d’assurer la sécurité informatique ignorent
de quoi ils devraient se protéger. On estime aujourd’hui à moins de 4 mn le temps moyen
pour qu’un PC non protégé connecté à Internet subisse une tentative d’intrusion ou soit
contaminé par un programme malicieux. [Gan00].
Différentes techniques ont été mises en place par des communautés des pirates
informatiques. Chacune
d’entre elles touche un certain aspect de l’outil informatique. Nous
pouvons catégoriser les différentes techniques de piratage informatique en deux classes
[Gan00] :
14
Chapitre II : détection d’intrusion
Attaques réseaux : Cette classe d’attaques, regroupe l’ensemble des techniques mises au
point, permettant d’exploiter les faiblesses des réseaux ou bien les attaques qui
ciblent des composants réseau.
Attaques applicatives: Cette deuxième catégorie contient les techniques basées sur
les faiblesses et les bugs des applications, permettant ainsi d’exploiter ces dernières
pour des fins malveillantes.
2.1 Types de pirates informatiques
Les pirates informatiques se sont organisés en communautés et selon leur appartenance,
leurs objectifs diffèrent ainsi que leurs manières de procéder. Deux grandes catégories se sont
distinguées
Hackers : ce sont d’excellents développeurs, spécialistes des réseaux. Ils existent depuis
longtemps. Dés l’apparition de l’informatique et avec les premiers mini-ordinateurs, ils ont
contribué à faire de l’informatique ce qu’elle est aujourd’hui. Certains d’entre eux ont participé au
développement d’Unix, d’autres ont créé Internet. [Ray01]. Les hackers partagent librement
l’information et ne causent jamais la perte ou la destruction d’informations. [Sms00]
Crackers : Les crackers quant à eux sont dangereux et peuvent causer des dégâts. Si les
hackers s’intéressent à découvrir les failles et les bugs, les crackers les utilisent pour des fins
destructives. Ils contournent les protections par mots de passe, utilisent des techniques de brute
force, effacent des données, déstabilisent et mettent hors d’usage des systèmes …etc. [CAS00a].
La différence fondamentale entre hackers et crackers est que les hackers construisent les
choses, les crackers (pirates) les démolissent. [RAY01]
2.2 Différentes phases d’une attaque
Quelque soit les attaques menées, elles ont toutes la même démarche [COL01]. Une
attaque est constituée de ce qui est connu sous le nom des « 5 P », ces cinq verbes anglais
définissent ce que c’est qu’une attaque :
-
Prob : C’est la partie d’audit qui sert à collecter des informations relatives à la cible.
Cette collecte est facilitée par des outils tel que Whois, DNS Lookup, Un scan des
ports ou encore un scanner de vulnérabilités.
-
Penetrate : C’est la phase de pénétration, en utilisant les informations collectées.
15
Chapitre II : détection d’intrusion
-
Persist : Une fois l’attaque réussie, et le système pénétré, l’attaquant tente de garder
un contrôle sur le système. Il crée ainsi un compte avec des droits d’administrateur, ou
installe une porte dérobée (Cheval de trois).
-
Propagate : L’attaquant vérifie s’il y’a d’éventuelles cibles à partir du réseau local, si
l’attaque peu être propagée sur d’autres machines.
-
Paralyze : A la fin de son attaque, l’attaquant peut utiliser la victime pour mener
d’autres attaques ou détruire des informations vitales,
ou carrément mettre hors
d’usage le système.
Les conséquences du piratage informatique peuvent être très graves et les chiffres le
montrent clairement : des centaines de systèmes ont été piratés, des quantités énormes
d’informations confidentielles et de secrets industriels ont été volés. Ce problème est devenu très
sérieux. Les
infrastructures
informatiques gouvernementales et nationales sont
les cibles
préférées des pirates. Ensuite, les organisations commerciales, les banques et en derniers lieu les
simples utilisateurs [ALL00].
Voici un petit historique des plus grandes attaques connues avant le bug de l’an 2000
-
Le 11 mai 1999 : Le site web de la maison blanche a été mis hors service.
-
Le 21 mai 1999 : le GAO (General Accounting Office) dit « Nous avons réussi à
pénétrer quelques systèmes à missions critiques, dont un responsable du calcul de
position terre-orbite pour un vaisseau spatial ».
-
Le 1er juin 1999 : Des pirates chinois ont attaqué une poignée de sites
gouvernementaux américains le site de la maison blanche a été mis hors service.
-
Le 7 octobre 1999 : Des pirates russes réussissent à s’introduire dans le réseau du
département de défense américain et ont réussi à dérober une très grande quantité
d’informations du département d’armement nucléaire et de recherche.
-
Le 7 octobre 1999 : Une attaque réussie contre la NASA, une attaque très massive et très
discrète, les attaquants ont pris une très grande quantité d’informations (des listes de
fichiers des répertoires personnels… etc.). Les attaquants ont installé des backdoors,
pour pouvoir se reconnecter plus tard. les backdoors ont été découvert bien après
l’attaque…etc
Nous remarquons que dans un laps de temps très réduit, un grand nombre d'attaques ont
eu lieu touchants les plus grandes institutions gouvernementales qui sont supposées être
sécurisées. Nous pouvons donc imaginer les dégâts causes sur des systèmes moins importants. Le
passage à l'an 2000 a coute très chère aux sociétés de l'information d'après le rapport publie par
16
Chapitre II : détection d’intrusion
CSI (Computer Security Institute). La figure suivante FIG 1.1 montre les pertes causées par le
piratage informatique. Nous pouvons voir clairement sur la figure que durant les deux années qui
ont suivi l'an 2000, une grande activité des pirates a été constatée, et par conséquent, le total des
pertes s'est vu augmenter d'une manière très remarquable.
FIG II.1 Rapport de CSI des pertes causées par le piratage informatique en millier de
dollars. [CSI08]
Différentes attaques sont derrières toutes ces pertes, que ce soit des attaques de virus, des
attaques par déni de service ou des détournements de sessions, nous retrouvons sur la figure FIG
1.2 les différentes techniques de piratage citées plus haut présentent avec pour chacune le taux de
perte cause.
FIG II.2 Pourcentage des différents types de piratage informatique selon les dégâts causés
[BSA02].
17
Chapitre II : détection d’intrusion
2.3 Contre-mesures
Bien évidemment, face à de telles menaces, les informaticiens et surtout les développeurs
ont réagi, en créant des mécanismes de protection, garantissant ainsi un certain niveau de sécurité.
[COL01]
Voici les contres mesures les plus connues :
-
Pares feu
-
Antivirus
-
Scanners de vulnérabilités
-
Patchs
-
Systèmes de leurre
Malgré l’existence de différents mécanismes de protection (pare feu, antivirus,
scanner de vulnérabilités), chaque système de protection peut présenter une menace particulière
pour les systèmes d’informations, car chacun d’entre eux à ses points faibles.
D’autres méthodes et mécanismes existent tels que les systèmes de détections
d’intrusions (Intrusion Detection System). Objet de ce mémoire de fin d’études, ce sont
des systèmes permettant de détecter des tentatives d’attaques ou des attaques réussies. Ils
permettent de retrouver les traces des attaques déjà connues ou de détecter une nouvelle forme
d’attaques. Les systèmes de détection d’intrusions servent à contrôler le trafic autorisé par le parefeu et prennent des décisions si le trafic observé est suspect. Ces derniers peuvent
découvrir les attaquants qui parviennent à pénétrer le pare-feu ou le trafic qu’ils jugent
suspects et l’annoncent aux administrateurs du système, qui peuvent prendre des mesures
pour éviter d’éventuels dégâts.
3. Systèmes de détection d’intrusions
3.1 Introduction
3.1.1 C’est quoi la détection d’intrusion ?
La détection d'intrusion est le processus qui consiste à surveiller les évènements se
produisant dans un ordinateur ou dans un réseau informatique, et de les analyser pour
découvrir des signes d’intrusions, définies comme des tentatives de compromission de la
confidentialité, l’intégrité, la disponibilité et la responsabilité, ou pour dévier des mécanismes de
sécurité [Bac00, Bsi00, Ubi00].
18
Chapitre II : détection d’intrusion
Les intrusions sont provoquées par : l'accès d'attaquants externes aux systèmes via
des réseaux ouverts comme Internet, des utilisateurs autorisés qui essayent de gagner des
privilèges additionnels pour lesquels ils ne sont pas autorisés, ou des utilisateurs autorisés qui
abusent de leurs privilèges [Bac00].
Les systèmes de détection d'intrusions (IDS : Intrusion Detection System) sont les
systèmes logiciels ou matériels qui automatisent cette tâche de surveillance et d'analyse [Bac00].
Debar [Deb00] simplifie le système de détection d’intrusion dans un détecteur qui analyse
les informations en provenance du système surveillé (voir la figure Fig.II.3).
BDD
Configuration
Système de détection
d’intrusion
Détecteur
Module Attaque –
réponse
Action
Audit de sécurité et le contrôle
Système
Fig. II.3 Modèle simplifié d’un système de détection d’intrusions [Deb00]
Un système de détection d'intrusions à un niveau très macroscopique [Deb00]peut
être décrit comme un détecteur. Ce détecteur est un moteur d’analyse qui reçoit des données
de
trois sortes de ressources (Fig. II.3). L’analyse de ces données génère une décision
d’évaluation de la probabilité que ces actions peuvent être considérées comme des
symptômes d’intrusions. Ces données sont :
Des informations de configuration relatives à l’état actuel du système.
Des informations à long terme relatives à la technique utilisée pour détecter les
intrusions par exemple une base de connaissances d’attaques.
19
Chapitre II : détection d’intrusion
Des informations venant du système à protéger qui sont les informations d’audit
décrivant les événements qui apparaissent dans le système.
3.1.2
Efficacité des systèmes de détection d’intrusions
Philip dans [Phi98] définit trois critères pour évaluer l’efficacité des systèmes de détection
d'intrusion :
L'exactitude (accuracy) : on parle de l’exactitude quand le système de détection
d’intrusion déclare comme malicieux une activité légale. Ce critère correspond au
faux positif.
La performance (performance) : la performance de système de détection d’intrusion
est le taux de traitement des évènements. Si ce taux est faible, la détection en temps réel
est donc impossible.
La complétude (completeness) : on parle de la complétude quand le système de
détection d’intrusion rate la détection d’une attaque. Ce critère est le plus difficile,
parce que il est impossible d’avoir une connaissance globale sur les attaques. Ce
critère correspond au vrai négatif.
Debar dans [Deb00] a rajouté également les deux critères suivants :
La tolérance aux fautes (Fault tolerance) : le système de détection d’intrusion doit luimême résisté aux attaques, particulièrement au déni de service. Ceci est important, parce
que plusieurs systèmes de détection d’intrusion s’exécutent sur des matériels ou logiciels
connus comme vulnérables aux attaques.
La réaction à temps (Timeliness) : le système de détection d’intrusion doit s’exécuter
et propager les résultats de l’analyse le plus tôt possible, pour permettre à l’officier de
sécurité de réagir avant que des graves dommages n’aient lieu. Ceci implique plus
qu’un calcul de performance, parce qu’il ne s’agit pas seulement de temps de traitement
des évènements, mais aussi le temps nécessaire pour la propagation et la réaction à cet
évènement.
3.1.3 Que doit assurer la détection d'intrusion?
La détection d’intrusion permet aux organisations de protéger leurs systèmes contre
les menaces qui ne cessent de croître à cause de l'augmentation de la connectivité du
réseau public (Internet), et la confiance accordée aux systèmes informatiques qui
comportent des bugs.
20
Chapitre II : détection d’intrusion
La question pour les professionnels de sécurité ne devraient pas être s’il faut
utiliser la détection d'intrusion, mais quels dispositifs utiliser et quelles sont leur capacité de
détection d’intrusion.
Les systèmes de détection d’intrusion ont gagné l'acceptation d’être un élément nécessaire
dans l'infrastructure de la sécurité informatique de chaque organisation. En effet, il y a
plusieurs raisons pour acquérir et utiliser les systèmes de détection d’intrusion :
Pour détecter les attaques et autres violations de sécurité qui ne sont pas empêchées par
d’autres outils de sécurité.
Pour documenter les menaces existantes dans une organisation, c'est-à-dire découvrir les
vulnérabilités avant qu’elles ne soient exploitées par un attaquant.
Pour agir en tant que contrôle de qualité pour la conception de sécurité, particulièrement
dans les grandes et complexes entreprises.
Pour fournir des informations utiles au sujet des intrusions qui ont eu lieu, et
faire des diagnostics, recouvrement, et corrections des facteurs causatifs.
Pour arrêter les intrusions afin de limiter les dégâts. Malheureusement cela n’est
pas toujours possible à cause de la complexité et la diversité des intrusions, et la naissance
de nouveaux types d’intrusions liées au développement des nouvelles technologies
d’information. Les contre-mesures actives sont souvent optionnelles dans la quasi-totalité
des systèmes de détection d’intrusion.
3.2 Modèle de processus de la détection d’intrusion
La majorité des systèmes de détection d’intrusion peuvent être décrits en terme de
trois composants fonctionnels fondamentaux [lAB06] :
La source d’informations (sonde) : Les différentes sources des évènements
utilisées pour déterminer les intrusions qui ont eu lieu. Ces sources peuvent être fournies par
les différents niveaux du système d’information : les réseaux, les hôtes, et les applications.
L'analyse : La partie du système de détection d'intrusions qui réellement
organise et donne un sens aux évènements dérivés des sources d'informations, décidant
quand ces évènements indiquent que des intrusions se produisent ou ont déjà eu lieu. Les
principales approches communes d'analyse sont : détection d’abus (The misuse detection) ou
encore dite approche par scénarios et détection d’anomalie (Anomaly detection) ou encore dite
approche comportementale qui seront expliquées par la suite.
La réponse : L’ensemble de contre-mesures que le système prend une fois qu’il
détecte des intrusions. Celles-ci sont typiquement groupées dans des mesures actives et passives,
21
Chapitre II : détection d’intrusion
les mesures actives comportent une certaine interposition automatisée de la part du système, alors
que les mesures passives rapportent des résultats issus de l’analyse aux responsables, qui sont
alors prévenus pour agir et prendre une action basée sur ces rapports.
4. Classification des systèmes de détection d'intrusion
Le
domaine
de
la
détection
d'intrusions
est
encore
jeune mais
en
plein
développement. Nous dénombrons à l'heure actuelle environ une centaine de systèmes de
détection d'intrusions, que ce soit des produits commerciaux ou du domaine public [Bac00]. Il
est donc devenu très utile d'utiliser des critères pour classifier ces systèmes de détection
d’intrusion, c'est ce que nous allons présenter dans cette section.
La méthode de
détection
L’approche comportementale
L’approche basée connaissance
Actif
Comportement
après détection
Passif
Système de
sy
détection
d’intrusion
Audit système
Source des
données
Audit Applicatif
Paquets du réseau
Fréquence
d’utilisation
Surveillance continue
Analyse périodique
Fig. II.4 Taxonomie des systèmes de détection d’intrusion [Deb00]
22
Chapitre II : détection d’intrusion
Il existe plusieurs critères qu'on peut utiliser pour classifier les différents systèmes
de détection d'intrusion, dont les principaux sont résumés dans la figure Fig. II.3 [Deb00].
4.1 La méthode de détection
La détection d’intrusions repose sur deux approches de base :
L’approche comportementale.
L’approche basée connaissance.
4.1.1 L’approche comportementale
Cette approche est connue aussi par l’approche de détection d’anomalies. Elle consiste
à définir un profil de l’activité normale d’un utilisateur et à considérer les déviations
significatives de l’activité d’utilisateur courante par rapport aux profils de comportement
normaux comme anomalie..
4.1.2 L’approche basée connaissance
Cette approche définit des signatures soupçonneuses basées sur les vulnérabilités connues
de système et la politique de sécurité. Une intrusion est signalée lorsque la trace d’une attaque
connue est présente dans les traces d'audit.
Ces deux méthodes d’analyse constituent la partie importante des systèmes de
détection d’intrusions. Pour cette raison, elles seront détaillées dans les sections suivantes.
4.2 Le comportement après la détection d’intrusions
Le comportement d’un IDS après la détection d’une intrusion est l’ensemble des
actions prises par le système lorsqu’il détecte une attaque. Ces réponses peuvent être actives ou
bien passives.
4.2.1 Réponse active
La réponse active implique des actions automatisées prises par un IDS quand le
système détecte une intrusion. Par exemple interrompre le progrès d’une attaque pour bloquer
ensuite l'accès suivant de l'attaquant.
4.2.2
Réponse passive
Dans ce cas, quand une attaque est détectée, le système de détection d’intrusions ne
prend aucune action. Il génère seulement une alarme pour notifier l’administrateur de système qui
23
Chapitre II : détection d’intrusion
va prendre des mesures en se basant sur les rapports générés par le système de détection
d’intrusions.
4.3 La nature des données analysées
Les systèmes de détection d’intrusions sont classés en fonction de l’origine des données qui
seront exploitées pour détecter des actions intrusives. La source de données utilisée est une
caractéristique essentielle pour classer les systèmes de détection d’intrusions. On distingue
trois catégories de sources d‘informations :
Les audits systèmes.
Les audits applicatifs.
Le trafic réseau.
4.3.1 Les audits systèmes
Les audits systèmes sont produits par le système d’exploitation d’un hôte.
Ces
données permettent à un IDS de contrôler les activités d’un utilisateur sur un hôte. Elles peuvent
être également de plusieurs types, par exemple :
Historique des commandes systèmes : tous les systèmes d’exploitation
possèdent des commandes pour obtenir des informations instantanées sur les processus
actifs courants dans un ordinateur. Grâce à ces commandes, l’IDS peut avoir des informations
précises sur les événements systèmes.
Accounting : l’accounting fournit des informations sur l’usage des ressources
partagées par les utilisateurs. Ces ressources sont par exemple : le temps processeur, la
mémoire, L’espace disque, les applications lancées, etc.
Systèmes d’audit de sécurité : les systèmes d’exploitation sont dotés par ce
service pour définir des événements, les associer à des utilisateurs et assurer leurs collectes
dans un fichier d’audit. L’IDS possède potentiellement
des informations sur toutes les
actions effectuées par un utilisateur.
L’avantage de ces données systèmes réside dans leur fiabilité et leur granularité fine,
qui permettent un diagnostic précis des actions effectuées sur un hôte par un attaquant.
Cependant, le volume d’événements généré par les audits systèmes est très volumineux ce qui
implique un impact très important sur les performances de la machine surveillée. Les IDS qui
se basent sur cette catégorie des sources de données sont appelés : Les IDS basés hôte «
Host Based Intrusion Detection System ».
24
Chapitre II : détection d’intrusion
4.3.2 Les sources d’informations réseau
Ce sont des données du trafic réseau. Cette source d ’informations est prometteuse
car elle permet de collecter et analyser les paquets de données circulant sur le réseau.
Les IDS qui exploitent ces sources de données sont appelés : Les IDS basés réseau
« Network Based Intrusion Detection System ».
4.3.3 Les audits applicatifs
La troisième catégorie de source de données est constituée des audits applicatifs. Les
données à analyser sont produites directement par une application, par exemple des
fichiers logs générés par les serveurs ftp et les serveurs Web. L’avantage de cette catégorie
est que les données produites sont très synthétiques, elles sont sémantiquement riches et leur
volume est modéré. On note que ces types d’informations sont généralement intégrés dans les
IDS basés hôte.
Vu de l’importance des IDS basés hôte et basés réseau, une étude détaillée de ces deux
types d’IDS sera exhibée dans les prochaines sections.
4.4 La fréquence d’utilisation
La fréquence d’utilisation d’un système de détection d’intrusions peut exister selon
deux formes :
4.4.1 Surveillance périodique
Ce type de système de détection d’intrusions analyse périodiquement les différentes
sources de données à la recherche d’une éventuelle intrusion ou une anomalie passée.
4.4.2 Surveillance en temps réel
Les systèmes de détection d’intrusions en temps réel fonctionnent sur le traitement
et l’analyse continue des informations produites par les différentes sources de données. La
détection d’intrusions en temps réel permet de limiter les dégâts produits par une attaque car elle
permet de prendre des mesures qui réduisent le progrès de l'attaque détectée.
5. L’analyse basée connaissance versus l’analyse comportementale
Comme nous l’avons vu dans la section précédente, il existe deux approches pour détecter
les intrusions dans les systèmes informatiques [Deb00][NIS01][SUN 96]. L’approche basée
25
Chapitre II : détection d’intrusion
connaissance qui se base sur la définition d’un modèle constitué des actions interdites dans
les systèmes informatiques et l’approche comportementale qui est basée sur la définition
d’un modèle constitué des actions autorisées.
5.1 L’analyse basée connaissance
Cette approche de détection est désignée en anglais par le terme « Misuse Detection », qui
signifie dans la littérature la détection d ’une mauvaise utilisation, et il existe plusieurs
traductions françaises adoptées pour cette approche, par exemple l’approche par signatures ou
par scénarios.
Elle est caractérisée par l’existence d’une base de connaissances qui comporte des modèles
d’attaque connus a priori qui sont appelés les signatures. Elle examine les activités du
système et du réseau en cherchant des événements ou l’ensemble des événements qui
décrivent une attaque connue. Ainsi, dans cette approche, tous ce qui n’est pas explicitement
interdit
est
autorisé.
Cette
approche
possède
un
certain
nombre d’avantages
et
d’inconvénients. [ZAM05] [NIS01]
5.1.1 Les avantages de l’analyse basée connaissance
L’analyse basée connaissance est très efficace pour la détection d'attaque avec
un taux très bas des alarmes de type positif faux.
Les alarmes générées sont significatives.
5.1.2 Les inconvénients de l’analyse basée connaissance
Cette analyse basée connaissance permet seulement la détection des attaques
qui
sont connues au préalable. Donc, la base de connaissances doit être
constamment mise à jour avec les signatures de nouvelles attaques.
Le
risque
que l’attaquant
peut
influencer
sur
la
détection
après
la
reconnaissance des signatures.
5.2 L’analyse comportementale
Dans l’analyse comportementale, un modèle de comportement normal du système
surveillé est préalablement construit. Ce modèle est appelé profil de comportement normal
qui sera utilisé comme une référence dans la détection. Au cours de la surveillance du système,
toute déviation significative du comportement courant de système contrôlé par rapport au
comportement normal de référence donne lieu à une attaque. Cette approche possède aussi un
certain nombre d’avantages et d’inconvénients [ZAM05] [NIS01]
26
Chapitre II : détection d’intrusion
5.2.1 Les avantages de l’analyse comportementale
L’analyse comportementale n’exige pas des connaissances préalables sur les attaques.
Elle permet la détection de la mauvaise utilisation des privilèges.
Elle permet de produire des informations qui peuvent être employées pour définir
des signatures pour l’analyse basée connaissance.
5.2.2 Les inconvénients de l’analyse comportementale
Les approches comportementales produisent un taux élevé des alarmes de type
positif faux en raison des comportements imprévisibles d'utilisateurs et des réseaux.
Ces approches nécessitent des phases d’apprentissage pour caractériser les
profils de comportement normaux.
Les alarmes générées par cette approche ne sont pas significatives.
Cette étude comparative entre les deux approches d ’analyses utilisées par les
systèmes de détection d’intrusions montre l’existence d’une complétude entre ces deux
méthodes. Cette complétude qui permettra de surmonter les inconvénients relatifs à chaque
méthode d’analyse. Pour cette raison, il est préférable d’adopter les deux techniques d ’une
manière parallèle pour obtenir un système de détection d ’intrusions efficace [KIM02]
Cependant, les systèmes de détection d’intrusions commerciaux disponibles emploient
seulement la technique basée signature, ce qui motive les efforts de recherche croissants pour
construire des détecteurs d'anomalies efficaces pour des buts de détection d' intrusions. L'effort
principal de cette recherche est concentré sur les systèmes de détection d’intrusions qui sont
basés sur la technique comportementale. Pour cette raison, nous présenterons dans la section
suivante les différentes approches utilisées dans la méthode de détection comportementale.
5.3 Les techniques utilisées dans l’approche comportementale
Un système de détection d’intrusions basé sur
la détection d’anomalies contrôle les
activités du système afin de les classer comme normales ou anomalies. Il procède à
construire des profils d'un comportement normal pour les activités des utilisateurs et à
observer les déviations significatives de l'activité de l’utilisateur courante par rapport à la forme
normale établie. D’une façon générale, la détection d’anomalies est composée de deux phases :
• Une phase d'apprentissage : le système apprend le comportement normal d'un
utilisateur ou un système. Il crée ainsi « le profil normal » d'un utilisateur ou d’un
système à partir des données collectées.
27
Chapitre II : détection d’intrusion
• Une phase de détection : le système compare les traces d'audit courantes ou le
trafic réseau aux profils pour vérifier s'il n'y a pas une activité intrusive. Si la différence
entre le profil et les traces d'audit est significative, une alarme est déclenchée.
Pour pouvoir formaliser le comportement normal d’un système, des approches diverses
ont été utilisées [Deb00] [SUN 96][KIM02] . Cette section sera consacrée à une
présentation générale de ces différentes approches.
5.3.1 L’approche statistique
L'approche statistique est utilisée pour la génération d'un modèle de
comportement
normal d’un système. Elle consiste à générer le profil de comportement normal à partir d
’un ensemble de variables aléatoires, échantillonnées à des intervalles réguliers dans le temps, ces
variables peuvent être par exemple :
- Le temps CPU utilisé.
- Le nombre de connexions établi durant une période de temps.
- Les fichiers les plus fréquemment utilisés.
- Les entrées/sorties effectuées.
- Etc.
Dans cette approche, Denning [DEN87] a proposé un ensemble de modèles statistiques,
leur but est de définir à partir de n observations X1, X2,….Xn sur une variable donnée x, si la
valeur Xn+1 de l’observation n+1 est anormale. Parmi ces modèles, on peut citer les modèles
suivants :
Le modèle opérationnel : ce modèle est très simple, une anomalie est détectée par
la comparaison de la valeur d’une nouvelle observation avec un seuil fixe qui est
défini d’une manière intuitive en se basant sur les données historiques.
Le modèle de déviation standard et moyen : Ce modèle définit un seuil d’anomalie par
l’estimation d’un intervalle de confiance. L’intervalle de confiance est la moyenne et
l'écart type des n observations qui peuvent être considérées normales. Si la valeur d’une
nouvelle observation est en dehors de cet intervalle alors elle est considérée anormale.
Le modèle de covariances : Il est similaire au modèle précédent mais il se base sur la
corrélation de plusieurs variables pour tirer des conclusions.
Ces approches ont été adoptées dans le développement de plusieurs systèmes de
détection d’intrusions, on peut citer par exemple :
28
Chapitre II : détection d’intrusion
MIDAS « Multics Intrusion Detection and Alerting System » [MYK94].
NIDES « Next Generation Real time Intrusion Detection Expert System » [JAC94]
5.3.2 L’approche de la machine learning
Le but principal de l’utilisation de la machine learning est l’extraction automatique
des caractéristiques des activités normales qui sont critiques pour la détection d'anomalies.
A partir des données d’audit, le modèle de la machine learning essaye d'identifier des règles
pour définir les comportements normaux. Ces règles seront employées pour déterminer si des
événements nouvellement observés sont anormaux ou non.
Parmi les travaux qui sont basés sur cette approche, le système de détection d ’intrusions
basé règle TIM « Time based Inductive Machine » [TEN90] proposé par Teng et son
groupe. TIM génère des règles qui essayent de prédire les événements futurs en
se
basant sur des événements qui se sont déjà produits dans le passé.
Durant la phase d'apprentissage, cette approche détermine des règles temporelles qui
caractérisent le comportement normal des utilisateurs. Les règles ont par exemple la forme
suivante :
E1
E2
E3
(E4 = 95%, E5 = 5%) où E1, E2,… E5 sont des événements.
Cette règle signifie que la séquence d’évènements observée E1 E2
E3 implique ensuite
l’occurrence de l’évènement E4 avec une probabilité de 95% ou l’occurrence de l’évènement E5
avec une probabilité de 5%.
Durant la phase de détection, les règles possédant des parties gauches qui correspondent à
la séquence d'événements observée seront sélectionnées et l ’évènement prédit de cette règle sera
comparé avec le dernier évènement qui apparaît dans la séquence d ’évènements observée. Si cet
évènement dévie d’une manière significative de ceux prédits dans la règle, alors TIM alerte
l’officier de sécurité.
5.3.3 L’approche de réseaux de neurones
Les réseaux de neurones sont utilisés dans la détection d’anomalies afin d’exploiter
leurs capacités d’apprentissage. L’idée de base est d’utiliser les mécanismes d’apprentissage des
réseaux de neurones pour apprendre les profils de comportements normaux des utilisateurs ou
d’un système.
29
Chapitre II : détection d’intrusion
Plusieurs travaux ont été élaborés qui ont essayé d’abord d’apprendre à un réseau de
neurones le comportement normal d’un système pour qu’il puisse par la suite de décider si un
ensemble d’action est normal ou suspect. Parmi ces travaux, nous citons le travail de Debar
[Deb93] qui a proposé l’utilisation des réseaux de neurones pour construire un modèle du
comportement des utilisateurs du système informatique. Le travail proposé s’intéresse à l’aspect
dynamique du comportement et à sa présentation sous des séries d’actions temporelles.
5.3.4 L’approche de datamining
Le but de cette approche est l’exploitation des techniques de datamining pour extraire
des anomalies à partir des grandes quantités de données du trafic réseau. Parmi les
travaux existants, on peut citer ADAM « Audit Data Analysis and Mining » [LIY00] qui est un
système de détection d’intrusions qui exploite des techniques de datamining pour construire
des profils du trafic réseau normaux.
ADAM utilise les règles d’association pour construire des profils du trafic de réseau
normaux qui seront employées par la suite pour détecter les comportements incorrects de
trafic de réseau. Pour détecter des anomalies, ADAM extrait les règles d ’association à
partir des données du trafic réseau et qui seront comparées aux profils du réseau. Si n'importe
quelle règle d'association produite à partir des données de trafic de réseau rassemblées
n'est pas incluse dans les profils, alors cette règle est considérée comme une indication
d’un comportement incorrect.
5.3.5 L’approche immunologique
Vu que la détection d’anomalies est une application directe de la métaphore
immunitaire, plusieurs travaux tentent de calquer la manière dont le système immunitaire
naturel procède pour la distinction entre le comportement normal et le comportement
suspect afin de construire des systèmes de détection d’intrusions efficaces. Parmi ces travaux
nous citons le système LYSIS [STE99], [HOF00] qui a intégré des différentes propriétés et
mécanismes inspirés par le système immunitaire humain.
Il se base principalement sur
l’algorithme de la sélection négative proposé par Forrest [FOR94]. Dans ce travail, une
population de détecteurs est générée aléatoirement, puis en se basant sur les modèles de
comportement normaux des utilisateurs, les détecteurs qui identifient ces modèles seront
éliminés, en d’autre terme élimination des détecteurs qui détectent le soi. La population des
détecteurs restants procède à contrôler les opérations effectuées dans le système de telle sorte
que s’il y a une correspondance entre un détecteur et l’opération courante dans le système alors
cette opération est considérée litigieux ou anormal.
30
Chapitre II : détection d’intrusion
6. Les IDS Bases Hôtes Versus Les IDS Bases Réseau
En raison des multiples possibilités d’attaques des systèmes informatiques et les réseaux.
Il existe différents types de systèmes de détection d’intrusions [Deb00], [NIS 01], [AIC04],
[AXE00]
qui varient selon l’endroit qu’ils surveillent et ce qu’ils contrôlent (les sources
d’information).
6.1 L’IDS basé hôte (host- based IDS)
L’IDS basé hôte contrôle un seul hôte. Il analyse des informations rassemblées d’un
système d’ordinateur individuel, ce qui permet à l’IDS basé hôte d'analyser des activités
avec une grande fiabilité et précision en déterminant exactement les processus et les
utilisateurs impliqués dans une attaque particulière.
Les avantages et les inconvénients [NIS
01] [ZAM05] de l’IDS basé hôte sont :
6.1.1 Les avantages d’un IDS basé hôte
-
La capacité de contrôler les activités locales des utilisateurs avec précision.
-
Capable de déterminer si une tentative d’attaque est couronnée de succès.
-
La capacité de fonctionnement dans des environnements cryptés.
-
L’IDS basé hôte fonctionne sur les traces d'audit des systèmes d’exploitation ce qui lui
permet de détecter certains types d’attaques (ex : Cheval de Troie).
6.1.2 Les inconvénients d’un IDS basé hôte
-
La vulnérabilité aux attaques du type déni de service puisque l’IDS peut résider dans
l’hôte cible par les attaques.
-
La difficulté de déploiement et de gestion, surtout lorsque le nombre d’hôtes qui ont
besoin de protection est large.
-
Ces systèmes sont incapables de détecter des attaques contre de multiples cibles dans le
réseau.
6.2 L’IDS basé réseau (Network- based IDS)
Bien que le système de détection d’intrusions basé hôte a montré des résultats
encourageants mais son problème majeur est la détection des intrusions essayées à travers le
réseau. Pour détecter cette sorte d'intrusion, l’IDS a besoin de contrôler des événements
multiples produits sur plusieurs hôtes. En effet, une proportion large d'intrusions est réalisée via
les réseaux et en conséquence l'utilisation des informations sur le trafic réseau rend l'IDS plus
efficace. Ce problème motive l'évolution des IDS basés hôte vers l'IDS basé réseau. Le
31
Chapitre II : détection d’intrusion
système de détection d’intrusions basé réseau détecte des attaques en capturant et analysant des
paquets du réseau. Les avantages et les inconvénients [NIS 01] [ZAM05] de ce type d’IDS sont :
6.2.1 Les avantages d’un IDS basé réseau
-
L’IDS basé réseau est capable de contrôler un grand nombre d ’hôte avec un petit coût de
déploiement.
-
Il n’influence pas sur les performances des entités surveillées.
-
L’IDS basé réseau est capable d’identifier les attaques de /à multiples hôtes.
-
L’IDS basé réseau assure une grande sécurité contre les attaques parce qu’il est invisible aux
attaquants.
6.2.2 Les inconvénients d’un IDS basé réseau
-
L’IDS basé réseau ne peut pas fonctionner dans des environnements cryptés.
-
Ce type d’IDS ne permet pas d’assurer si une tentative d’attaque est couronnée de
succès.
7. les architectures d’implémentation des IDS
L’architecture d’implémentation d’un
système
de
détection d’intrusions
qui
est
considérée comme une stratégie de contrôle décrit la manière de contrôle effectuée par les
éléments d’un système de détection d’intrusions. Nous distinguons trois approches
d’implémentation [NIS01], [KRU02], [JAN00], [KIM02]: Monolithique, hiérarchique et
coopérative.
7.1 L'approche monolithique (centralisée)
Les premières mises en œuvre des systèmes de détection d’intrusions ont employé
une architecture monolithique sous laquelle les données rassemblées seront analysées à un point
central. Puisque le contrôle de l'activité des utilisateurs d’un seul hôte ne révèle pas les
attaques impliquant des hôtes multiples. L’IDS basé réseau a été développé, qui analyse le
trafic de réseau pour déduire les anomalies venant du réseau.
Bien qu’un IDS basé réseau avec un serveur central a montré des résultats prometteurs
pour des réseaux à petite échelle. Cependant, cette approche ne peut pas supporter un grand
réseau à cause de la quantité énorme des données des différents hôtes qui doivent être analysée
par le serveur central, ce qui engendre une dégradation sévère des performances de réseau. Un
exemple d’un système de détection d’intrusions qui se base sur l’approche monolithique est le
système NADIR [PRI98], [MYK94], [WHI96].
32
Chapitre II : détection d’intrusion
7.2 L'approche hiérarchique
Cette approche a été proposée pour surmonter les problèmes de l'approche monolithique.
Elle est caractérisée par l’existence des secteurs de contrôle hiérarchiques. Chaque IDS contrôle
un secteur avec l’élimination du transfert des données d’audit rassemblées par les hôtes
locaux à un point central. Chaque IDS à n'importe quel niveau de contrôle exécute une
analyse locale et envoie ses résultats d'analyse au niveau suivant dans la hiérarchie.
L'approche
hiérarchique montre
la meilleure
incrémentabilité
« scalability »
en
permettant des analyses locales aux secteurs de contrôle distribués. Cependant, les
problèmes vus précédemment demeurent toujours. En plus, le changement de la topologie du
réseau cause un changement aussi bien dans la hiérarchie de réseau et dans les
mécanismes de rassemblement des rapports d'analyse locaux. Ainsi, la difficulté de détecter les
attaques qui visent le niveau le plus haut de la hiérarchie.
Un exemple de système de
détection d’intrusions hiérarchique : GrIDS[STA96], [STA97],
EMERALD [POR98].
7.3 L'approche coopérative (distribuée)
Cette
approche
a
été
suggérée
pour
résoudre
les
problèmes
de l’approche
précédente. Elle essaye de distribuer les responsabilités d'un serveur central à un nombre
de systèmes de détection d’intrusions coopératifs. La différence de cette approche avec
l'approche hiérarchique est qu'il n'y a aucune hiérarchie entre les IDS distribués ce qui
signifie que l'échec de n'importe quel IDS n’empêche pas la détection d'attaques coordonnées.
Parmi les systèmes de détection d’intrusions coopératifs, nous pouvons citer par exemple le
système CSM [WHI96] [PRI98]et le système AAFID [BAL98].
8. Une Vue Générale De Quelques Systèmes De Détection
D’intrusions Existants
Il existe plusieurs systèmes de détection d’intrusions qui ont été développés. Dans
cette section, nous présenterons quelques systèmes de détection d’intrusions existants.
8.1 IDES
IDES (Intrusion-Detection Expert System) a été développé par SRI International. Il
représente le modèle de référence pour un grand nombre de systèmes de détection
d'intrusions. Il a été conçu pour surveiller un seul hôte et il traite uniquement les
données d'audit. Ce système de détection d’intrusions est indépendant du système surveillé,
il fonctionne sur une machine dédiée, reliée au système par un réseau. Afin de détecter les
33
Chapitre II : détection d’intrusion
violations de sécurité en temps réel, IDES s'appuie aussi bien sur une approche statistique que
sur un système expert [PRI98], [MYK94]. Ainsi, il est constitué de deux éléments importants :
- Le
détecteur
d'anomalie
:
qui
est
responsable
de
la
détection
des
comportements atypiques, en utilisant des méthodes statistiques du modèle de Denning
[DEN87].
- Le système expert : qui est chargé de détecter les attaques suspectes en s'appuyant sur
une base de connaissances de scénarios d'attaques connus [PRI98].
8.2 NIDES
NIDES (Next- Generation IDES) [PRI98], [MYK94] est une version améliorée du
système de détection d’intrusions IDES. Il assure la détection d'intrusions sur plusieurs hôtes
(distribuées) en se basant toujours sur les données d'audit. Il n'y a aucune analyse du trafic
réseau. Il utilise les mêmes algorithmes qu’IDES.
8.3 NADIR
NADIR (Network Anomaly Detection and Intrusion Reporter[PRI98], [MYK94],
[BAL98] est un système expert qui a été conçu pour le réseau ICN (Integrated Computing
Network) du Laboratoire National Los Alamos. Son but est d'analyser les activités réseaux des
utilisateurs et d ’ICN en se basant sur les règles du système expert qui définissent la
politique de sécurité et les comportements suspects. L’inconvénient majeur de ce système est
qu'il ne peut être porté sur d'autres réseaux, étant donné que les protocoles réseaux d'ICN ne
sont pas standards.
8.4 DIDS
DIDS (Distributed Intrusion Detection System) [PRI98], [MYK94], [BAL98] est un
système de détection d’intrusions basé réseau qui se base sur l’approche hiérarchique. Afin
d’éviter la dégradation des performances de système, DIDS délègue certaines analyses locales aux
hôtes locaux. Son architecture se compose de trois entités :
Le « Host Monitor » : Il en existe un par hôte. Il collecte les données de l ’hôte
surveillé, fait une première analyse simple sur ces données puis transmet les
événements pertinents au « DIDS Director ».
Le « LAN Monitor » : Il en existe un pour chaque segment LAN. Il surveille le trafic
sur le LAN, collecte les informations réseaux et reporte au « DIDS Director » les
activités suspectes et non autorisées qui se sont produites sur le réseau.
34
Chapitre II : détection d’intrusion
Le « DIDS Director » : Il analyse les rapports reçus du « LAN Monitor » et des « Host
Monitor » afin de détecter les attaques potentielles.
8.5 GrIDS
GrIDS (Graph-Based Intrusion Detection System) [STA96] [STA97] a été conçu
pour détecter des attaques à grande échelle. GrIDS considère les réseaux larges comme une
agrégation de sous réseaux. Les données concernant l'activité des hôtes et le trafic réseau
entre ces hôtes sont rassemblées dans des graphes d'activité qui révèlent la structure causale de
l'activité réseau.
Les nœuds d’un graphe d'activité correspondent aux hôtes constituant le réseau alors que
les arêtes représentent l'activité réseau entre les différents hôtes.
Durant la phase de détection, GrIDS analyse les caractéristiques des graphes
d'activité et compare ces graphes à des formes intrusives connues. S'il y a des similitudes
entre ces graphes et des attaques connues, il en informe l'officier de sécurité.
8.6 CSM
CSM (Cooperating Security Manager) [PRI98] [WHI96]est un système de détection
d'intrusions qui peut être utilisé dans un environnement de réseau distribué. Son principal
objectif est de détecter les activités intrusives de façon non centralisée car utiliser un
directeur central qui coordonnerait toutes les activités limiterait la taille du réseau « le
problème d’incrémentabilité ». Pour cela, CSM doit s'exécuter sur chaque hôte connecté au
réseau. Ainsi, au lieu de reporter les activités anormales à un directeur central, les CSM
communiquent entre eux pour détecter d ’une manière coopérative les intrusions réseaux. Les
composants principaux de ce système de détection d’intrusions sont :
Un système de détection d'intrusions local (IDS) : qui assure la détection d'intrusions
pour un hôte local.
Un gestionnaire de
sécurité : qui coordonne
la détection d'intrusions distribuée
entreles CSM.
Un gestionnaire d'intrus (IH : intruder handling component) : dont le rôle est
d'entreprendre les actions nécessaires lorsqu’une intrusion est détectée.
35
Chapitre II : détection d’intrusion
8.7 AAFID
Le système AAFID (Autonomous Agent for Intrusion Detection) [CRO95], [CRO95a]
[BAL98] est la première tentative d’utilisation des agents autonomes pour les systèmes de
détection d’intrusions basés réseau où plusieurs agents indépendants opèrent de manière
coopérative pour assurer la surveillance du système cible. La décision finale du système est
le résultat de coopération entre ces différents processus.
Les recherches actuelles visent à améliorer les systèmes de détection d’intrusions en raison
de la complexité croissante des environnements à protéger, qui sont de plus en plus larges
et dynamiques. Ainsi, la nature des intrusions actuelles et futures nous incite à développer des
outils adaptatifs et automatiques. Une solution prometteuse consiste à s’inspirer à partir des
métaphores biologiques pour résoudre ces problèmes. Cela est réalisé via l’exploitation des
concepts et des méthodes d’identification et de détection du système immunitaire humain, qui est
capable d’assurer la protection du corps contre les différents intrus d’une manière robuste,
autonome, distribuée et adaptative. Alors, pourquoi de ne pas concevoir des systèmes
immunitaires afin de protéger les systèmes et les réseaux informatiques.
Le système immunitaire constitue un intérêt croissant des recherches vu de sa
capacité de traitement des informations. En particulier, il assure des calculs d’une manière
distribuée et parallèle. Il peut apprendre des nouvelles informations et identifier les
différents modèles d’une manière décentralisée. Il détecte et répond aux envahisseurs
étrangers d’une façon distribuée. L’approche immunologique est une solution prometteuse
pour la détection d’anomalies vue l’analogie puissante qui existe entre l’objectif du système
immunitaire humain et celui du système de détection d’intrusions ainsi que la capacité du
système immunitaire humain à protéger le corps contre les intrus. Ce système présente un
intérêt croissant des différents travaux existants pour exploiter ces méthodes d ’identification
et de détection dans des systèmes de détection d’intrusions.
Pour cette raison, dans ce travail nous nous intéresserons par ce domaine de recherche.
9. Emplacement de l’IDS
Le choix de l’IDS est très influencé par son éventuel emplacement au sein du réseau. En
effet,
la topologie réseau impose quelques règles à respecter si on veut l’IDS soit efficace.
L’emplacement de l’IDS doit également tenir compte du type d’intrusions à détecter
(internes, externes, les deux). Si dans un réseau, il existe un seul point de connexion à
internet, le meilleur emplacement de l’IDS est qu’il soit juste après le routeur. Si dans un
36
Chapitre II : détection d’intrusion
autre réseau, différents points de connexions à internet existent, un IDS est placé pour chaque
point de connexion comme nous pouvons le voir dans la Fig. II.5. Par contre pour détecter
les intrusions internes un IDS doit être placé à chaque segment du réseau. [Snr03]
Fig. II.5. Emplacement de l’IDS au sein d’un réseau.
10. Evaluation d’un IDS
Des mesures permettent de comparer et de mesurer l’efficacité des IDS. Les IDS sont
des éléments très importants dans une stratégie de sécurité, pour cela le choix de l’IDS est très
décisif et doit être basé sur les caractéristiques de ce dernier, les tâches qu’il devra accomplir, son
emplacement …etc. mais également selon des mesures qui permettent d’évaluer son
efficacité. La technique la plus utilisée pour évaluer un IDS est le scanner de vulnérabilités.
Cependant, ce dernier reste peu fiable.
Les mesures permettant de mieux choisir son IDS et mesurer son efficacité sont :
[BUR06]
-
Qualité des informations fournies par l’IDS : le taux de faut positif.
-
Réponse de l’IDS dans un environnement surchargé.
-
La possibilité de mettre à jour la base des signatures ou de modifier certaines
signatures.
-
La séparabilité des fonctions d’administration (architecture distribuée).…etc.
Les IDS à leurs tours peuvent faire l’objet d’attaques et certaines de leurs faiblesses sont liées au
système d’exploitation (saturation de la mémoire ou de la carte réseau) [GAD07].
37
Chapitre II : détection d’intrusion
11. Conclusion :
Dans ce chapitre, nous avons présenté le système de détection d ’intrusions et nous
avons également étudié d’une manière détaillée les différents types d’IDS selon différents
critères de classification avec la présentation générale des différentes techniques utilisées
pour la détection d’intrusions.
Afin d’obtenir un système de détection d’intrusions compétent et efficace,
souhaitable d’utiliser
connaissances
les
deux
en parallèle pour
techniques
surmonter
de
détection
les problèmes
comportementale
et
il est
basée
liés à chacune de ces deux
techniques de détection. Cependant, les systèmes de détection d’intrusions commercialisés
emploient seulement la technique de détection basée connaissance, ce qui motive les différents
efforts de recherche dans le domaine de la détection d’anomalies.
Pour cette raison, différentes approches sont utilisées pour implémenter la technique
de la détection d’anomalies. Parmi ces approches diverses, nous intéresserons à l’approche
immunologique qui constitue un intérêt accru des recherches actuelles vu de l’analogie qui
existe entre le système de détection d’intrusions et le système immunitaire humain. Cette
approche qui présente beaucoup d’aspects intéressants pour le développement d’un système de
détection d’intrusions efficace.
Le troisième chapitre sera consacré à étudier d’une manière détaillée les systèmes
immunitaires artificiels. Cette approche qui s’inspire par le mécanisme de défense humain et qui
présente des capacités intéressantes d’apprentissage, d’adaptation et d’évolution pour détecter
les anomalies afin d’entretenir les réseaux informatiques sereins.
38
Chapitre III : système immunitaire
Chapitre III :
Systèmes immunitaires
Dans ce chapitre :
1. Introduction.
2. Systèmes immunitaires naturels.
3. Caractéristique du système immunitaire
4. Systèmes immunitaires artificiels.
5. Extension du système immunitaire artificiel
6. L’analogie entre le système de détection d’intrusion et le système
immunitaire
7. Les domaines d’application des AIS
8. Conclusion
39
Chapitre III : système immunitaire
1. Introduction
Un intérêt croissant d’utiliser la biologie comme source d’inspiration pour résoudre
différents problèmes. Ce domaine de recherche se base principalement sur l’extraction des
métaphores utiles
à
partir
des
systèmes
biologiques
afin
de
créer des
solutions
informatiques efficaces aux problèmes complexes. Les développements les plus appréciables ont
été les réseaux de neurones inspirés par le fonctionnement du cerveau, et les algorithmes
évolutionnaires inspirés par la théorie de l’évolution darwinienne.
Cependant, plus récemment, un intérêt croissant pour l’utilisation d’un autre système
biologique qui est le système immunitaire comme source d’inspiration pour résoudre des
problèmes complexes. Le système immunitaire biologique est doté par des capacités de
traitement
de l’information
y
compris l’identification
du
modèle, l’apprentissage,
la
mémorisation et le traitement parallèle distribué. Pour ces dernières et d’autres raisons, le
système immunitaire a suscité un intérêt significatif pour l’employer comme une métaphore
d’inspiration dans le calcul. Ce domaine de recherche est connu sous l’appellation des
systèmes immunitaires artificiels.
Ce chapitre sera composé de deux parties principales dont la première partie sera consacrée
à la présentation du système immunitaire biologique, en exhibant les différents composants
immunitaires et les différents mécanismes utilisés par ce système. Enfin, nous récapitulerons les
propriétés intéressantes du système immunitaire qui constituent d’un point de vue
informatique une source d’inspiration très riche. Tandis que la deuxième partie sera
consacrée à définir le système immunitaire artificiel (AIS) et le processus de conception d’un AIS.
Ainsi,
nous
intéresserons
à
présenter
les
différents
algorithmes
et
les
modèles
immunitaires. Par la suite nous exposons les tentatives d’extension du système immunitaire
artificiel en intégrant une nouvelle théorie immunologique qui est la théorie de danger. Nous
allons consacrer la dernière section pour
la présentation de l'analogie entre le système
immunitaire humain et le système de détection d'intrusions.
2. Le système immunitaire naturel
2.1 Introduction
Toutes
les créatures vivantes sont dotées par un système immunitaire, par exemple
quelques plantes ont des épines protectrices pour fournir la protection de prédateurs qui les
attaquent. Les animaux contiennent des os (des vertébrés) qui ont développé un système
immunitaire fortement efficace et complexe.
40
Chapitre III : système immunitaire
Notre
étude
sera
focalisée
sur
le
système
immunitaire
de vertébrés, plus
spécifiquement le système immunitaire humain. C’est dû aux caractéristiques intéressantes
d’une perspective biologique et informatique et la compréhension de son fonctionnement.
2.2 Le système immunitaire
Le système immunitaire est une collection de cellules, des molécules et des organes.
Il représente un mécanisme d’identification capable de percevoir et de combattre le
dysfonctionnement de ses propres cellules et les micro-organismes exogènes infectieux qui
envahissent le corps [CAS99] .
2.3 L’architecture du système immunitaire
Le corps humain est doté par plusieurs mécanismes de défense qui s’étendent à
plusieurs niveaux. La première ligne de défense est composée de barrières physiques qui sont : la
peau, l’urine, les membranes muqueuses, etc. Si cette première ligne échoue d’éliminer un
intrus alors le système immunitaire utilise d’autres mécanismes de défense.
Le système
immunitaire possède une architecture multicouche [CAS99], [TIM04] [KIM02] qui est
constituée de deux couches inter-liées qui sont le système immunitaire inné et le système
immunitaire adaptatif ou acquis (Figure.III.1).
Immunité
Innée
Adaptative (acquise)
Macrophages
Lymphocytes
Cellule T
Cellule B
Figure III.1 : Architecture du système immunitaire
2.3.1
Le système immunitaire inné
Le système immunitaire inné est composé d’un ensemble de cellules spécialisées dont le
rôle principal est la liaison avec des modèles moléculaires trouvés dans des microorganismes. Cependant, ce système ne peut pas assurer la protection complète du corps. Il est
caractérisé par [KIM02] [TIM04]:
41
Chapitre III : système immunitaire
-
Les mécanismes de détection des organismes étrangers sont constants, aussi bien pour
les infections répétées.
-
La réponse du système immunitaire inné est non spécifique à un type particulier
d’intrus mais elle est identique contre tous les pathogènes qui envahissent le corps.
-
Il joue un rôle vital pour l’initialisation et la régularisation de la réponse
immunitaire adaptative.
2.3.2
Le système immunitaire adaptatif
Le système immunitaire adaptatif est constitué de types différents de cellules dont
chacun joue un rôle important. Le rôle central est assuré par les lymphocytes qui sont
composés de deux types de cellules : cellule B et cellule T. Le système immunitaire adaptatif
est caractérisé par : [KIM02] [TIM04]
-
Le système immunitaire adaptatif s’occupe avec les intrus qui ne sont pas détectés par
le système immunitaire inné.
-
Le
système
immunitaire
adaptatif
est
généré
dynamiquement
contre
les
organismes étrangers pendant sa durée de vie. Il fournit des mécanismes plus
efficaces qui seront adaptés aux changements antigéniques.
-
Le système adaptatif est adressé à des intrus spécifiques.
-
La présence d’une mémoire immunologique qui permet aux cellules de se souvenir
des intrus déjà rencontrés lors des prochaines rencontres.
2.4 La physiologie du système immunitaire
Le processus de génération et de développement de cellules immunitaires est assuré
principalement par deux organes[CAS99] : la moelle osseuse et le thymus. La moelle osseuse
est l’endroit de production de toutes les cellules sanguines et où certaines classes de cellules se
développent. Le thymus est l’organe où une autre classe de cellules immunitaires migre pour
passer l’étape de maturation.
Le système immunitaire possède d’autres types de cellules immunitaires, mais cette
étude sera focalisée principalement sur les lymphocytes. Les lymphocytes sont des globules
blancs produits dans la moelle osseuse spécialisés dans l’identification de pathogènes qui
sont composés de deux types[CAS99], [TIM03]: les cellules B et les cellules T. Les
lymphocytes qui se développent dans la moelle osseuse sont nommés des cellules B et ceux
qui migrent et se développent dans le thymus sont nommés des cellules T. Ces
42
Chapitre III : système immunitaire
lymphocytes possèdent des récepteurs qui sont localisés sur leur surface responsable de la
reconnaissance des modèles antigéniques.
2.4.1
Les cellules B
La fonction principale des cellules B consiste à produire et à sécréter des molécules
appelées anticorps comme une réponse aux corps étrangers [CAS99]. Chaque cellule B
produit un anticorps spécifique. Les anticorps sont des protéines spécifiques qui reconnaissent
et lient avec d’autre protéine particulière. Le récepteur de cellule B est appelé BCR ou bien
anticorps (Ab) (Figure III.2 :(a)).
2.4.2
Les cellules T
Les cellules T peuvent être classées selon deux types : les cellules T d’aide (T helper) et les
cellules T cytotoxiques (T killer). Les cellules T d’aide assurent des fonctions essentielles
pour la régularisation de la réponse immunitaire par exemple l’activation ou la suppression
du développement de certain type de réponse immunitaire. Par contre, les cellules
Tcytotoxiques assurent des fonctions de suppression des envahisseurs microbiens, des virus ou
les cellules cancéreuses. Ainsi, les cellules T présentent des récepteurs sur leur
surface(Figure III.2 (b)).
TCR
BCR ou anticorps
Cellule T
Cellule B
(a)
(b)
Figure III.2 : Présentation d’une cellule B et une cellule T
2.5 Comment le système immunitaire assure t-il la protection du corps
humain?
Notre corps est protégé par une collection diverse des cellules et des molécules qui
collaborent contre n’importe quelle molécule étrangère comme les bactéries ou d’autres
envahisseurs. La figure ci-dessous présente une version simplifiée des mécanismes de base de
défense immunitaire (figure III.3), et qui peuvent être résumés par les étapes suivantes :
43
Chapitre III : système immunitaire
1- Quand un intrus envahit le corps, les cellules de présentation antigénique (APC1 ) comme
les macrophages procèdent à l’ingestion et la digestion de l’antigène rencontré pour
le présenter comme des fragments de peptides antigéniques
2- Ces peptides seront liées avec les molécules MHC pour permettre leurs liaisons avec
les cellules T qui ont la capacité de reconnaître la combinaison de peptide / MHC.
3- Les cellules T activées par cette identification produisent et sécrètent des lymphokines ou
des signaux chimiques pour mobiliser d’autres composants du système immunitaire.
4- Les cellules B qui ont aussi des molécules de récepteur complémentaires répondent à ces
signaux. À la différence des récepteurs de cellules T, ceux de cellules B peuvent
reconnaître les parties d’antigènes libres sans les molécules MHC.
5- Après cette activation, les cellules B prolifèrent et se différencient et sécrètent des
protéines d’anticorps.
6- La liaison entre les anticorps et les antigènes disponibles mènent à la destruction
et la suppression des antigènes.
7-
Un nombre de cellules B et T deviennent des cellules mémoires qui ont une durée de vie
illimitée, en permettant l’élimination rapide de l’antigène s’il se présente une autre fois
dans l’avenir.
Figure III.3 : Le processus de base de défense immunitaire
1
- APC est un type particulier de globine blanc du sang dont le rôle principal est la digestion des intrus cachés à
l’intérieur des cellules pour les présenter aux lymphocytes.
44
Chapitre III : système immunitaire
2.6 Les processus de base d’un système immunitaire
2.6.1
L’identification dans le système immunitaire naturel
La reconnaissance d’un antigène est assurée par les lymphocytes. La réaction de
chaque lymphocyte est limitée au nombre de cellules étrangères connues comme antigènes. En
effet, chaque lymphocyte (cellules B et T) possède un ensemble de récepteur spécifique
sur sa surface et ces récepteurs ont une forme complémentaire aux déterminants spécifiques
connus comme épitopes présents sur la surface des antigènes. Un antigène est identifié s ’il y’a
une correspondance entre les récepteurs des cellules et l’épitope de l’antigène [TIM02]
[TIM03]. Les cellules B et T ont une structure semblable mais elles ont une manière de
reconnaissance différente [CAS99], [TIM03]. Les cellules B sont capables de reconnaître les
antigènes libres (Figure III.4(a)), tandis que les cellules T ont la possibilité de reconnaître
l’antigène qui est présenté par les molécules MHC (1) (Figure III.4 (b)).
Figure III.4 : L’identification dans le système immunitaire
2.6.2
L’activation
L’identification de l’antigène est l’étape préalable pour déclencher une réponse immunitaire
pour détruire l’antigène reconnu [TIM02]. Le système immunitaire humain emploie
l’appariement approximatif pour déclencher la réponse immunitaire. Grâce à l’appariement
approximatif, le système immunitaire est capable de détecter de nombreux antigènes.
L’appariement entre un récepteur d’un lymphocyte et un épitope de l’antigène détermine
l’affinité(le degré de liaison entre le récepteur d’une cellule et l'antigène)entre un lymphocyte et
un antigène [TIM01]. Si l’appariement entre un récepteur et l’épitope est fort alors l’affinité est
grande sinon elle est petite.
1
- Le rôle de la molécule MHC consiste à rassembler les fragments de protéines cachés à l'intérieur des cellules
pour les présenter sur la surface de cette cellule infectée afin de permettre leur identification par les
cellules T.
45
Chapitre III : système immunitaire
Les anticorps de cellules B matures seront activés d’une manière directe ou indirecte, le
type d’activation est déterminé en fonction d’un seuil d’affinité. Quand une cellule B correspond
à un antigène avec une affinité forte au-dessus du seuil d’affinité, alors elle sera activée
directement pour se développer et se différencier. Sinon, si une cellule B correspond à
l’antigène avec une affinité faible au-dessous du seuil d’affinité, elle a besoin de l’aide de
cellule T d’aide (T helper) pour qu’elle puisse être activée (l’activation indirecte). Pour le cas des
cellules T, l’activation aura lieu s’il y a un appariement entre une cellule T et une molécule
MHC qui contient un fragment de l’antigène [CAS99].
Après l’apparition d’une réponse immunitaire suite à un stimulus antigénique. Les
cellules ayant identifiées l’antigène prolifèrent et différencient, ainsi elles constitueront des
cellules mémoires. Pour cette raison, la section suivante sera consacrée à la présentation
de ce principe de base.
2.7 Le principe du mécanisme de la sélection clonale
En effet, les modèles antigéniques changent constamment, l’efficacité de la détection
est maintenue par l’apprentissage dynamique de ces changements qui est assuré par la sélection
clonale [CAS99]. La théorie de la sélection clonale décrit les conséquences de la réponse
immunitaire suite à un stimulus antigénique en assurant que seules les cellules qui
reconnaissent l’antigène subissent aux proliférations et différentiations.
Quand un antigène envahit le corps, des cellules immunitaires reconnaissent cet
antigène avec des degrés d’affinité différents. La réponse des cellules B est la production des
anticorps dont chaque cellule sécrète un seul type d’anticorps qui est relativement
spécifique à l’antigène. L’appariement fort entre les récepteurs des anticorps et l’antigène
produit la stimulation des cellules B c'est-à-dire la prolifération (clone) et la maturation en des
cellules de plasma. Le taux de prolifération d’une cellule est directement proportionnel à son
affinité avec l’antigène [TIM03][CAS99], les cellules qui ont les plus grandes affinités
seront les plus proliférées et réciproquement. En plus, les lymphocytes qui ont une forte affinité
peuvent se différencier en des cellules mémoires. (Figure III.5)
46
Chapitre III : système immunitaire
Figure III.5 Le principe de la sélection clonale
2.7.1
L’hypermutation somatique
Le résultat du processus de la sélection clonale est la reproduction de nouvelles cellules
qui sont des sosies de leurs parents. Ces clones seront soumis à un mécanisme de mutation avec
des taux très élevés (plus haut que des taux de mutation de cellules ordinaires). Ce
mécanisme est appelé l’hypermutation somatique [TIM03], [CAS99]. Le résultat est des
filles de la cellule B initiale qui ont des récepteurs différent s du parent et par conséquence des
affinités différentes
aux
pathogènes. L’hypermutation
somatique
est
inversement
proportionnelle à l’affinité d’une cellule c'est-à-dire les cellules qui ont les plus hautes
affinités seront les moins mutées et réciproquement. Le mécanisme de l’hypermutation
somatique permet au système immunitaire d'augmenter la capacité d'identification des
anticorps par rapport à un antigène sélectif.
2.7.2
La mémoire immunitaire
L’identification de l’antigène n’est pas suffisante, le système immunitaire humain
possède des capacités supplémentaires pour avoir une réponse efficace contre les pathogènes
[CAS99]. Le système immunitaire humain possède plusieurs types de réponses immunitaires
(Figure III.6), qui sont :
-
La réponse primaire.
-
La réponse secondaire.
47
Chapitre III : système immunitaire
-
La réponse réactive croisée.
2.7.2.1
La réponse primaire
Cette réponse est le résultat de la première exposition à un antigène qui stimule une
réponse immunitaire adaptative. Cette réponse est traitée par un petit nombre de cellules
B dont chacune produisent des anticorps à des affinités différentes. Elle est caractérisée par un
temps de latence grand et un petit nombre d’anticorps.
2.7.2.2
La réponse secondaire
Les prochaines expositions à des antigènes rencontrés précédemment stimulent des
réponses secondaires. Ce processus est dû à une rétroaction d’événements passés aidant le
système à apprendre. L’efficacité de cette réponse est augmentée par l’existence des cellules
mémoires qui correspondent à un nombre de clone à forte affinité. Ces cellules mémoires sont
produites lors de la première exposition à l’antigène.
Cette stratégie assure que la vitesse et l’exactitude de la réponse immunitaire
deviennent successivement plus élevées après chaque
intrusion où
le système améliore
continuellement ces capacités d’exécution des tâches. Ainsi, on peut noter que la réponse
secondaire est caractérisée par un temps de latence très court, un taux d’anticorps plus
élevé et une plus longue persistance des anticorps.
2.7.2.3
La réponse réactive croisée
Une réponse secondaire n’est pas seulement déclenchée par la réintroduction de
même pathogène dans le futur. En effet, Il est possible qu'un antigène puisse se présenter avec
des formes
différentes
qui
sont
des
variations
légères
de l’antigène
initial. Une
caractéristique importante de la mémoire immunitaire est qu’elle est associative [CAS99].
Cette particularité permet aux cellules B adaptées à un certain type d’antigène, par exemple
l’antigène (A) de présenter également une réponse secondaire efficace et rapide aux
antigènes qui sont semblables à l’antigène (A). Cette réponse est connue sous l’appellation : la
réponse réactive croisée ou bien la réaction immunologique croisée.
48
Concentration
d’anticorps
Chapitre III : système immunitaire
Réponse à
A+B
Antigène A+B
Figure III.6 : Les différents types de réponses immunitaires
2.7.3
La maturation d’affinité
La maturation d’affinité est le processus qui garantit que le système immunitaire possède de
plus en plus des cellules immunitaires spécialisées pour la reconnaissance des modèles
antigéniques [TIM03]. Ce processus est
le
résultat du mécanisme de l’hypermutation
somatique suivi par une sélection. La mutation qui affecte les parties des récepteurs qui
lient avec l’antigène suivi par une sélection qui garantit la préservation des solutions
candidates de hautes qualités. Le récepteur qui possède la plus haute affinité permet
d’avoir le plus fort appariement et ainsi la meilleure identification, ce qui permet d’avoir
une réponse immunitaire exacte et efficace.
La réponse immunitaire est adaptative parce que l’opération de mutation suivie par
une sélection permet aux récepteurs de cellules de s’y adapter à l’antigène. Cela garantit que les
rencontres suivantes avec un certain type d’antigène mènent aux réponses plus puissantes.
2.8 Le répertoire cellulaire
La capacité du système immunitaire à identifier les antigènes est complète [CAS99].
Les récepteurs des différentes cellules immunitaires peuvent identifier les intrus externes et même
les cellules du soi (la théorie du réseau immunitaire idiotypique qui sera détaillée dans les
sections suivantes). La diversité des récepteurs est assurée d’une part pendant la reproduction de
molécules de récepteur par la recombinaison des segments de gène à partir de la
49
Chapitre III : système immunitaire
bibliothèque de gènes. D’autre part par le mécanisme de l’hypermutation somatique qui
permet la génération continuelle de nouveaux récepteurs [TIM04].
2.9 La discrimination entre soi / non soi.
Si le système immunitaire est capable de reconnaître n’importe quel modèle antigénique qui
est le complément des récepteurs de cellule immunitaire. Comment le système immunitaire se
comporte quand il est confronté avec un antigène de soi (1) ?
La capacité du répertoire du système immunitaire pour reconnaître les antigènes est
complète. Cependant, cette propriété représente un paradoxe fondamental parce que toutes
les molécules qui peuvent être reconnues incluant les cellules du corps seront considérées
comme antigènes ou antigènes de soi [CAS99].
Pour que le système immunitaire fonctionne correctement, il doit être capable de
distinguer entre les cellules de soi et les cellules étrangères (cellules de non soi), cette
capacité est appelée la tolérance de soi(2). Ce problème est reconnu sous le nom
problème de discrimination entre soi / non soi [TIM03],[CAS99]. Donc, il doit y avoir
quelque
forme de sélection négative qui empêche les cellules immunitaires de devenir auto
réactives.
2.9.1
La sélection négative pour les cellules T
Après la production des cellules T naïves dans la moelle osseuse, elles migrent vers
le thymus. Les cellules T immatures ou naïves subiront alors un processus de sélection négative
[CAS99][TIM03] dans le thymus(3). Le processus de la sélection négative permet l
’élimination des cellules T naïves qui peuvent reconnaître un antigène de soi. Les cellules T
naïves qui ne reconnaissent aucun antigène du soi dans le thymus seront libérées pour la
recherche éventuelle des cellules de non soi.
2.9.2
La sélection négative pour les cellules B
La sélection négative est appliquée aussi sur les cellules B dans la moelle osseuse, quand les
cellules B immatures identifient les cellules du soi, elles seront éliminées. Ce mécanisme est
appliqué seulement sur les cellules B immatures dans la moelle osseuse. La tolérance au soi des
1
- Antigène de soi est une autre appellation pour les propres cellules du corps humain.
- Si le système immunitaire n'est pas tolérant au soi, donc une réponse immunitaire sera déclenchée contre les
cellules de soi causant la maladie de L’auto-immunité.
3
- Le thymus est un organe qui est doté par une barrière thymique de sang pour éviter l’assistance des antigènes du
non soi.
2
50
Chapitre III : système immunitaire
cellules nouvellement générées après le processus de la sélection clonale et l’hypermutation
somatique, sera assurée par l’assistance des cellules T d’aide [KIM02].
2.10
La théorie du réseau immunitaire
La sélection clonale est la théorie qui explique comment le système immunitaire répond à
un antigène de non soi. Tandis que la sélection négative est employée pour éliminer les cellules
auto réactives. Une autre question cruciale à être répondue est comment les cellules du
système immunitaire interagissent avec d'autres cellules immunitaires ? Intéressé par ce
problème, Jerne a proposé la théorie du réseau immunitaire [JER74]qui suggère que les
interactions au sein du système immunitaire ne se limitent pas entre anticorps et antigènes,
mais aussi entre les anticorps même en absence d’un stimulus antigénique. Cette interaction est
assurée par des récepteurs spécialisés présents sur la surface des anticorps appelés
:idiotope. Alors, le système immunitaire est formellement défini par un réseau énorme et
complexe de paratopes qui reconnaissent un ensemble d'idiotopes et d'idiotopes reconnus par un
ensemble de paratopes. Ainsi, chaque élément pourrait reconnaître aussi bien qu'être
reconnu. Ce réseau est appelé le réseau immunitaire idiotypique [TIM03], [CAS99].
Cette théorie synthèse la propriété de la détection distribuée des systèmes immunitaires, elle
montre l’état dynamique des interactions internes des lymphocytes, des anticorps et
antigènes. Les lymphocytes stimulés peuvent répondre positivement ou négativement à un
signal d’identification (Figure III.7). La réponse positive est le résultat d’une liaison entre un
anticorps et un antigène qui provoque l’activation et la prolifération des cellules ainsi la
sécrétion d’anticorps. Par contre la réponse négative est le résultat d’une liaison entre un
anticorps et un anticorps qui entraîne une suppression [CAS99]. La chaîne continue de
différentiation par antigène et la suppression par anticorps forme un réseau. Ce réseau peut
atteindre le statut d'équilibre entre la suppression et la stimulation pour déterminer le système
immunitaire complet [KIM02]. Cette théorie en particulier reflète les propriétés parallèles
et distribuées de système immunitaire parce que différentes réponses locales entre un anticorps et
un antigène ou un anticorps et un anticorps arrivent en parallèle et à des endroits dispersés.
51
Chapitre III : système immunitaire
Figure III.7 : La représentation du réseau immunitaire idiotypique
3. Caractéristique du système immunitaire
Dans les sections précédentes, nous avons essayé de présenter le système
immunitaire humain, son processus d’identification et d’activation. Ainsi que certains
processus immunitaires de base. Cette partie sera consacrée à une récapitulation des
propriétés intéressantes du système immunitaire qui constituent d ’un point de vue
informatique une source d’inspiration très riche, qui sont [LAB06]:
- Multicouche : Le système immunitaire possède une
architecture multicouche qui
consiste en deux sous systèmes inter-liés qui sont le système immunitaire inné et
le
système immunitaire adaptatif. Ces deux systèmes combinent
leurs
tâches et
responsabilités pour assurer la protection et la sécurité globale.
- Unicité : Chaque élément dans le système immunitaire assume des responsabilités
particulières.
- Autonomie : Le système immunitaire humain ne possède aucun contrôle central ou
un gestionnaire particulier. Il possède une autonomie globale dans la détection et
l’élimination des intrus.
- Distribution : Les cellules immunitaires et les molécules sont distribuées dans le
corps humain pour assurer sa protection. Il n’existe pas un point de contrôle centralisé.
- Parallélisme : Le système immunitaire est capable de produire plusieurs réponses
immunitaires en même temps à des endroits dispersés.
- Tolérance au soi : Le système immunitaire humain peut différencier entre les cellules de
soi et les cellules de non soi.
52
Chapitre III : système immunitaire
- Apprentissage : Le système immunitaire augmente la capacité d'identification des
anticorps à un antigène sélectif (les répons es primaire et secondaire). Il apprend
continuellement les structures de pathogènes.
- Adaptabilité : Le système immunitaire humain permet
la production des cellules de
plus en plus spécialisées pour l’identification des antigènes. Cela est garantit par la théorie
de la sélection clonale suivie par le mécanisme de l’hypermutation somatique.
- Dynamique :Le système immunitaire change continuellement par la création de
nouvelles cellules et molécules, l’élimination des cellules vieilles ou endommagées. Un
bon exemple de la dynamique du système immunitaire est la théorie du réseau
idiotypique.
- Diversité : Le système immunitaire naturel est capable d’identifier n’importe quels intrus
qui envahissent le corps. Le répertoire cellulaire est complet. Cette particularité est due à
plusieurs mécanismes qui sont par exemple : l ’hypermutation somatique, la reproduction
de récepteur, l’identification approximative des intrus, etc.
- Mémorisation : Après une réponse immunitaire à un antigène donné, un ensemble
de cellules constituent l'ensemble de cellules mémoires qui seront dotées par une durée
de vie longue afin de fournir des réponses immunitaires plus rapides et plus puissantes
aux rencontres suivantes d'un même antigène.
- Coopération : Les cellules immunitaires coopèrent leurs capacités pour assurer une
meilleure détection et également une protection puissante par exemple les cellules
T d’aide, les molécules MHC, etc.
- Détection : Le système immunitaire est capable d’identifier et détecter les intrus dans
le corps sans aucune connaissance antérieure de la structure de ces intrus.
4. Le Système Immunitaire Artificiel
Le système immunitaire biologique possède la capacité pour protéger le corps humain
contre une variété énorme de pathogènes étrangers. Dans les dernières années, un nombre
de chercheurs ont étudié le succès et la compétence de ce système naturel et ont
proposé le modèle immunitaire artificiel pour la résolution de divers problèmes. Des approches
diverses ont été proposées pour mettre en ouvre les mécanismes de base du système
immunitaire humain [DAS03]. Cette section sera consacrée à introduire le système immunitaire
artificiel avec une présentation des différents modèles qui ont été mis en ouvre.
53
Chapitre III : système immunitaire
4.1 Définitions
4.1.1
Définition 1
Selon Timmis [TIM01] : « Un système immunitaire artificiel est un système informatique
basé sur les métaphores du système immunitaire naturel ».
4.1.2
Définition 2
Dasgupta a défini le système immunitaire artificiel comme suit [DAS99]: « Le
système immunitaire artificiel est la composition de méthodologies intelligentes inspirées
par le système immunitaire naturel afin de résoudre des problèmes du monde réel ».
4.1.3
Définition 3
Tandis que Timmis et De Castro [TIM02A] ont donné la définition suivante : « Les
systèmes immunitaires artificiels sont des systèmes adaptatifs inspirés par des théories
immunologiques et des observations de fonctions immunitaires, de s’principes et des modèles,
qui seront appliqués à la résolution des problèmes ».
4.2 Le processus de conception d’un AIS
Un schéma pour concevoir un algorithme de point de vue quantitatif exige au
moins les éléments de base suivants [TIM03],[TIM04] :
Une représentation pour les composants du système.
Un ensemble de mécanismes pour évaluer l'interaction des individus avec
l'environnement. Les environnements sont simulés par un ensemble de stimulus
d'entrée, une ou plusieurs fonctions d’évaluation.
La procédure d'adaptation qui dirige la dynamique du système, c'est-à-dire
comment son comportement varie dans le temps.
Ce schéma est adopté par Timmis & de Castro [TIM02A] qui ont proposé un
processus de conception d’un AIS. Leur principe est :
Une représentation pour créer les modèles abstraits des cellules et d'organes
immunitaires.
Un ensemble de
fonction nommée
fonction d'affinité pour évaluer
les
interactions entre ces éléments artificiels d’une manière quantitative.
Un ensemble d'algorithmes pour diriger la dynamique du système immunitaire
artificiel.
La figure III.8 récapitule les éléments impliqués dans la structure de conception d’un
système immunitaire artificiel (AIS).
54
Chapitre III : système immunitaire
Solution
Algorithme immunitaire
Mesure d’affinité
Représentation
Domaine d’application
Figure III.8 : La structure de conception d’un AIS
Pour cette raison, la section suivante sera consacrée à présenter la manière de
représentation des cellules immunitaires ainsi que les mesures d’affinité existantes. Les
différents algorithmes et les modèles immunitaires seront exposés d’une manière détaillée
dans les sections suivantes.
4.2.1
La représentation
Dans les sections précédentes, les cellules B et T ont été décrites comme les cellules les plus
importantes dans le système immunitaire. Elles présentent des récepteurs superficiels utiles
pour la reconnaissance des intrus dont les formes de ces récepteurs sont complémentaires à la
forme d’antigène. Les cellules et les molécules immunitaires sont alors les éléments qui
doivent être modélisés et employés dans les modèles proposés par le système immunitaire
artificiel [TIM03].
4.2.1.1 Le modèle Shape - Space
Le modèle Shape- Space (Forme - Espace) a été proposé par Perelson et Oster [38] en
1979. Ce modèle permet une description quantitative des interactions de molécules de récepteur
et les antigènes.
Dans le système immunitaire biologique, le concept Forme - Espace S est le degré de
liaison (le degré de correspondance ou l'affinité) entre le récepteur d’anticorps (Ab ou TCR) et
un antigène (Ag). Ce degré de liaison est mesuré via les régions de complémentarité entre les
deux éléments (Figure III.9).
55
Chapitre III : système immunitaire
Figure III.9 : La représentation du modèle Shape-Space.
4.2.1.2
•
Les concepts de base du modèle
La forme généralisée
L'ensemble de caractéristique qui décrit les propriétés relatives à une molécule d'une
perspective d’identification est nommé sa forme généralisée.
Mathématiquement, la forme généralisée d'une molécule (m), peut être représentée
par un ensemble de coordonnées m = < m1, m2, …mL>, m Єs RL tel que m est un point
dans un espace L- dimensionnel, où S représente le modèle Shape-Space.
•
L’identification via les régions de complémentarité
Une population ou bien le répertoire de N individus (les récepteurs de cellule) correspond
au Shape-Space avec un volume V fini contenant N points. Comme les interactions
antigène anticorps sont mesurées via les régions de complémentarité, les déterminants
antigéniques sont aussi caractérisés par des formes généralisées.
•
Le seuil d’affinité
Il est assumé que chaque anticorps agit spécifiquement avec tous les antigènes dont
les compléments existent dans une petite région d'encerclement. Cette région est caractérisée par
un paramètre « ε » appelé le seuil d'affinité.
•
La région d identification
Le résultat de la définition du seuil d’affinité est le volume Vε qui est appelé la
région d’identification.
56
Chapitre III : système immunitaire
4.2.2
Les mesures d’affinités
L'affinité entre un anticorps et un antigène est relative à leur distance [TIM03].
Elle peut être estimée via n'importe quelle mesure de distance entre deux chaînes (ou
vecteurs) par exemple par l’utilisation de la distance Euclidienne, la distance de Manhattan ou la
distance de Hamming [TIM03]. Si on considère un anticorps Ab = <Ab1, Ab2, …AbL> et un
antigène Ag =<Ag1, Ag2, … ,AgL>, alors la distance D peut être calculée selon l’une des
distances précédentes qui seront présentées respectivement dans la figure suivante :
La distance Euclidienne
∑
La distance de Manhattan
∑|
|
La distance de Hamming
1 ∑ 0 Figure III.10 Différentes distances pour le calcule d’affinité anticorps-antigène [KOU07]
4.3 Les algorithmes du système immunitaire artificiel
L’algorithme de la sélection négative
4.3.1
Le système immunitaire humain utilise la sélection négative pour éliminer les
cellules immunitaires immatures qui se lient avec les cellules du soi. Seulement les cellules
nouvellement générées qui n’apparient à aucune cellule du soi seront libérées du thymus et la
moelle osseuse. Ensuite elles sont distribué es dans le corps humain afin d’assurer son
contrôle contre les organismes étrangers. Forrest et al [FOR94] ont proposé l’algorithme de
la sélection négative qui reflète ce principe. Ils ont considéré l’algorithme de la sélection
négative comme un processus de détection d’anomalies composé de trois phases principales :
•
La définition du soi.
•
La génération des détecteurs
•
Le contrôle d’occurrence des anomalies.
Cette notion est très intéressante, surtout pour les applications de surveillance des
systèmes et la détection d’utilisations anormales ou inhabituelles [CAS03].
L’algorithme de la sélection négative déroulera comme suit [LEA00] :
57
Chapitre III : système immunitaire
1- Étant donné l’ensemble des modèles de soi à être protégé (P), générer un
ensemble (M) de détecteurs qui n’identifie aucun élément appartenant à l’ensemble
P.
2- Le processus itératif pour produire l’ensemble des détecteurs (M) est décrit comme suit
(Figure III.11 (a)) :
3- Générer des éléments candidats (C) de type chaîne d’une façon aléatoire.
4- Déterminer l’affinité entre chaque élément en (C) avec tous les éléments de l’ensemble
de soi (P).
5- Si l’affinité d’une chaîne dans (C) avec au moins une chaîne dans (P) est plus grande ou
égale à un seuil d’affinité prédéfini Alors
Cette chaîne reconnaît l’ensemble de soi, ce qui implique qu’elle doit être éliminée.
Sinon la chaîne est ajoutée à l’ensemble de détecteurs (M).
Une fois que l’ensemble de détecteurs est produit, l’étape suivante de l’algorithme consiste
à contrôler le système contre la présence des modèles de non soi tel que chaque élément détecté
par les détecteurs générés est considéré comme un élément de non soi (Figure III.11 (b)).
Génération
aléatoire de
chaines (C)
Correspondance
Ensemble de
détecteurs(M)
Ensemble de
détecteurs
Correspondance
Chaine du soi
(P)
Chaine du
non soi
Rejet
Chaine à
protéger (P*)
(a)
(b)
Figure III.11 : La structure générale de l’algorithme de la sélection négative.
4.3.2
L’algorithme de la sélection positive
L’algorithme de la sélection positive est proposé par Forrest et al [FOR96] et Somayaji et
Forrest [FOR00]. Cet algorithme est la solution alternative de l’algorithme de la sélection
négative. La différence principale est la génération des détecteurs qui détectent des éléments de
58
Chapitre III : système immunitaire
soi au lieu la génération des détecteurs qui détectent des éléments de non soi. Selon cet
algorithme, un élément de non soi suspect doit être comparé avec tout l’ensemble des détecteurs
de soi, s’il n’est pas détecté alors il est considéré comme un élément de non soi.
4.3.3
Algorithme de la sélection clonale
Cette théorie se base sur le principe que seules les cellules ayant reconnu l’antigène
prolifèrent et maturent et deviennent des cellules mémoires.
Il existe différentes utilisations de la théorie de la sélection clonale selon les contextes, que
ce soit dans l’apprentissage-machine, la reconnaissance de formes, l’optimisation multi
modale ou la détection d’anomalies [CAS00b], les implémentations de cette théorie
reprennent les principales étapes du déroulement de cette dernière. Les deux algorithmes les
plus connues sont CLONALG et CLONCLAS.
De Castro & Von Zuben [CAS00c]ont proposé l’algorithme de la sélection clonale
nommé CLONALG qui accompli les tâches de base impliquées dans le processus de la
sélection clonale dans le système immunitaire humain.
CLONALG initialement appelé CSA (Clonal Selection Algorithm) est basé sur les
éléments suivants :
-
Maintient d’un ensemble de cellules mémoires.
-
Sélection et clonage des anticorps les plus stimulés.
-
Re-sélection des clones proportionnellement à l’affinité avec l’antigène.
-
Suppression des anticorps non stimulés.
-
Maturation de l’affinité de ces derniers [Bro04].
L’algorithme de base est le suivant :
1.
Générer au hasard une population initiale d’anticorps. Il est composé de deux sousensembles : Abm (mémoire population) et Abr (réservoir de population).
2.
Crée un ensemble de modèle antigéniques Ag.
3.
Sélectionnez un antigène Agi de la population Ag.
4.
Pour chaque membre de la population Ab calculer son affinité pour l’antigène Agi
affinité en utilisant une fonction de distance (par exemple, de Hamming Distance).
5.
Sélectionnez la plus haute affinité n anticorps et générer un nombre de clones de
chaque anticorps proportionnel à leur affinité, en plaçant les clones dans une nouvelle
population Ci.
59
Chapitre III : système immunitaire
6.
Mutez le clone Ci population à un degré inversement proportionnelle à leur affinité
pour produire une population d’âge mur Ci*.
7.
Réappliquer la fonction d’affinité à chaque membre de la population Ci* sélectionnez
la score le plus élevé, comme candidat de cellules mémoire. Si son affinité est plus
grande que la cellule courante Abmi, le candidat devient le nouveau « mémoire
cellulaire »
8.
Supprimer ces anticorps à faible affinité dans la population et remplacer Abr avec les
nouveaux membres générés de manière aléatoire.
9.
Répétez les étapes 3-8 jusqu’à ce que tous les antigènes aient été présentés.
Cela représente une génération de l’algorithme.
Une génération de l’algorithme est complète lorsque tous les antigènes ont été présentés et
toutes les mesures ont été effectuées pour chaque antigène. Cet algorithme conserve seulement
une cellule pour chaque antigène qui lui est présentée [LEA01].
4.3.4
La
L’algorithme du réseau immunitaire
théorie du
réseau
immunitaire a suggéré un système
immunitaire avec un
comportement dynamique même en absence d'un antigène de non soi. Il existe plusieurs modèles
du réseau immunitaire [TIM03], [DAS03] à titre d’exemple on peut citer le modèle proposé
par Timmis & Neal. Cependant, Nous limiterons notre discussion à la description d ’un
seul modèle du réseau immunitaire. Ce modèle est nommé aiNet « Artificial Immune Network
» qui a été proposé par De Castro & Von Zuben [VON01].
L’algorithme AINET est donné comme suit [LEA01] :
1- Initialisation : créer une population initiale d'anticorps d’une façon aléatoire.
2. Présentation antigénique : pour chaque modèle antigénique faire :
2.1. Sélection clonale et expansion : pour chaque élément de réseau, déterminer
son affinité avec l'antigène présenté. Sélectionner les éléments de haute affinité et les
reproduire proportionnellement à leur affinité.
2.2. Maturation d'affinité : chaque clone est muté inversement proportionnel à
son affinité. Sélectionner quelques clones de plus haute affinité pour constituer
l'ensemble mémoire.
2.3.
Interactions clonales : déterminer l’interaction réseau
(affinité) de
tous
les
éléments de l’ensemble mémoire.
60
Chapitre III : système immunitaire
2.4. Suppression clonale : éliminer ces clones mémoires dont l'affinité est moins d'un
seuil prédéfini.
2.5. Méta dynamique : éliminer tous les clones mémoires dont l'affinité avec l'antigène est
moins d'un seuil prédéterminé.
2.6. Construction de réseau : incorporer les clones restants de l'ensemble mémoire
avec les anticorps du réseau.
2.7. Interactions de réseau : déterminer la similitude entre chaque paire
d'anticorps du réseau.
2.8. Suppression de réseau : éliminer tous les anticorps du réseau dont l'affinité est moins
d'un seuil prédéterminé.
3. Cycle : répéter ces pas un certain nombre d'itérations.
Il y a beaucoup de similarité entre aiNet et les algorithmes de sélection clonale. En fait la
sélection clonale artificielle est un cas particulier des réseaux immunitaires [Gar05].Dans aiNet,
ce sont les étapes de suppression clonales qui distinguent cet algorithme de la sélection clonale
puisqu’elles expriment des interactions explicites entre les anticorps (cellules mémoire) dans le
réseau. Alors que dans les algorithmes de sélection clonale aucune interaction explicite ne se fait
entre les anticorps.
5. Extension du système immunitaire artificiel
5.1 Le modèle de soi / non soi
Le système immunitaire adaptatif et en particulier les cellules B secrètent des
anticorps spécifiques pour reconnaître et réagir au stimulus. La correspondance entre
l’antigène et l’anticorps est l’élément de base dans la plupart des implémentations des AIS.
La caractéristique principale du système immunitaire est sa capacité à répondre aux
envahisseurs étrangers sans réagir aux molécules de soi. Afin d’assurer ce rôle, le système
immunitaire a besoin de différencier entre les cellules de soi et entre les cellules étrangères ou les
pathogènes.
Cette discrimination
est apprise
tôt dans
la vie grâce aux différents processus
immunitaires qui jouent un rôle important pour réaliser la tolérance au soi [AIC03]. Le modèle
de soi / non soi se base sur ce principe de telle sorte que la réponse immunitaire soit
déclenchée quand le corps rencontre quelque chose de non soi ou étrangère.
61
Chapitre III : système immunitaire
5.2 Le modèle de la théorie de danger
Au cours de la dernière décennie, une nouvelle théorie appelée la théorie de danger
est devenue populaire parmi les immunologistes. Cette théorie qui est proposée en 1994
par Matzinger [MAT94] [MAT98] [MAT02] et qui propose des nouvelles conditions pour le
déclenchement de la réponse immunitaire. Elle propose que la réponse immunitaire soit
déclenchée suite à l’existence de danger et non suite à l’existence d’un élément étranger.
5.2.1
Critique du modèle de soi / non soi
La théorie de danger défie le point de vue du modèle de soi / non soi, elle signale qu'il
existe des exemples de discrimination apparaissant après la distinction de soi / non soi [AIC02]
[AIC03]. Par exemple :
-
Aucune réaction immunitaire aux bactéries étrangères dans l'intestin ou à
l'alimentation que nous mangeons bien que tous les deux soient des entités étrangères.
-
L’utilité de quelques processus auto réactifs par exemple contre les molécules de soi
exprimées par les cellules de stresses.
-
La définition de soi est limitée au sous-ensemble vu par les lymphocytes pendant la
période de maturation.
-
Le corps humain change pendant sa durée de vie et par conséquence le soi
change aussi. Donc, les défenses apprises tôt dans la vie contre le non soi pourraient
être auto réactives plus tard.
-
L’existence des situations où le système immunitaire peut réagir au soi par exemple le
cas des maladies auto- immunitaires et des tumeurs. Ainsi, le cas où il n’existe aucune
attaque contre le non soi dans le cas des greffes.
5.2.2
Le principe de base de la théorie de danger
La théorie de danger propose que le système immunitaire ne réponde pas aux éléments
de « non soi » mais aux éléments qui déclenchent le « danger » dans le corps. Dans cette
théorie, les envahisseurs étrangers qui sont dangereux encouragent la génération des signaux de
danger. Le danger est mesuré par des dégâts sur les cellules indiqué es par les signaux de détresses
qui sont envoyés quand les cellules meurent d'une façon inhabituelle (nécrose) par opposition à la
mort de cellule programmée (apoptose). Ces signaux de danger sont reconnus par les cellules de
présentation d’antigène (APC) qui sont des cellules critiques pour l’initialisation de la réponse
immunitaire.
62
Chapitre III : système immunitaire
La figure III.12 décrit la manière de déclenchement d’une réponse immunitaire selon la
théorie de danger [AIC02]. Une cellule qui est dans la détresse déclenche un signal
d'alarme et par conséquence les antigènes dans le voisinage seront capturés par les cellules de
présentation d'antigène (APC) qui déplacent au nœud de lymphe local afin de présenter
l’antigène aux lymphocytes. Le signal d'alarme engendre une zone dangereuse autour de lui pour
permettre la stimulation des cellules B qui correspondent à l'antigène dans la zone
dangereuse et qui subissent ainsi le processus d'expansion clonale, par contre celles qui ne
correspondent pas ou sont trop loin ne seront pas stimulées.
Figure III.12 : Principe de la théorie du danger
5.2.3
La mort cellulaire
Il existe deux types majeurs de mort cellulaire soit la nécrose et l'apoptose [AIC03].
5.2.3.1
La nécrose
La nécrose est une mort cellulaire dite « accidentelle » qui survient lors d’un
dommage tissulaire et qui provoque l'inflammation dans le tissu.
5.2.3.2
L’apoptose
L’apoptose ou la mort cellulaire programmée est une forme physiologique de mort
cellulaire hautement régulée nécessaire à la survie des organismes multicellulaires. Les
cellules d'organismes multicellulaires s'autodétruisent lorsqu'elles sont endommagées
ou
63
Chapitre III : système immunitaire
lorsqu'elles présentent des dysfonctionnements. L’apoptose ne provoque pas l'inflammation dans
le tissu.
5.3 L’emploi de la théorie de danger dans un AIS
La théorie de danger fournit des nouvelles idées intéressantes pour la représentation
et le traitement des données dans les systèmes immunitaires artificiels. Elle se concentre sur ce
qui est dangereux et le traitement des signaux de danger. Elle propose une nouvelle
condition pour déclencher la réponse immunitaire [AIC02][AIC03] et cela par l’exploitation de
la mort cellulaire nécrose qui signifie qu’il existe quelque chose anormale dans le système
au contraire à la mort cellulaire apoptose.
6. L’analogie entre le système de détection d’intrusion et le système
immunitaire
6.1 Introduction
Les approches de la sécurité des ordinateurs inspirées de la biologie sont devenues
intéressantes par rapport à d’autres approches pour deux raisons à savoir :
-
Les systèmes informatiques et les espèces biologiques sont souvent attaqués.
-
Les systèmes informatiques deviennent de plus en plus complexes et les
approches traditionnelles de la sécurité ne peuvent pas assumer le rôle de
protection d’une manière parfaite, par contre les métaphores biologiques deviennent de
plus en plus très puissantes.
Comme vu dans la section précédente, le système immunitaire artificiel a été appliqué
aux différents domaines de recherche. Parmi ces domaines, la sécurité et la détection d'intrusions
sont le secteur d'application qui est le plus étroitement lié avec le système immunitaire
humain, puisque les deux systèmes ont un but commun qui consiste à assurer la protection
contre des agents étrangers.
Afin de détailler ce lien, nous allons consacrer cette section pour la présentation de
l'analogie entre le système immunitaire humain et le système de détection d'intrusions.
6.2 L’immunologie et la sécurité des systèmes informatiques
6.2.1
L’immunologie
Le corps humain est constamment sous l’attaque par des micro-organismes hostiles qui
sont la source de beaucoup de maladies. Le but du système immunitaire est la protection du
64
Chapitre III : système immunitaire
corps contre ces pathogènes, il est face à deux aspects de problème qui
sont [STE99] :
l'identification ou la détection des pathogènes et l'élimination efficace de ces pathogènes en
réduisant au minimum les dégâts causés.
6.2.2
La sécurité des systèmes informatiques
Le problème qui touche le système immunitaire est semblable à celui de système de sécurité
des systèmes informatiques : le système immunitaire protège le corps contre les pathogènes et
analogiquement le système de sécurité d'ordinateur doit protéger les systèmes informatiques
contre les différentes intrusions. Cette analogie peut être bien dé finie en exposant les
problèmes confrontés par les systèmes de sécurité des systèmes informatiques [STE99].
-
Confidentialité : le système de sécurité doit assurer la protection contre les
accès non autorisés aux systèmes et aux informations.
-
Intégrité : il doit protéger les données contre les opérations non autorisées telles que :
la modification, la suppression, etc.
-
Disponibilité: la protection des utilisateurs légitimes contre l’indisponibilité des
ressources.
-
Responsabilité: si le compromis d'un système d'ordinateur a été détecté, le
système de sécurité d'ordinateur doit préserver l'information suffisante pour identifier
ces intrus.
-
Justesse : les alarmes fausses de la classification incorrecte d’événements doivent
être réduites au minimum.
La similitude entre le problème de sécurité et le problème de système immunitaire peut
être montrée en traduisant la langue d’immunologie dans des termes de sécurité d'ordinateur
[STE99] : le système immunitaire détecte les abus d'une politique de sécurité implicitement
indiquée par la sélection naturelle et répond à ces abus par des contre attaques de la source de
l'abus. La disponibilité permet au corps de continuer son fonctionnement même dans le cas
d’existence des attaques de pathogènes. La justesse signifie que le système immunitaire ne
doit pas attaquer le corps. L’intégrité signifie l’assurance que les gènes de cellule ne soient
pas infectés par les pathogènes et la responsabilité signifie la recherche et l ’élimination des
pathogènes responsables de la maladie. Un aspect de sécurité qui n'est pas important pour le
système immunitaire est la confidentialité parce qu'il n’existe aucune notion de données
secrètes dans le corps qui doit être protégé à tout prix.
65
Chapitre III : système immunitaire
6.3 L’analogie
entre
le
système
immunitaire
et
un système de
détection d’intrusions
Dans cette section, l’étude de l’analogie entre le système immunitaire et le système
de détection d'intrusions est basé essentiellement sur le travail établit par Kim [KIM99]
[KIM02] dans lequel la démonstration de cette analogie est composée de trois étapes
essentielles. La première étape présente les exigences principales d’un IDS basé réseau
compétent, la deuxième étape introduit les buts de conception d’un IDS pour satisfaire les
exigences de la première étape. Enfin, la dernière étape analyse les propriétés significatives
du système immunitaire par une comparaison avec les buts de conception d’un IDS basé réseau.
Ainsi, cette démonstration est basée d’une manière générale sur un IDS basé réseau pour
deux raisons principales :
-
Un IDS basé hôte peut être considéré comme l’un des composants d’un IDS
basé réseau.
-
Un IDS basé réseau possède la possibilité de contrôler des hôtes multiples d’une
manière distribuée de la même façon que le système immunitaire.
6.3.1
Les exigences d'un IDS basé réseau
La conception d’un IDS basé réseau compétent doit prendre en considération les
fonctions suivantes [LAB06] :
Robustesse :
Le système de détection d’intrusions doit être doté par des points de détection multiples
pour qu’il soit assez robuste contre les attaques et les fautes de système.
Configurabilité :
La configuration d’un IDS doit être facile aux exigences locales de chaque hôte et
aux composants du réseau.
Extensibilité :
La facilité d’étendre la portée du contrôle d’un IDS par l’ajout de nouveaux hôtes
d’une manière simple indépendamment des systèmes d'exploitation.
Incrémentabilité « Scalability » :
Il est nécessaire de réaliser l’incrémentabilité fiable pour réunir et analyser correctement
le grand volume de données d’audit à partir des hôtes distribués. Dans le cas d’un IDS
centralisé, la procédure de collection des données d’audit est distribuée alors que son analyse est
centralisée. Cependant, il est difficile d’analyser toutes les données sur un seul IDS sans aucune
perte des données.
66
Chapitre III : système immunitaire
Adaptabilité :
Les environnements de système informatique ne sont pas statiques, les utilisateurs et
les administrateurs de système changent constamment et par conséquence les intrusions
changent. Un IDS doit être capable des adapter aux changements dynamiques afin de
détecter les différentes intrusions.
Analyse Globale :
Afin de détecter les intrusions issues du réseau, il est nécessaire de contrôler la
corrélation entre les différents événements produits sur les différents hôtes car l’analyse établie
par un seul hôte peut donner juste une erreur normale.
Efficacité :
Le système de détection d’intrusions doit être simple et assez souple pour ne pas
influencer sur les activités des hôtes et le réseau ce qui peut engendrer la dégradation de
performance du réseau.
6.3.2
Les buts de conception d'un IDS basé réseau
L'analyse des exigences identifiées ci-dessus peut être employée pour tirer trois buts
de conception principaux d'un IDS basé réseau [KIM99][KIM02]. Ces buts sont la
distribution, l’auto organisation et la souplesse « lightweight ».
6.3.2.1
La distribution
Un système de détection d’intrusions basé réseau distribué délègue ses responsabilités à
un nombre de composants distribués dont chacun contrôle un sous espace du système complet
d’une manière concurrente et coopérative. Un IDS basé réseau distribué satisfera les
exigences suivantes :
Robustesse : pour un IDS basé réseau distribué, l'échec d'un composant de
détection d'intrusions local n'endommage pas l’IDS complet bien qu'il cause la
dégradation minimale de l’exactitude de la détection complète.
Configurabilité : la facilité de configuration d’un processus de détection d'intrusions
aux exigences locales d'un hôte spécifique sans considération des exigences d’autres
hôtes.
Extensibilité : si un nouvel hôte exécutant un système d’exploitation différent est
ajouté à un réseau,
il est
facile d'ajouter des nouveaux processus de détection
d'intrusions sur cet hôte, parce que les processus de détection d'intrusions sont
indépendants et ne seront pas modifiés quand un nouveau processus est ajouté.
67
Chapitre III : système immunitaire
Incrémentabilité « scalability » : puisque la collecte et l’analyse des données
d'audit seront effectuées dans le même endroit dans un hôte contrôlé locale ment, le
grand volume de données d'audit est distribué sur plusieurs hôtes locaux et par
conséquence l’IDS distribué permet plus d’incrémentabilité que l’IDS basé sur un
serveur local.
6.3.2.2
L’auto organisation
Un système de détection d’intrusions basé réseau auto organisé apprend les
signatures d'intrusions qui sont inconnues et/ou distribuées sans aucune information prédéfinie.
Un IDS basé réseau auto organisé satis fera les exigences suivantes :
Adaptabilité : il est adaptatif parce qu'il n'y a aucun besoin de la mise à jour manuelle
de ses signatures d'intrusions.
Analyse globale : le système de détection d'intrusions complet fournit l'analyse
globale parce qu'il est auto organisé à partir des interactions entre les différents
processus de détection d'intrusions.
6.3.2.3
La souplesse « lightweight »
Un IDS basé réseau est souple parce qu’il n'influence pas sur les performances du
système.Un IDS basé réseau souple satisfera la dernière exigence.
Efficacité : quand chaque composant d ’un IDS assure une partie minimale du
contrôle, les activités principales qui doivent être exécutées par les hôtes locaux et le
réseau ne sont pas défavorablement affectées par le contrôle.
6.3.3
Une analyse des caractéristiques du SIH
Une analyse prudente des capacités complexes du système immunitaire humain
permet l’identification de plusieurs propriétés significatives pour la détection d'intrusions
basée réseau. Ces propriétés spécifiques du système immunitaire peuvent agir ensemble
pour satisfaire chacun des trois buts de conception d’un IDS basé réseau compétent.[LAB06]
6.3.3.1
Un modèle distribué
La détection d’un antigène dans le système immunitaire humain est distribuée. Cette
caractéristique est assurée par l’ensemble des mécanismes suivants :
Réseau immunitaire idiotypique : le système immunitaire humain est mis en
œuvre par les interactions entre différents types de cellules. Au lieu de l'utilisation d'un
coordinateur central, le système immunitaire humain assure des réponses immunitaires
68
Chapitre III : système immunitaire
appropriées par maintenir le statut d’équilibre du réseau immunitaire entre la
suppression par anticorps et l’activation par antigène.
Ensemble d'anticorps unique : le système immunitaire humain produit des
groupes divers d'anticorps pour détecter les différents antigènes. La diversité des
anticorps est maintenue par la sélection naturelle dans la bibliothèque de gènes et la
sélection clonale de
telle
sorte que chaque ensemble d’anticorps est unique et
indépendant Ces propriétés n'exigent pas un coordinateur central et permettent la
détection des intrus au niveau local des anticorps.
6.3.3.2
L’auto organisation
La réponse immunitaire est composée de trois étapes évolutionnaires qui sont : l’évolution
de la bibliothèque de gènes, la sélection négative et la sélection clonale. Ces trois étapes sont
auto organisées plutôt que la direction par un organe central ou obtenir une information
prédéfinie.
L’évolution de la bibliothèque de gènes
compétents nécessite une
certaine
: La production des anticorps
connaissance de propriétés
antigéniques. Le
système immunitaire apprend ces connaissances par l’évolution de la bibliothèque
de gènes. Puisque ce processus d’évolution est auto organisé, il permet aux
bibliothèques de gènes d’agir comme une archive d’information afin de détecter les
antigènes observés.
La sélection négative : la sélection négative élimine les anticorps immatures
qui correspondent avec les cellules du soi. Le système ne possède aucune information
globale sur les cellules de soi, la satisfaction de cette contrainte est assurée dans le
thymus et la moelle osseuse par la présentation des cellules de soi afin de supprimer
les anticorps qui attaquent ces cellules.
La sélection clonale: Ce processus permet la prolifération des meilleurs anticorps
alors que les anticorps de faible affinité meurent après une durée de vie. Ainsi,
selon
les antigènes
existants
seulement
les
anticorps
les plus
convenables
survivent. De la même façon au lieu de l’obtention de l'information prédéterminée sur
les antigènes spécifiques, le système immunitaire est capable de sélectionner d’une
manière autonome les anticorps les plus convenables en agissant avec les antigènes
existants.
69
Chapitre III : système immunitaire
6.3.3.3
La souplesse
Le système immunitaire humain est souple. Les mécanismes décrits au-dessous permettent
au système immunitaire d'être souple et sont concentrés sur trois idées :
-
La détection d’un ensemble énorme d’antigènes avec un ensemble plus petit
d'anticorps.
-
La réutilisation de l'information antigénique connue préalablement d’une manière
efficace pour les prochaines détections.
-
La production de nombreux anticorps avec un nombre limité de gènes.
La liaison approximative :la réponse immunitaire est déclenchée quand l'affinité
de la correspondance entre un anticorps et un antigène dépasse un certain seuil.
Cette liaison approximative permet qu’un seul anticorps puisse détecter n'importe
quel nombre d’antigènes tant que leur affinité est au-dessus de seuil d ’affinité.
Cette
liaison approximative contribue pour augmenter la généralité de système
immunitaire.
Les cellules mémoires : les cellules mémoires stockent l'information génétique
d’un antigène précédemment détecté afin de répondre d ’une façon rapide et
efficace à ces prochaines rencontres dans l'avenir.
Expression de gène : le système immunitaire maintient la diversité d'anticorps
pour assurer la détection efficace d'un grand nombre d’antigènes. Le processus de
développement d'anticorps « expression de gène » emploie plusieurs mécanismes
génétiques pour produire différents anticorps.
Hypermutation somatique : le système immunitaire apprend dynamiquement le
changement antigénique via la sélection clonale. Le résultat de la sélection clonale suivie
par l’hypermutation somatique est un ensemble d’anticorps avec des variations plus
larges de leurs gènes de correspondance avec les antigènes.
Discussion
Le système immunitaire humain est distribué par son réseau immunitaire et les
ensembles d'anticorps uniques. Ainsi, il est auto organisé en conséquence de trois
processus évolutionnaires qui sont l’’évolution de la bibliothèque de gènes, la sélection
négative et la sélection clonale. Il est souple par la généralité de la liaison approximative,
l’expression de gène, l’hypermutation somatique et l'efficacité des cellules mémoires. Ces
propriétés significatives montrent le lien étroit entre le système immunitaire humain et le
système de détection d’intrusions. Elles montrent que la réalisation des exigences principales
70
Chapitre III : système immunitaire
pour la conception d’un système de détection d’intrusions basé réseau est envisageable par
l’utilisation d’un système immunitaire artificiel, ce qui motive les différentes recherches
exploitant les systèmes immunitaires artificiels dans le domaine de sécurité.
7. Les domaines d’application des AIS
Comme vu dans les sections précédentes, le système immunitaire artificiel possède une
variété de modèles de
telle
sorte que
chaque modèle
est basé
sur une partie particulière de
fonctionnement du système immunitaire humain. Cette diversité permet d’utiliser le système immunitaire
artificiel à plusieurs secteurs d'application pour des buts différents. D’une manière générale, parmi
ces secteurs on peut citer : [DAS03][TIM04][KIM02]
7.1 La sécurité des ordinateurs
La sécurité des ordinateurs est une application directe de la métaphore du système
immunitaire humain. Plusieurs travaux intéressants ont été proposés afin d’exploiter les
principes de base de la détection et l’élimination, employés par le système immunitaire
humain dans la sécurité des systèmes informatiques. Un travail très intéressant, et qui est
considéré parmi les premières tentatives dans ce secteur de recherche et celui de Stéphanie
Forrest et son groupe [F0R94]. Dans ce travail, le problème de la protection des
systèmes informatiques est vu comme une instance d’un problème de la discrimination entre le
soi et le non soi ce qui signifie la capacité de distinction entre les utilisateurs légitimes et les
données non infectées qui constituent le soi et les virus et les utilisateurs non autorisés qui
constituent le non soi.
7.2 La détection et l’élimination des virus informatiques
Okamoto et Ishida [OKA99] ont proposé un système multi agent basé AIS. Ce
système
de détection de virus opère dans un environnement distribué et hétérogène.
L’algorithme de la sélection négative a été utilisé comme une méthode d’authentification de
fichier.
La détection des virus est réalisée via l’appariement entre les informations propres
d’un fichier tel que les premiers bits de l’entête du fichier, sa taille, le chemin d’accès et le fichier
de l’hôte. La neutralisation des virus est faite par la réécriture des informations initiales sur le
fichier infecté. Le système est composé de quatre types d’agents qui sont :
-
Les agents anticorps qui détectent les virus sur les hôtes locaux.
-
Les agents tueurs qui neutralisent les virus par les réécritures des informations
initiales sur les fichiers infectés.
71
Chapitre III : système immunitaire
-
Les agents de copie qui copient les fichiers non infectés qui sont équivalents
aux fichiers infectés à partir des différents hôtes.
-
Les agents de contrôle qui aident la communication entre les différents agents.
7.3 Optimisation
Le
problème d’optimisation
consiste
à
trouver l’ensemble
absolu des meilleures
conditions admissibles pour atteindre un certain objectif. Les problèmes d'optimisation
apparaissent dans plusieurs secteurs d’application. Pour cette raison, ce problème est caractérisé
par l’existence de plusieurs travaux qui ont exploité le système immunitaire artificiel afin de
résoudre les différents problèmes d’optimisation. Par exemple le travail de De Castro & Von
Zuben[CAS00c]dont le but principal est le développement d’un algorithme approprié pour
le problème d’optimisation, la reconnaissance de forme. Ce
travail se focalise sur le
principe de la sélection clonale et la maturation d’affinité lors d’une réponse immunitaire
adaptative afin de résoudre des problèmes complexes tels que l’optimisation combinatoire et
l’optimisation multi modale.
7.4 Robotique
Plusieurs tentatives ont été faites pour appliquer le principe du réseau immunitaire
pour contrôler les grandes populations de robots dont le but principal est d’obtenir les propriétés
de base du système immunitaire qui sont l’auto organisation et le comportement de groupe. Le
travail de Mitsumoto et al [MIS96] est parmi les premiers travaux, ils ont essayé de créer
un groupe de robots qui se comportent d’une façon autonome pour chercher l'alimentation sans
aucun mécanisme de contrôle global.
L'idée principale dans ce travail est l'interaction entre les robots au niveau local. Les auteurs
emploient trois métaphores immunologiques principales. La première métaphore est les
cellules B, où un robot représente une cellule B dont chaque robot possède une stratégie
particulière pour trouver l'alimentation. La deuxième est le réseau immunitaire pour garantir
l'interaction entre ces robots. La troisième est le calcul de stimulation des cellules B, où le
robot qui est le plus stimulé alors sa stratégie est la meilleure pour être prise en considération.
Suite à ce travail, plusieurs travaux ont été proposés dans ce domaine de recherche.
7.5 Autres domaines d’utilisation
Le système immunitaire artificiel est utilisé dans plusieurs secteurs de recherche. Voici
une liste non exhaustive d’autres domaines d’application :
72
Chapitre III : système immunitaire
-
La maintenance des systèmes d’ordinateurs [BUR98] [BUR98a] [BUR00].
-
La reconnaissance de formes [MCC97][ROB93].
-
Apprentissage [HUN96] [HUN98] [NIK99] [POT98].
-
La classification des données [VON01] [TIM01].
-
La planification [HAR98] [HAR99] [MOR98].
-
Etc.
7.6 Le Système Immunitaire Artificiel pour La détection d’intrusions
Les différents travaux dans le domaine de la détection d’intrusions ont exploité les
différents modèles du système immunitaire artificiel, le
tableau ci-dessus (tableau III.1)
récapitule les différents travaux avec les différents modèles immunitaires utilisés qui sont :
La bibliothèque de gènes
signifie que le système implémenté utilise une
méthode évolutionnaire pour initialiser les génotypes des détecteurs et non pas
d’une façon aléatoire.
La sélection clonale qui correspond au processus de prolifération et différenciation des
cellules B pour incrémenter la généralité et la couverture des détecteurs par le
processus d’hypermutation.
La mémoire immunitaire permet l’apparition de la réponse secondaire afin d’obtenir
une réponse plus rapide et plus efficace à une attaque déjà connue.
le réseau idiotypique correspond à l’implémentation de la théorie du réseau
idiotypique
qui
propose
qu’il
existe
une
interaction
entre
les
différents
composants immunitaires.
Le modèle de soi et non soi qui permet au système de reconnaître ce qui est normal ou
ce qui lui appartient afin de détecter le non soi.
La réponse dans ce contexte ne signifie pas tout simplement la génération d’une alerte,
mais l’implémentation d’un changement dans le système en fonction du résultat de
détection.
Modèle
Travaux
Soi /
non soi
Sélection Sélection
négative
Kephart [KEP99]
x
Forrest [FOR94]
x
Hofmeyer [HOF99]
x
x
Forrest[FOR96]
x
x
Balthrop [BAL02]
x
x
Gonzalez[GON03]
x
x
clonale
Mémoire
Théorie de
immunitaire
danger
Réponse
x
x
73
Chapitre III : système immunitaire
Dasgupta [DAS02]
x
x
x
Greensmith [GRE05]
x
Tableau III.1 : Un récapitulatif des différents travaux dans le domaine des IDS
L’analyse prudente de ces travaux permet de tirer les remarques suivantes [AIC04] :
- Le modèle de soi / non soi est le modèle dominant parce qu’il est adopté par les
différents travaux proposés.
- L’utilisation de l’algorithme de la sélection négative défini par Stéphanie Forrest et
son groupe comme un algorithme de base pour générer les détecteurs de non soi.
- La proposition d’un nouveau modèle immunitaire qui se base sur la théorie de danger par
Greensmith et al [GRE05]. Ce modèle se base sur l’abstraction du fonctionnement des
cellules dendritiques et qui intègre la notion de danger.
A
la fin de cette section, nous pouvons constater que
les systèmes de détection
d’intrusions basés sur les systèmes immunitaires artificiels ont encore des points à explorer.
Ils peuvent par exemple adopter des concepts et des aspects plus larges inspirés d’immunologie
comme par exemple : la théorie de danger, la bibliothèque de gènes et le réseau idiotypique.
8. Conclusion
Les systèmes immunitaires sont un exemple de systèmes naturels qui ont servi de source
d’inspiration pour résoudre une grande variété de problèmes informatiques. Dans le cadre de la
reconnaissance des formes, les systèmes immunitaires naturels présentent plusieurs propriétés
très intéressantes comme la distinction entre le soi et le non soi, la détection de changement, la
mémorisation, l’adaptabilité ainsi que la gestion des ressources.
Le système immunitaire naturel dispose de deux sortes de défenses : les défenses innées, à
large spectre d’action mais d’efficacité moyenne, et les défenses acquises qui sont très spécifiques
mais aussi beaucoup plus efficaces. Vu leur nature adaptative, ce sont les mécanismes de défense
acquise qui ont le plus inspiré la recherche informatique.
Les systèmes immunitaires artificiels se divisent en trois grandes familles : la sélection
négative, qui s’inspire des mécanismes naturels de distinction entre soi et non soi, pour résoudre
des problèmes de surveillance et de détection de changement. La sélection clonale artificielle, qui
s’inspire des mécanismes naturels de mémorisation pour résoudre des problèmes d’optimisation.
Les réseaux immunitaires artificiels, qui s’inspirent de la théorie des réseaux immunitaires pour
74
Chapitre III : système immunitaire
construire des systèmes qui permettent la distinction et la mémorisation, ces derniers ont surtout
été utilisés pour l’analyse de données.
Dans ce chapitre aussi, nous avons exposé le lien entre l’objectif d’un système de détection
d’intrusions et celui du système immunitaire. A cette démonstration, nous pouvons ajouter un autre
exemple simple qui illustre encore cette analogie. Le système immunitaire possède une architecture
multicouche. Il est composé principalement de deux couches qui sont le système immunitaire inné et le
système immunitaire adaptatif. Le système immunitaire inné est semblable aux détecteurs basés
signature d’un IDS car les deux systèmes ont les connaissances antérieures des attaques. De la même
façon le système immunitaire adaptatif est semblable au détecteur d’anomalies d’un IDS parce que les
deux systèmes produisent de nouveaux détecteurs d’une manière adaptative afin de détecter les attaques
inconnue.
A la fin de ce chapitre, nous pouvons conclure que le système immunitaire est l’un des
meilleures solutions qui pourrait être utilisée pour concevoir un système de détection d’intrusions
compétent et efficace.
75
Chapitre IV : implémentation et résultats
Chapitre IV :
Implémentaion et
résultat
76
Chapitre IV : implémentation et résultats
1. Introduction
Après avoir donné toute la théorie que nous voyons nécessaire pour le développement de
notre système. Il est le temps de mettre en œuvre les différentes fonctionnalités ainsi les
algorithmes proposés.
Dans ce chapitre, nous explorons les systèmes immunitaires artificiels pour le
développement d’un système de détection d’intrusion réseaux. L’ensemble de données utilisé
pour les différentes expérimentations provient de laboratoire « MIT’s Lincoln Lab ». Cet
ensemble a été développé pour « DARPA Intrusion Detection Evaluation Program » et il est
considéré comme un standard pour les évaluations des IDS. La KDD99 utilise une version de cet
ensemble de données [KDD99]
Les déférentes sections de ce chapitre vont présentés la base de donnés utilisés (KDD99)
pour l’apprentissage et le test des systèmes immunitaires artificiels, l’architecture du système ainsi
que les différents résultats expérimentaux.
2.
Ressources matériels et logiciel
Pour la mise en œuvre des applications, nous avons utilisé un micro portable ayant les
caractéristique suivantes : Micro processeur Intel core 2 duo (1.6GHZ), avec une RAM 2Go, un
Disque dur 250 Go, le système d’exploitation Windows XP Pack 2 et comme langage de
programmation nous avons utilisé le langage MATLAB
3. Base de données KDD99
En 1998, les laboratoires de MIT Lincoln ont organisé un programme d’évaluation des
systèmes de détection d’intrusion DARPA dans le but d’examiner et d’évaluer les recherches dans
la détection d’intrusion. Pour cela, ils ont installé un environnement pour acquérir des
connexions TCP/IP pendant neufs semaines dans un réseau local (LAN) simulant un LAN
typique de l'Armée de l'Air des États-Unis. Le réseau a été actionné mais en lui injectant de
multiples attaques [KEN98]. Pour chaque connexion TCP/IP, 41 attributs quantitatifs et
qualitatifs ont été extraits [STO00] (voir Annexe A). La compétition "KDD Intrusion Detection
1999" utilisait un sous ensemble de 494021 enregistrements ce qui représente 10% de la base de
données globales.
Les principaux types d’attaques de l’ensemble de données KDD99 sont :
Probing: surveillance et sondage
DOS (Denial Of Service): déni de service
R2L (Remote to User): accès non autorisé à partir d’une machine distante
U2R (User to Root): accès non autorisé pour avoir le privilège d’un administrateur
77
Chapitre IV : implémentation et résultats
3.1 Probing (Sondage)
L’attaquant de cette classe commence par un sondage de la future victime, ce que l’on
appelle scan. Ce sondage va balayer chaque port IP afin de connaître les services offerts par le
système (OS, topologie du réseau, protections déployées,…). Une fois ce balayage achevé, la
machine de l’intrus (celui qui réalise l’intrusion) tente alors d’identifier le système d’exploitation
utilisé par cette victime et d’exploiter les informations qu’elle a récoltées. Cette classe d’attaque
est la plus étendue et elle requit une expertise technique minime. Les exemples de ce type
d’attaque sont Ipsweep, Mscan, Nmap, Saint, Satan.
Type d’attaque
Service
mécanisme
L’effet de l’attaque
Ipsweep
Icmp
Abus des propriétés
Identification des machines atives
Mscan
Plusieurs
Abus des propriétés
Recherche des vulnérabilités
Nmap
Plusieurs
Abus des propriétés
Identification des ports actifs sur une
machine
Saint
Plusieurs
Abus des propriétés
Recherche des vulnérabilités
Stan
Plusieurs
Abus des propriétés
Recherche des vulnérabilités
Tableau 1. Attaques de Probe
3.2 Attaques de Dénis de Services
Cette attaque porte bien son nom puisqu’elle aboutira à l’indisponibilité d’un service
(application spécifique) ou d’une machine visée en occupant par exemple des ressources telle que
la mémoire par de fausses requêtes. Il existe plusieurs types de déni de services, d’une part ceux
qui exploitent les bugs d’une application et d’autre part ceux dus à une mauvaise implémentation
d’un protocole ou à des faiblesses de celui-ci. Les principales attaques qu’on peut trouvées sont
Apache2, Back, Land, Mail bomb, SYN Flood, Ping of death, Process table, Smurf, Syslogd,
Teardrop, Udpstorm.
Type d’attaque
Service
Mécanisme
Effet de l’attaque
Apache 2
http
Abus
Crashe http
Back
http
Abus/Bug
Ralentit les réponses du serveur
Land
http
Bug
Bloque la machine
Mail bomb
N/A
Abus
Ennui
SYN Flood
TCP
Abus
Déni de service sur un ou plusieurs ports
Ping of Death
Icmp
Bug
Aucun
Process table
Icmp
Abus
Refuse de nouveaux processus
78
Chapitre IV : implémentation et résultats
Smurf
Syslog
Abus
Ralentit le réseau
Syslogd
N/A
Bug
Tue le Syslogd
Teardrop
Echo/Charged
Bug
Redémarre la machine
Abus
Ralentit le réseau
Udpstrom
Tableau 2. Attaques de dénis de service
3.3 Attaques User to Root
L’objectif de cette classe d’attaques est d’obtenir la main de l’administrateur système (Root)
à partir d’un simple compte utilisateur par l’exploitation des vulnérabilités. Les exploits les plus
connus sont les débordements réguliers des Buffers (buffer overflows) dus aux erreurs de
programmation. Les principales attaques de ce type sont Eject, Ffbconfig, Fdformat,
Loadmodule, Perl, Ps, Xterm.
Type d’attaque
Service
Mécanisme
Effet de l’attaque
Eject
Session utilisateur
Débordement du buffer
Gagne le shell root
Ffbconfig
Session utilisateur
Débordement du buffer
Gagne le shell root
Fdformat
Session utilisateur
Débordement du buffer
Gagne le shell root
Loadmodule
Session utilisateur
Un mauvais système
d’installation
Gagne le shell root
Perl
Session utilisateur
Un mauvais système
d’installation
Gagne le shell root
Ps
Session utilisateur
Une mauvaise gestion des
fichiers temporels
Gagne le shell root
Xterm
Session utilisateur
Débordement du buffer
Gagne le shell root
Tableau 3. Attaques de User to Root
3.4 Attaques Remote to User
Dans cette classe, l’attaquant (machine distante) envoie des paquets vers une machine du
réseau cible, après il exploite les vulnérabilités de cette machine afin d‘avoir un accès illégal
comme un utilisateur. Il y a plusieurs types d’attaque de R2U, les plus connues utilisent ou
exploitent les bugs ou les mauvaises configurations des applications ou des systèmes. Les
exemples de cette classe d’attaque sont Dictionary, Ftp_write, Guest, Imap, Named, Phf,
Sendmail, Xlock, Xsnoop.
79
Chapitre IV : implémentation et résultats
Type d’attaque
Service
Mécanisme
Effet de l’attaque
Dictionary
telnet, rlogin,
pop, ftp, imap
Abus des propriétés
Gagne un accèss utilisateur
ftp-write
ftp
Mauvaise configuration
Gagne un accèss utilisateur
Guest
telnet, rlogin
Mauvaise configuration
Gagne un accèss utilisateur
Imap
Imap
Bug
Gagne un accèss root
Named
dns
Bug
Gagne un accèss root
Phf
http
Bug
Exécute des commandes autant qu’utilisateur
http
Sendmail
smtp
Bug
Exécute des commandes autant que root
Xlock
smtp
Mauvaise configuration
Mystifie un utilisateur pour obtenir le mot
de passe
Xnsoop
smtp
Mauvaise configuration Contrôle le stockage des clés à distance
Tableau 4. Attaques de Remote to User
Dans les neuves semaines de collection de données, les sept premières semaines représentent
l’ensemble d’apprentissage et les deux dernières semaines forment l’ensemble de test.
Chaque enregistrement est marqué soit comme normal ou comme l’un des types d’attaque
cités ci-dessus.
3.5 Les attributs KDD99
Les données d’audit du trafic réseau brutes (paquet IP par exemple) ne sont adaptées à la
détection d’intrusion. La construction d’attributs était ainsi nécessaire pour extraire l’ensemble
d’attributs qui permet de détecter efficacement les intrusions. Il existe trois types d’attributs dans
chaque enregistrement de l’ensemble de données KDD99 [STO00]:
Attributs intrinsèques ou de base (Intrinsic features) : ces attributs décrivent les
informations de base d’une connexion, telles que la durée, les hôtes source et destination,
port et flag.
Attributs du trafic (Traffic features) : ces attributs sont basés sur des statistiques, tels
que le nombre de connexions vers la même machine.
Attributs du contenu (Content features) : ces attributs sont construits à partir de la
charge utile (Data) des paquets du trafic tels que nombre d’échec de connexion, si
connecté en tant que root, et le nombre d’accès au fichier de contrôle.
Chaque enregistrement qui représente une connexion dans l’ensemble de données KDD99
est constitué donc de 41 attributs et une seule valeur cible indiquant le nom d’attaque.
80
Chapitre IV : implémentation et résultats
Les tableaux (A.4., A.5. et A.6) dans l’annexe A récapitulent les 41 attributs de l’ensemble
de données KDD99.
3.6 Distribution des attaques dans l’ensemble de données KDD99
La répartition des attaques dans l’ensemble d’apprentissage/test KDD99 est présentée dans
les tableaux suivants :
Classes
Normal
Probe
DOS
R2L
U2L
Total
Nombre
97278
4107
391458
1126
52
494021
Pourcentage
19.69%
0.8313%
79.24%
0.2279%
0.0105%
100%
Tableau 5. Répartition des attaques dans l’ensemble d’apprentissage KDD99
Classes
Normal
Probe
DOS
R2L
U2L
Total
Nombre
60593
4166
229853
16189
228
311029
Pourcentage
19.48%
1.34%
73.90%
5.20%
0.0733%
100%
Tableau 6. Répartition des attaques dans l’ensemble de test
La distribution des attaques dans l’ensemble d’apprentissage et dans l’ensemble de test n’est
pas identique. L’ensemble de test contient plus les 22 types d’attaque d’apprentissage 14 autres
types. L’ajout de nouvelles attaques dans l’ensemble de test permet de rendre la tâche de
détection beaucoup plus réaliste (tableau A.2. et A.3).
D’après les tableaux 5 et 6, vous constatez que l’ensemble de données KDD99 est un
ensemble déséquilibré. En d’autres termes, certaines intrusions produisent plus de connexions
que d’autres. Nous sommes donc fasse un problème d’intrusions déséquilibrées.
Avec un tel ensemble de données, l’algorithme d’apprentissage essaie de minimiser le taux
d’erreur global en diminuant le taux d’erreur des classes majoritaires (telle que DOS) et en
augmentant le taux d’erreur des classes minoritaires (R2L et U2L) ce qui influe sur le taux de
détection des intrusions minoritaires. Nous devons alors améliorer le taux de détection des
intrusions minoritaires tout en maintenant un taux de détection global raisonnable.
Il existe une solution à ce problème. C’est d’utiliser la technique d’échantillonnage
"Sampling techniques" : "over-sampling " c'est-à-dire augmenter le nombre des intrusions
minoritaires et "down-sampling" diminuer le nombre des intrusions majoritaires. Puisque, le
trafic réseau est énorme, la réduction du nombre des intrusions majoritaires (exemple : trafic
normal et Déni de service) peut accélérer considérablement la construction du modèle en
réduisant la taille de l’ensemble de données. L’augmentation du nombre des intrusions
81
Chapitre IV : implémentation et résultats
minoritaires (exemple : U2R et R2L), quant à elle, peut amplifier leurs poids pour diminuer leurs
taux d’erreur.
4. Architecture du système
Le système proposé applique les techniques du datamining pour la construction d’un
modèle de détection d’intrusion réseaux. L’architecture du NIDS proposé est donnée dans la
figure suivante. On trouve deux phases dans cette architecture : la phase off-line et la phase online. Dans la première phase le système génère son modèle d’intrusion et dans le deuxième il
détecte les intrusions
Alerte
Trafic réseaux
Prétraitemen
t
Détecteur
On-line
Off-line
L’ensemble
d’apprentissage
Constructeur
de modèles
Figure IV.1 : fonctionnement général du NIDS
Phase on-line
Elle consiste à mettre en place le NIDS développé. Dans cette phase le rôle du système
sera alors d’analyser le trafic réseau capté et de détecter en temps réel à l’aide du modèle
d’intrusion généré, les intrusions visant le réseau.
Phase off-line
Cette phase nécessite de recueillir suffisamment de données historiques qui incluent à la
fois les connexions réseau normales et anormales (attaques).l’ensemble de données KDD99 est
en y un bon choix. Il est constitué de données captées à l’aide du sniffer Tcpdump[siteTCP]. Le
schéma suivant illustre les différentes étapes de construction des modèles d’intrusion à l’aide des
systèmes immunitaire artificiels
82
Chapitre IV : implémentation et résultats
Données
d’apprentissage
KDD99
Données de
test KDD99
Prétraitement
Donnée traitée
Donnée traitée
AIS
Classification
Apprentissage
Résultats : les classes
de KDD99 (normal,
Dos, R2L, U2L ,Prob )
Cellule
mémoire
Figure IV.2 : construction de modèle de détection d’intrusion AIS
Données
d’apprentissage
KDD99
Données de
test KDD99
Prétraitement
Sélection d’attributs avec F- score
Donnée traitée
Donnée traitée
AIS
Classification
Apprentissage
Résultats : les classes
de KDD99 (normal,
Dos, R2L, U2L ,Prob )
Cellule
mémoire
Figure IV.3 : construction de modèle de détection d’intrusion AIS avec sélection
d’attributs
83
Chapitre IV : implémentation et résultats
5. Fonctionnement
Nous disposons de deux ensembles de données KDD99 : l’ensemble d’apprentissage et
l’ensemble de test dont nous trouvons deux types de données : données normales et les données
représentant des attaques. Dans cette section nous allons présenter les différents modules et la
participation des différents ensembles de données à la construction des différents modèles de
détection d’intrusion.
L’ensemble de données KDD99 (apprentissage et test) est fournit sous forme de deux
fichiers texte.
Figure IV.4 : base de données KDD99 fichier texte
5.1 Module de prétraitement de données
Le rôle de ce module est de préparer les données pour qu’elles soient directement
exploitables par les différents modules de traitement (apprentissage, validation et classification).
Les attributs de l’ensemble de données KDD99 sont un mélange d’attributs continus,
discrets et symboliques avec d’intervalles de valeurs très variés. La plupart des techniques de
classification ne sont pas capable de traiter un tel format de données. Pour cela le prétraitement
est nécessaire avant la construction du modèle de classification. Il est constitué de plusieurs
étapes qui s’exécutent successivement (ou alternativement si nécessaire) :
5.1.1 Étape d’élimination de redondances
Après la suppression des enregistrements dupliqués, le nombre total d’enregistrements dans
l’ensemble d’apprentissage original et dans l’ensemble final est donnée dans le tableau suivant :
Nombre
classe
Ensemble originale
Normal
97278
Probe
4107
DOS
391458
R2L
1126
U2R
52
Total
494021
Ensemble final
87832
2131
54778
999
52
145792
Tableau 7. Nombres d'enregistrements avant et après élimination des enregistrements dupliqués
84
Chapitre IV : implémentation et résultats
5.1.2 Numérisation de données
Cette étape consiste à convertir les attributs symboliques en numériques. La procédure est
comme suit :
En premier, Les noms d’attaques (comme buffer_overflow, guess_passwd, etc.) sont
rangées dans une des cinq classes : 0 pour Normal, 1 pour Probe, 2 pour DOS, 3 pour U2R et 4
pour R2L [ELK00]. Les attributs symboliques comme protocol_type (3 symboles différents),
service (70 symboles différents) et flag (11 symboles différents) sont transformés à des valeurs
entières de 0 à N-1 où N est le nombre de symboles
Figure IV.5 : données après numérisation
5.1.3 Scaling data (Mise à échelle de données)
Le principal avantage de scaler les données est d’empêcher les attributs ayant des plages
numérique larges de dominer les attributs ayant des plages numériques petites. Un autre avantage
est d'éviter les difficultés numériques lors du calcul. Par conséquent, il est recommandé de scaler
linéairement chaque attribut sur l’intervalle [-1, +1] ou [0, 1]. Bien sur la même méthode doit être
appliquée sur les données de test avant le test. [QUI93]
Pour nos ensembles de données, les attributs ayant un intervalle de valeur petit tel que duration [0,
58329],
wrong_fragment
num_compromised
[0,
3],
urgent [0,
[0, 9], su_attempted
14],
hot
[0,
101],
num_failed_logins
[0,
5],
[0, 2], num_root [0, 7468], num_file_creations [0, 100],
num_shells [0, 5], num_access_files [0, 9], count [0, 511], srv_count [0, 511], dst_host_count [0, 255],
and dst_host_srv_count [0, 255] ont été linéairement scalés sur l’intervalle [0, 1] et pour les attributs de
plage de valeurs large tel que src_bytes [0, 1.3 billion] et dst_bytes [0, 1.3 billion] nous avons appliqué
un scalage logarithmique (à base 10) afin de réduire leur intervalle de valeurs à [0.0, 9.14]. Cependant, le
scalage n’était pas nécessaire pour les autres attributs tels que l’attribut booléen logged_in ayant des
valeurs 0 ou 1.
85
Chapitre IV : implémentation et résultats
Figure IV.6 : données après normalisation
5.2 Sélection d’attribut
La qualité des données de l’ensemble d’apprentissage et des attributs sélection d’attribut qui
les caractérisent forment le succès de la technique de classification utilisée. La présence de
variables redondantes, bruites et peu corrélées avec la classe d’un exemple rend le processus
d’apprentissage plus difficile.
La détection d’intrusion est le genre d’application pour laquelle la sélection d’attribut peut
être bénéfique car elle permet tout au moins d’aboutir aux mêmes performances de
reconnaissances à partir d’un nombre de caractéristiques moindres.
L’approche par filtre et l’un des méthodes de sélection d’attributs. Elle élimine les attributs
en analysant les propriétés intrinsèques des donnés. Dans la plupart des cas, des scores de
pertinence des attributs sont calcul et les attributs qui ont les plus bas scores sont enlevés
La procédure de toute approche de sélection d’attribut par filtre est comme suit :
-
Etape1 : calcul des scores de pertinence pour chaque attribut
-
Etape2 : élimination des attributs ayant un score inferieur à un certain seuil.
-
Etap3 : utilisation de sous ensemble d’attribut sélectionnés(les attributs ayant un score
supérieur au seuil) comme l’entré d’un système de classification
: -
Figure IV.7 : Techniques par filtre la sélection d’attributs
86
Chapitre IV : implémentation et résultats
F-score :
La métrique que nous avons utilisée pour identifier les attributs pertinents de l’ensemble
KDD99 est la technique F-score. Elle est une technique simple qui mesure la discrimination de
deux ensembles. Etant donné les vecteurs d’apprentissage Xk k=1…m, si le nombre des
instances positives et négatives sont n+et n- respectivement alors le F-score du ieme attribut est
définit comme suit
!" #
$%!
&"
' $)( " * $%!
+"
' $%! "
1
1
&" +" &"
+"
∑2
∑0
& ' 1 31 $.,! ' $%! " * + ' 1 .1 $.,! ' $% ! "
Ou$%! , $%! &" , $% ! +" sont les moyenne du ieme attribut de l’ensemble de données de l’ensemble
positif et l’ensemble négatif respectivement,$.,!&" est le Ième attribut de la kème instance positive et
$.,! le ième attribut de la kème instance négative.. Le numérateur indique la discrimination entre les
+"
ensembles positifs et négatifs et le dénominateur indique celle dans chacun des deux ensembles.
L’attribut avec un F-score élevé est l’attribut le plus discriminant. Donc, nous utilisons, ce score
comme critère de sélection d’attribut.
Dans notre travail, nous avons calculé le F-score des 41 attributs ensuit sélectionné les
attributs ayant un F-score élevé (>0.001). Cet ensemble d’attributs sélectionnés forme la base
d’apprentissage différentes étapes de cette procédure seront présentées dans la section des
expérimentations.
6- Utilisation de l’SIA
La reconnaissance se fait à l’aide du système immunitaire artificiel aves Sélection clonal.
Notre algorithme est celui de CLONLAS qui utilise les principes de la sélection clonale
artificielle tout en modifiant les paramètres d’initialisation (population antigène et anticorps) et la
fonction de mutation
Cet algorithme étant un algorithme d’optimisation qui sera utilisé comme algorithme
d’apprentissage pour servir à générer des cellules mémoires qui seront utilisées dans la phase de
test :
1.
Générer au hasard une population initiale d’anticorps. Il est composé de deux sousensembles : Abm (mémoire population) et Abr (réservoir de population).
2.
Crée un ensemble de modèle antigénique Ag à partir des exemples d’entrainements.
3.
Sélectionnez un antigène Agi de la population Ag.
87
Chapitre IV : implémentation et résultats
Pour G générations :
4.
Pour chaque membre de la population Ab calculer son affinité pour l’antigène Agi
affinité en utilisant une fonction de distance (par exemple, de Hamming Distance).
5.
Sélectionnez la plus haute affinité n anticorps et générer un nombre de clones de
chaque anticorps proportionnel à leur affinité, en plaçant les clones dans une nouvelle
population Ci.
6.
Mutez le clone Ci population à un degré inversement proportionnelle à leur affinité
pour produire une population d’âge mur Ci*.
7.
Réappliquer la fonction d’affinité à chaque membre de la population Ci* sélectionnez
la score le plus élevé, comme candidat de cellules mémoire. Si son affinité est plus
grande que la cellule courante Abmi, le candidat devient le nouveau « mémoire
cellulaire »
8.
Supprimer ces anticorps à faible affinité dans la population et remplacer Abr avec les
nouveaux membres générés de manière aléatoire.
9.
Répétez les étapes 3-8 jusqu’à ce que tous les antigènes aient été présentés.
Classification
Dans cette étape une forme inconnue (antigène) est comparée avec les cellules mémoires
trouvés par la phase d’apprentissage. La procédure de classification s’opère de la façon suivante :
1- Sélectionner un antigène de la population d’antigène à classer
2- Comparer l’antigène avec chaque cellule mémoire
3- Calculer le pourcentage de précision (stimulation/max)*100 pour chaque cellule
mémoire
4- Si le pourcentage le plus élevé est supérieur à un certain seuil, l’antigène reçoit la classe
de la cellule mémoire avec la pourcentage le plus élévé.
5- Ajouté le résultat à l’ensemble de classification
6- Boucler jusqu’à ce que tous les antigènes soient présentés
Mesure d’affinité :
De nombreuses mesures de distance ou d'indices de similarité existent, dans notre projet on a
utilisé Deux distances :
•
Distance euclidienne ;
•
Distance de Hamming
$! , $. " # ∑541 $! ' $. " "
4
4
6
,
5
$! , $. " # ∑41 7$! ' $. 7
4
4
88
Chapitre IV : implémentation et résultats
•
nous définissons la stimulation comme étant un moins la distace comme indiqué dans
l’équation
•
Stimulation= 1- 8 9: , 9; "
AT (seuil d’affinité moyenne) : est la valeur moyenne des distances entre tous les
antigène de la base, il calculé selon la formule suivant :
∑GE1 ∑GE& af@inité ag E , ag F "
AT #
n n ' 1"
2
Avec n : le nombre d’antigène
•
Taux de mutation (Mutaion rate) : un paramètre entre 0 et 1 qui indique la probabilité
que tel ou tel élément d’un Arb sera muté
•
Taux de clonage : une valeur entière utilisée pour le nombre clones mutés qu’une Arb
•
Taux d’hyper clonage : cette valeur détermine le nombre de clones mutés d’origine
.dans l’approche proposé per Watkins en 2001[9], ce nombre est déterminé par la formule
suivante :
Num_clone= hyper_clonal_taux* taux de clonage* valeur de stimulation
7- Résultats expérimentaux
Dans cette section, nous présentons nos résultats expérimentaux pour la construction des
modèles de détection d’intrusion. Nous allons d’abord
décrire les expérimentations avec
l’ensemble d’apprentissage KDD99 et celui généré par la technique d’échantillonnage, pour la
classification binaire ensuite pour la classification multi-classes.
Pour la construction d’un ensemble d’apprentissage équilibre, nous avons diminué le nombre
d’enregistrements des classes : normale, Prob et DOS en choisissant aléatoirement 10% de
connexions normal, DOS et Prob à partir de l’ensemble original et nous avons gardé le même
nombre de connexions pour les classes U2L et R2L, l’ensemble d’apprentissage est constitué
donc de 15525 connexion
Classe
Nombre
Ensemble original
Ensemble prétraité
Ensemble équilibré
Normal
Prob
DOS
R2L
U2R
TOTAL
97278
87832
8783
4107
2131
213
391458
54778
5477
1126
999
999
52
52
52
494021
145792
15525
Tableau 8. Représentation des attaques dans les différents ensembles d’apprentissage(cas multiclasses)
89
Chapitre IV : implémentation et résultats
Classe
Nombre
Ensemble original
Ensemble prétraité
Ensemble équilibré
Normal
Attaques
Total
97278
87832
8783
396743
57960
6742
494021
145792
15525
Tableau 9. Représentation des attaques dans les différents ensembles d’apprentissage(cas
binaire)
Il existe 4 paramètres du système immunitaire artificiel qui sont fixés au départ pour
d’apprentissage: nombre de génération, taux de clonage taux d’hyper clonage, taux de mutation.
Expérience 1 :
Pour cette expérience on a appliqué l’algorithme pour 100 générations avec les paramètres
suivantes :
-
Taux d’hyper clonage= 5
-
Taux de clonage =7
-
Taux de mutation=0,4
Apprentissage
•
Cas binaire :
Bien classé
Taux
Mal classé
Taux
Total
Normal
7853
89.41%
930
10.59 %
8783
Attaque
4570
67.78
2172
32.22 %
6742
Total
12424
80.01 %
3101
19.99 %
15525
Tableau 10. Les résultats d’apprentissage cas binaire
•
Taux d’apprentissage= 80.01%
Cas multi-classe :
Normal
Prob
DOS
U2R
R2L
Total
Bien classé
7870
159
4073
8
135
12245
Taux
89.60 %
74 .64 %
74.36 %
15.38 %
13.51%
78.87 %
Mal classé
913
54
1405
44
864
3280
Taux
10.39 %
25.36%
25.64 %
84.62 %
86.49 %
21.13 %
Total
8783
213
5478
52
999
15525
Tableau 11. Les résultats d’apprentissage cas multiclasse
Taux d’apprentissage= 78.87%
90
Chapitre IV : implémentation et résultats
Test
•
Cas binaire :
Bien classé
Taux
Mal classé
Taux
Total
Normal
45699
75.41%
14894
24 .59 %
60593
Attaque
164736
65.77 %
85700
34 .23 %
250436
Total
210435
67.67%
100594
32.33 %
311029
Tableau 12. Les résultats de test cas binaire
Taux de test = 67.67%
•
Multi-classe :
Normal
Prob
DOS
U2R
R2L
Total
Bien classé
50563
3170
154682
60
537
209012
Taux
83.44 %
76.09 %
67.29 %
26.31 %
3.00 %
67.02 %
Mal classé
10030
996
75171
168
15652
101987
Taux
26.56 %
23.91 %
32.71 %
84.62 %
97.00 %
21.13 %
Total
60593
4166
229853
228
16189
311029
Tableau 13. Les résultats de test cas multi- classe
Taux de test = 67.02%
Expérience 2:
Pour cette expérience on a appliqué l’algorithme pour 200 générations avec les paramètres
suivantes :
-
Taux d’hyper clonage= 5
-
Taux de clonage =7
-
Taux de mutation=0,4
Apprentissage
•
Cas binaire :
Bien classé
Taux
Mal classé
Taux
Total
Normal
7995
91.10 %
788
8 .90 %
8783
Attaque
5512
81.75 %
1230
9 .79 %
6742
Total
13507
87.01 %
2018
12.99 %
15525
Tableau 14. Les résultats d’apprentissage cas binaire
Taux d’apprentissage= 87.01 %
91
Chapitre IV : implémentation et résultats
•
Cas multi-classe :
Bien classé
8491
163
4562
12
56
13284
Normal
Prob
DOS
U2R
R2L
Total
Taux
96.67 %
76.52 %
83.27%
23.07 %
05.60%
85.56 %
Mal classé
555
50
653
40
943
2241
Taux
3.33 %
23.48 %
16.73 %
76.93 %
94.40 %
14.44 %
Total
8783
213
5478
52
999
15525
Tableau 15. Les résultats d’apprentissage cas multiclasse
Taux d’apprentissage= 85.56%
Test
•
Cas binaire :
Bien classé
Taux
Mal classé
Taux
Total
Normal
53534
88.35 %
7059
11.65 %
60593
Attaque
200350
80.00 %
50086
20.00 %
250436
Total
253884
81.62%
57145
18.38 %
311029
Tableau 16. Les résultats de test cas binaire
Taux de test = 81.62 %
•
Multi-classe :
Normal
Prob
DOS
U2R
R2L
Total
Bien classé
52478
3210
192963
64
824
249539
Taux
86.60 %
77.05 %
83.95 %
28.07 %
5.08 %
80.23 %
Mal classé
8115
956
36890
164
15365
61490
Taux
13.40 %
22.95 %
19.22 %
71.93 %
94.92 %
19.77 %
Total
60593
4166
229853
228
16189
311029
Tableau 17. Les résultats de test cas multi- classe
Taux de test = 80.23 %
Expérience 3:
Pour cette expérience on a appliqué l’algorithme pour 300 générations avec les paramètres
suivantes :
-
Taux d’hyper clonage= 5
-
Taux de clonage =7
-
Taux de mutation=0,4
Apprentissage
•
Cas binaire :
92
Chapitre IV : implémentation et résultats
Bien classé
Taux
Mal classé
Taux
Total
Normal
8183
93.16 %
600
6 .84 %
8783
Attaque
6150
91.21 %
592
9 .79 %
6742
Total
14333
92.32 %
1192
7.68 %
15525
Tableau 18. Les résultats d’apprentissage cas binaire
Taux d’apprentissage= 92.32%
•
Cas multi-classe :
Bien classé
8650
170
5365
12
60
14257
Normal
Prob
DOS
U2R
R2L
Total
Taux
98.48 %
79.81 %
97.93%
23.07 %
6.01 %
91.83 %
Mal classé
555
43
454
40
939
2241
Taux
6.33 %
20.19 %
8.29 %
61.54 %
93.99 %
8.17 %
Total
8783
213
5478
52
999
15525
Tableau 19. Les résultats d’apprentissage multi-classe
Taux d’apprentissage= 91.83%
Test
•
Cas binaire :
Bien classé
Taux
Mal classé
Taux
Total
Normal
52067
85.92 %
8526
14.08 %
60593
Attaque
221723
88.53 %
28713
11.47 %
250436
Total
273790
88.02 %
37239
11.98 %
311029
Tableau 20. Les résultats de test cas binaire
Taux de test = 88.02 %
•
Multi-classe :
Normal
Prob
DOS
U2R
R2L
Total
Bien classé
56235
3720
212552
64
824
273395
Taux
92.80 %
89.29 %
92.47 %
28.07 %
5.08 %
87.90 %
Mal classé
4358
446
17301
164
15365
61490
Taux
13.40 %
22.95 %
19.22 %
71.93 %
94.92 %
19.77 %
Total
60593
4166
229853
228
16189
311029
Tableau 21. Les résultats de test cas multi- classe
Taux de test = 87.90 %
93
Chapitre IV : implémentation et résultats
Discussion
A partir des résultats de cette expérience, on remarque bien que les résultats de la
classification après 300 génération sont meilleurs que celle de 100, 200 génération, ce qui indique
que le système immunitaire artificiel peut faire une meilleurs reconnaissance avec un nombre plus
élevé d’itération, pour cela dans la prochaine expérience on va augmenter le nombre d’itération
Expérience 4
Pour cette expérience on a appliqué l’algorithme pour 400 générations avec les paramètres
suivantes :
-
Taux d’hyper clonage= 5
-
Taux de clonage =7
-
Taux de mutation=0,4
•
Cas binaire :
Taux d’apprentissage= 92 .56 %
Taux de test = 88.34 %
•
Cas multi-classe :
Taux d’apprentissage= 92 .02 %
Taux de test= 87.98 %
Discussion
À partir des résultats de cette expérience, on remarque les résultats de la classification après
300 génération se sont stabilisé, ce qui indique si le système immunitaire artificiel peut faire une
meilleurs classification sa sera en changeant les autres paramètres, avec un nombre de génération
400
Expérience 5
Pour la cinquième expérience on a fixé le nombre de génération à 400 et on a changé les
paramètres : taux de clonage, taux d’hyper clonage, taux de mutation
-
Taux d’hyper clonage= 7
-
Taux de clonage =8
-
Taux de mutation=0,3
•
Cas binaire :
Taux d’apprentissage= 93 .56%
Taux de test = 92.54 %
•
Cas multi-classe :
Taux d’apprentissage= 92 .56%
Taux de test = 91.34 %
94
Chapitre IV : implémentation et résultats
Expérience 6
Pour la cinquième expérience on a fixé le nombre de génération à 400 et on achangé les
paramètres : taux de clonage, taux d’hyper clonage, taux de mutation
-
Taux d’hyper clonage= 3
-
Taux de clonage =9
-
Taux de mutation=0,2
•
Cas binaire :
Taux d’apprentissage= 95 .56%
Taux de test = 93.54 %
•
Cas multi-classe :
Taux d’apprentissage= 93 .56%
Taux de test = 91.02 %
A partir des résultats de l’expérience 4,5 et 6 on remarque que les résultats de la
classification sont influencés par ces trois paramètres : taux de clonage, taux d’hyper clonage, taux
de mutation et pour le système immunitaire artificiel arrive à faire la meilleure classification
possible, il faut faire un nombre important d’expériences avec différent paramètre pour trouver
les meilleurs paramètres qui donneront une bonne classification.
8- Sélection d’attribut
Dans cette section, nous allons avoir l’application de la fonction F-score sur l’ensemble
d’intrusion KDD99 pour l’identification des attributs pertinents, le seuil choisi pour la sélection
d’attribut est de 0.001
8-1 cas binaire
Attribut
29
33
34
6
23
38
39
25
26
4
5
12
32
3
2
31
Score
1.838393
1.699115
1.104260
1.073100
1.056972
0.959645
0.954931
0.947864
0.940202
0.819505
0.730648
0.652498
0.188306
0.147829
0.135555
0.081340
Attribut
10
22
35
8
13
11
14
37
17
1
16
7
9
18
36
24
Score
0.035355
0.020020
0.009879
0.008963
0.008729
0.002745
0.001806
0.001242
0.000742
0.000512
0.000280
0.000168
0.000078
0.000060
0.000044
0.000003
95
Chapitre IV : implémentation et résultats
40
30
27
28
41
0.039292
0.038166
0.037505
0.036905
0.36593
19
15
20
21
0.000002
0.000001
0.000000
0.000000
Tableau 22. Résultats de F-score pour le cas binaire
Le critère d’éliminations est d’écarter les attributs qui ont un score inferieur au seuil 0.001.
les attributs éliminé sont ainsi 21, 20,15, 19, 24, 36, 18, 9, 7, 16, 1 et 17. Le nouvel ensemble
d’apprentissage pour le cas binaire est constitué alors de 29 attributs
Expérience 7
Pour la septième expérience on a fixé le nombre de génération à 400 et on a changé les
paramètres : taux de clonage, taux d’hyper clonage, taux de mutation
-
Taux d’hyper clonage= 3
-
Taux de clonage =9
-
Taux de mutation=0,2
Apprentissage
Bien classé
Taux
Mal classé
Taux
Total
Normal
8643
98.41 %
140
1.59 %
8783
Attaque
6280
93.14 %
462
6.86 %
6742
Total
14923
96.12 %
602
3.88 %
15525
Tableau 23. Les résultats d’apprentissage de cas binaire
Taux d’apprentissage = 96.12 %
Test
Bien classé
Taux
Mal classé
Taux
Total
Normal
60050
99.10 %
543
0.90 %
60593
Attaque
234993
93.83 %
15443
6.17 %
250436
Total
295043
94.86 %
15986
5.14 %
311029
Tableau 24. Les résultats de test cas binaire
Taux de test =94.86 %
96
Chapitre IV : implémentation et résultats
Expérience 8
Pour cette expérience on a fixé le nombre de génération à 400 et on a changé les
paramètres : taux de clonage, taux d’hyper clonage, taux de mutation
-
Taux d’hyper clonage= 2
-
Taux de clonage =10
-
Taux de mutation=0,2
Apprentissage
Bien classé
Taux
Mal classé
Taux
Total
Normal
8670
98.71 %
113
1.29 %
8783
Attaque
6368
94.45 %
374
5.55 %
6742
Total
15038
96.86 %
487
3.14 %
15525
Tableau 25. Les résultats d’apprentissage cas binaire
Taux d’apprentissage = 96.86 %
Test
Bien classé
Taux
Mal classé
Taux
Total
Normal
60090
99.16 %
503
0.86 %
60593
Attaque
235357
93.97 %
15079
6.03 %
250436
Total
295447
94.99 %
15582
5.01 %
311029
Tableau 26. Les résultats de test cas binaire
Taux de test =94.99 %
8.2
Cas multi-classe
Attribut
29
25
38
39
26
5
34
33
23
12
6
4
2
3
14
Score
6.903363
2.047953
2.04507
2.017079
1.999033
1.955223
1.812209
1.722088
1.552673
1.368087
1.297871
1.158432
0.865821
0.78593
0.540488
Attribut
30
35
31
40
27
28
41
16
1
11
13
18
24
8
19
Score
0.18064
0.180349
0.095676
0.067729
0.066961
0.061879
0.061784
0.049149
0.04636
0.032432
0.030934
0.029417
0.014656
0.012666
0.006986
97
Chapitre IV : implémentation et résultats
32
22
36
10
17
37
0.453602
0.357458
0.349908
0.288854
0.257845
0.225134
9
15
7
20
21
0.006445
0.000380
0.000236
0.000000
0.000000
Tableau 27. Résultats de F-score pour le cas multiclasse
Le seuil de l’élimination utilisé est toujours 0.001. Les attributs éliminés sont ainsi 21, 20, 7
et 15.
Expérience 9
Pour la septième expérience on a fixé le nombre de génération à 400 et on a changé les
paramètres : taux de clonage, taux d’hyper clonage, taux de mutation
-
Taux d’hyper clonage= 3
-
Taux de clonage =9
-
Taux de mutation=0,2
Apprentissage
Normal
Prob
DOS
U2R
R2L
Total
Bien classé
8760
205
5450
14
200
14629
Taux
99.73 %
96.24 %
99.48%
26.92 %
20.02 %
94.22 %
Mal classé
23
8
28
38
799
2241
Taux
0.23 %
3.76 %
1.36 %
73.08 %
79.98 %
5.78 %
Total
8783
213
5478
52
999
15525
Tableau 28. Les résultats d’apprentissage multi-classe
Taux d’apprentissage= 94.22 %
Test
Bien classé
Normal
Prob
DOS
U2R
R2L
Total
60090
3904
227325
64
860
292243
Taux
99.16 %
93.71 %
98.90 %
28.07 %
5.31 %
93.93 %
Mal classé
503
262
2528
164
15329
18789
Taux
13.40 %
22.95 %
19.22 %
71.93 %
94.92 %
6.07 %
Total
60593
4166
229853
228
16189
311029
Tableau 29. Les résultats de test cas multi-classe
Taux d’apprentissage= 93.93 %
98
Chapitre IV : implémentation et résultats
Discussion
A partir des résultats de l’expérience 7, 8 et 9, on remarque que les résultats de la
classification sont influencés par la sélection d’attributs pertinents. Les résultats obtenus
montrent l’amélioration de classificateur du système immunitaire artificiel
Les différentes expérimentations réalisées dans ce travail montrent qu’une seule technique
(l’approche CLONCLAS) ne peut pas détecter toutes les classes d’attaques avec une probabilité
de détection plus élevée. Pour la classification multi-classe l’approche CLONCLAS démontre une
performance de détection plus élevée pour les classes majoritaires (normal: 99.16%, Prob : 93.71
%, DOS : 98.90 %) et un taux de détection petit pour les classes U2R (28.07%) et R2L(5.31%) ;
L’approche CLONCLAS a offert un niveau de détection de malveillances acceptable pour
les deux types d’attaques Prob et DOS. Cependant, elle à échoué de donner une bonne
performance pour les classes d’attaques restantes U2R et R2L.
Pour ne manipuler plusieurs paramètres et perdre beaucoup de temps dans l’apprentissage
et dans le but d’améliorer le SIA, nous proposons d’utiliser une méthode d’optimisation telle que
les algorithmes génétiques, le réseau de neurone pour choisir les meilleurs paramètres de
classification et construire une meilleure base d’anticorps pour l’apprentissage.
On propose un système multi-classifieur on rajoute une autre méthode de classification à la
méthode de CLONCLAS où chaque méthode est entrainé sur la classe où a prouvé une
performance. La méthode CLONCLAS sera alors entrainée Sur les classes : normal, Prob, DOS,
et l’autre méthode sur les classes R2L, U2L. la figure suivante montre le modèle de muticlassfieur.
R2L, U2R
Méthode de
classification
Ensemble KDD99
AIS(CLONCLAS)
Normal, prob, DOS
Figure IV.8 : modèle de multi-classifieur
99
Chapitre IV : implémentation et résultats
9- Etude comparative
En comparant nos résultats avec la méthode SVM (Support Vector Machine) [AIS06] en
utilisant le noyau RBF sur la même base de données
Cas binaire
Cas Multi-classe
Méthodes
Taux de classification
Méthodes
Taux de classification
SVM
93.10%
SVM
92.56
AIS
94.99%
AIS
93.93%
Tableau 30. Etude comparative
Les expérimentations ont montré que le taux de reconnaissance est meilleur dans la
classification par le SIA (l’approche CLONCLAS) par rapport à la classification par les SVMs.
10- Conclusion
Ce chapitre a été consacré à l’évaluation de classifieur CLONCALS du système
immunitaire artificiel pour la détection d’intrusion. Plusieurs expérimentations ont été effectuées
pour mesurer la performance de l’approche CLONCLAS dans la détection d’intrusion avec
l’utilisation de l’ensemble de données KDD99.
Nous avons fait un appel sur la technique de sélection d’attributs avec F-score qui permet
de calculer la pertinence de chaque attribut pour l’identification d’un sous ensemble d’attribut
importants.
Nous avons constaté que le processus d’apprentissage artificiel converge vers un bon
résultat seulement après quelques générations, Les résultats obtenus par l’approche de
CLONCLAS montrent que la qualité de classification (binaire ou multi-classe) dépend du choix
des paramètres (taux de clonage, taux d’hyper clonage, taux de mutation).
La sélection d’attribut pertinent avec le F-score fait une amélioration sur le taux de
reconnaissance.
On propose aussi d’étudier la relation de dépendance entre les donnés KDD99 dans les
travaux futurs dans le but toujours d’essayer d’améliorer les performances des classifieurs
100
Conclusion
générale
Conclusion générale
Conclusion générale
Avec la complexité croissante des réseaux et les systèmes informatiques, les solutions
inspirées de la biologie constituent une source d’inspiration intéressante. Ces approches inspirées
de la biologie restent intéressantes par rapport à d’autres approches pour deux raisons
principales. D’une part, les systèmes informatiques et les espèces biologiques sont souvent
attaqués, et d’autre part, les systèmes informatiques deviennent de plus en plus complexes et les
approches traditionnelles de la sécurité ne peuvent pas assumer le rôle de protection d’une manière
parfaite, par contre les métaphores biologiques assurent la protection du corps contre les intrus
d’une manière très puissante.
Dans ce travail nous nous sommes focalisés sur l’utilisation des systèmes immunitaires
artificiels dans la sécurité des systèmes informatiques et plus précisément les systèmes de
détection d’intrusions.
Pour cette raison, nous avons exposé les systèmes de détection
d’intrusions, puis nous avons étudié les systèmes immunitaires artificiels afin de pouvoir établir
l’analogie entre les systèmes de détection d’intrusions et les systèmes immunitaires artificiels.
L’objectif de ce travail était de développer un système capable de différencier entre les
connexions normales et celles d’attaques à base au système immunitaire artificiel. Pour évaluer le
système développé, nous avons choisi travailler avec la base de données KDD99 qui a été conçu
spécialement pour l’évaluation des systèmes de détection d’intrusion.
Les différentes expérimentations ont montré la bonne performance de l’approche CLONCLAS
dans le cas binaire et leur dégradation dans le cas multi-classe. Afin d’améliorer de taux de classification
nous fait appel à deux approches. La première consiste à construire un ensemble de données équilibre
en augmentant le nombre des classes minoritaires et en réduisant le nombre des classes majoritaires. LA
deuxième consiste à identifier un sous ensemble d’attributs pertinents pouvant d’améliorer les
performances de l’approche CLONCLAS. Les expérimentations ont démontré qu’une seule méthode
de classification ne peut pas détecter l’ensemble d’attaque avec un taux élevé. Pour cela on propose la
conception de multi-classifieur en ajoute autre méthode de classification à l’approche de CLONCLAS
pour améliorer le taux de reconnaissance.
En perspective de recherche, nous proposons d’utiliser une méthode d’optimisation telle que les
algorithmes génétiques, le réseau de neurone pour choisir les meilleurs paramètres de classification et
pour construire la meilleur base d’anticorps pour l’apprentissage.
-
Application d’autre théorie de système immunitaire tel que le réseau immunitaire artificiel
pour la même base de données KDD99 ou d’autre base de données.
-
Utiliser le système multi agent pour appliquer l’AIS à la détection d’intrusion en temps réel.
101
Bibliographie
Bibliographie
Bibliographie
[AIC02] Aickelin. U & Cayzer. S « The Danger Theory and Its Application to AIS», 1stn
International Conference on AIS, pp 141- 148, 2002.
[AIC03] Aickelin. U & Bentley . P & Cayzer. S & Kim . J & McLeod. J « Danger Theory: The
Link between AIS and IDS? », in Proceedings ICARIS 2003, 2nd International
Conference on Artificial Immune Systems, 147-155, 2003.
[AIC04] U. Aickelin & J. Greensmith & J. Twycross
« Immune System Approaches
toIntrusion Detection - A review », School of Computer Science, University of
Nottingham, 2004
[AIS06] Aissaoui Sihem « Apprentissage automatique et sécurité des systèmes d’information
Application : Un système de détection d’intrusion basé sur les Séparateurs à Vaste
Marge (SVM) » mémoire de magister université d’Oran 2006.
[ALL03]
Julia ALLEN, Alan CHRISTIE, William FITHEN, John MCHUGH, Jed PICKEL,
Ed Stoner , State of the Practice of Intrusion Detection Technologies, Networked
Systems Survivability Program , 2000.
[AXE00] Axelsson. S.: « Intrusion Detection Systems: A Taxonomy and Survey ».
Technical Report No 99-15, Dept. of Computer Engineering, Chalmers
University of Technology, Sweden, 2000,
[Bac00] Rebecca Bace and Peter Mell. Intrusion Detection Systems. NIST Special
Publication on Intrusion Detection Systems ,2000.
[BAL98]
J. S. Balasubramaniyan & J. O. Garcia-Fernadez & D. Isacoff & E. H. Spafford & D.
Zamboni. « An Architecture for Intrusion Detection using Autonomous Agents
». Technical Report Coast-TR-98-05, Computer Sciences Department, Purdue
University, 1998.
[BAL02] J. Balthrop & S. Forrest & M. Glickman. « Revisiting lysis: Parameters and normal
behaviour ». Proceedings of the Congress on Evolutionary Computation, pages 10451050, 2002.
[BAL02a] J.Balthrop & F Esponda & S Forrest & M. Glickman.
« Coverage and
generalization in an artificial immune system ». Proceedings of GECCO, pages 3 10,
2002.
102
Bibliographie
[BRO04] Jason BROWNLEE, Clonal Selection Theory & Clonalg selection classification
algorithm (CSA), Master of Information Technology, Swinburne University of
Technology, 2004.
[BSA02] Statistiques communiqués par la BSA (Business Software Aliance), 2002.
[BSI00] International Standards Organization. Information Processing Systems - OSI – Basic
Reference Model - Part 2: Security Architecture. ISO 7498-2, February 2000.
[BUR98] Burgess, M. « Computer Immunology », Proceedings of the 12th System
Administration
Conference
(USENIX/LISA)
1998.
http://www.iu.hio.no/cfengine/papers.html.
[BUR98a] Burgess, M. « Cfengine as a Component of Computer Immune-Systems »,
Proceedings
of
the
Norwegian
Informatics
Conference
1998.
http://www.iu.hio.no/cfengine/papers.html.
[BUR00] Burgess, M.
Proceedings
« Evaluating Cfengine ’s Immunity Model of Site Maintenance »,
of
the
2nd
SANE
system
administration
conference
(USENIX/NLUUG), 2000. http://www.iu.hio.no/cfengine/papers.html
[BUR06]
David BURGERMEISTER, Jonathan KRIER, Système de détection d’intrusion,
2006. (http://dbprog.developpez.com);
[CAS99] De Castro .L.N & Von Zuben .F.J «Artificial Immune Systems: Part I - Basic theory
and applications », Technical re port, TR-DCA-01/99, December 99.
[CAS00a] Pr Manuel CASTELLS, Le développement d'Internet, qui était exponentiel, trouve
actuellement sa limite, Journal le monde, 2000.
[CAS00b] Leandro Nunes de CASTRO, Artificial Immune Systems: Theory and Applications,
VI-Brazilian Symposium on Neural Networks, 2000.
[CAS00] De Castro .L.N & Von Zuben .F.J «Artificial Immune Systems: Part II - A survey of
application », Technical report- DCA RT 02 /00, 2000.
[CAS00c] De Castro.L.N & Von Zuben.F.J «The clonal selection algorithm with engineering
application» Proc of GECCO00, Workshop Proceeding, 36-37, 2000.
[CAS03] L.N De CASTRO, J I TIMMIS, Artificial immune system as a Novel Soft Computing
paradigm, Computing laboratory, University of Kent at Canterbury , Soft Computing
Journal , Vol 7 July, 2003.
103
Bibliographie
[COL01] Eric COLE, HACKERS, attention danger, Compuss Press ISBN: 2-7440-1273-4,
2001.
[CRO95] M. Crosbie & E. H. Spafford. « Active Defense of a Computer System using
Autonomous Agents ». Technical Report CSD-TR-95-008, Purdue University, 1995.
[CRO95a]
M. Crosbie & E. H.
Spafford.
« Defending
a Computer
System
using
Autonomous Agents ». Technical Report CSD-TR-95-022, Computer Sciences
Department, Purdue University, 1995.
[CSI08]
CSI Computer Crime & Security Survey, 2008, (http://www.gocsi.com).
[DAS99] D. Dasgupta «Artificial Immune Systems and Their Application », Springer-Verglas,
1999.
[DAS99a] Dasgupta. D. « Immunity-Based Intrusion Detection Systems: A General Framework
», the
proceedings
of
the
22nd
National
Information
Systems
Security
Conference (NISSC), October 18-21, 1999.
[DAS02] D. Dasgupta & F. Gonzalez. « An immunity-based technique to characterize intrusions
in computer networks ». IEEE Transactions
on Evolutionary Computation,
6(3):281 291, 2002.
[DAS03] D. Dasgupta & Z.Ji & F.Gonzalez « Artificial Immune System (AIS) Research in the
Last Five Years », IEEE.2003.
[DAV06] David Burgermeister, Jonathan Krier . Les systèmes de détection d'intrusions
http://dbprog.developpez.com 2006
[Deb93] Hervé Debar, « Application des réseaux de neurones à la détection d ’intrusions sur
lessystèmes informatiques », thèse de doctorat, Université Paris 6, 1993.
[Deb00]
H. Debar, M. Dacier & A. Wespi. “A revised taxonomy for intrusion detection
systems. Annales des télécommunications’’. July–August 2000.
[DEN87] D. Denning «An intrusion detection models », IEEE, transaction on software
engineering 13(2): 222-232, 1987.
[ELK00] Elkan, C Result of the KDD’99 classifier learing. SIGKDD Exploration,2000 ACM
SIGKDD. Vol. 1, No 2 pp. 63-64 janvier 2000
104
Bibliographie
[FOR94] Forrest .S & Perelson.A & Allen.L & Cherukuri. R «Self-Nonself Discrimination in a
computer», Proc. Of the IEEE Symposium on research in Security and Privacy, pp.
2002-212, 1994.
[FOR96] Forrest .S & Hofmeyr. S & Somayaji .A & Longstaff .T « A sense of self for Unix
processes », Proceedings of the 1996 IEEE Symposium on Research in Security and
Privacy, 120-128, 1996.
[FOR00] Somayaji. A & Forrest. S « Automated response using system-call delays »,
Proceedings of the ninth USENIX Security Symposium, 185-197, 2000.
[GAD07] Dr Mohamed GAD EL BAR, Evaluation des systèmes de détection d’intrusions,
Laboratoire d’informatique Fondamentale d’Orleans, 2007.
[GAN00] Abdoul Karim GANAME, Doctorant en sécurité informatique, Piratage informatique
: aperçu, motivations des pirates, 2000.
[GAR05] S.M. Garrett, “How do we Evaluate Artificial Immune Systems?”, Evolutionary
Computation, vol. 13, Issue 2, pp.145-178, 2005.
[GON03] F. Gonzalez & D. Dasgupta. « Anomaly detection using real-valued negative
selection» . Journal of Genetic Programming and Evolvable Machines, 4:383
403,
2003.
[GRE05] Greensmith. J & Aickelin. U & Cayzer. S « Introducing Dendritic Cells as a Novel
Immune-Inspired Algorithm
for Anomaly Detection », To
appear
in
the
Proceeding of the fourth International Conference on Artificial Immune Systems
(ICARIS-05), 2005.
[HAR98] Hart. E & Ross. P & Nelson. J « Producing Robust Schedul es Via an
Artificial Immune System », Proceeding of IEEE International Conference on
Evolutionary
Computing,
1998.
http://www.dai.ed.ac.uk/daidb/people/homes/emmah/research.html
[HAR99] Hart. E. & Ross. P «An Immune System Approach to Scheduling in Changing
Environments »,
Proceeding
of
Genetic and
Evolutionary
Computation
Conference (GECCO’99), pp. 1559 -1566, 1999.
[HOF98] S. Hofmeyr & S. Forrest. « Intrusion detection using sequences of system calls ».
Journal of Computer Security, 6:151 180, 1998.
105
Bibliographie
[HOF99] Steven Hofmeyr « An immunological model of distributed detection and its
application to computer security ». PhD thesis, University Of New Mexico, 1999.
[HOF99a] S. Hofmeyr & S. Forrest. « Immunity by design ». Proceedings of GECCO,
pages 1289 1296, 1999.
[HOF00] S. Hofmeyr & S. Forrest « Architecture for an artificial immune system », Evol.
Comput, vol. 8, no. 4, pp 443 – 473, 2000.
[HUN96] Hunt. J & Cooke. D., «Learning using an Artificial Immune System », Journal
of Network and Computer Applications: Special Issue on Intelligent Systems
Design and Application, Vol. 19, pp.189-212, 1996.
[HUN98] Hunt. J & Timmis. J & Cooke. D & Neal. M & King. C. «Jisys: Development of
Artificial Immune Systems for Real World Applications », Artificial Immune
Systems and Their Applications, (Ed) Dasgupta, D., Springer-Verlag, Berlin, pp.157186, 1998.
[JAC94]
Jackson. K & DuBois. D & Stallings. C « The NIDES Statistical Component
Description and Justification » Technical Report, Computer Science Laboratory,
SRIInternational, Menlo Park, CA, March, 1994.
[JAN00] W. Jansen & P. Mell, T.Karygiannis & D.Marks «Mobile Agents in Intrusion
Detection And Response », 2000
[JER74]
Jerne. N. K «Towards a Network theory of the immune system », Ann. Immunol.
(Inst. Pasteur) 125C, pp. 373-389, 1974.
[KDD]
KDD’99
datasets
The
UCI
KDD
Archive,
Irvine
CA,
USA,
1999
http://kdd.ics.uci.edu/databases/kddcup99/kddcup99.htm
[KEN98] Kendall, K. A Database of computer Attacks for the evaluation of intrusion Detection
Systems. Thèse de Master, institute de technologie Massachusetts.1998.
[KEP94]
J. Kephart. « A biologically inspired immune system for computers ». In
Proceedings of the Fourth International Workshop on Synthesis and Simulation
of Living Systems, Artificial Life IV, pages 130-139, 1994.
[KIM99] J. Kim & P. Bentely «The Human Immune System and Network Intrusion Detection
», the proceeding of 7th European congress on intelligent Techniques and Soft
computing (EUFIT 99), Aachen, Germany, 1999.
106
Bibliographie
[KIM01] J. Kim & P. Bentley. « Evaluating negative selection in an artificial immune system for
network intrusion detection ». Proceedings of GECCO, pages 1330
1337, July 2001.
[KIM01a] J. Kim & P. Bentley « Towards an artificial immune system for network
intrusion detection: An investigation of dynamic clonal selection ». In the Congress
on Evolutionary Computation (CEC-2001), Seoul, Korea, pages 1244 1252, 2001.
[KIM02] J. Kim « Integrating Artificial Immune Algorithms for Intrusion Detection »,
PhDThesis, University College London, 2002.
[KOU07] Pr. Philippe KOURILSKY, Immunologie moléculaire, Académie des SciencesCollège
de France, 2007.
[KRU02] C. Kruegel & T. Toth, « Applying Mobile Agent Technology to Intrusion Detection »,
Technical University of Vienna, Distributed Systems group, 2002.
[LAB06] LABED Ines «Proposition d’un système immunitaire artificiel pour la détection
d’intrusions » thèse de magister informatique université mentouri de Constantine
2006.
[LEA00]
Leandro Nunes de CASTRO, Fernando José VON ZUBEN, Artificial immune
system: Part II- A survey of applications, Technical Report, DCA-RT, Feb 2000.
[LEA01]
Leandro Nunes de CASTRO, Fernando José VON ZUBEN, « Learning and
optimization using clonal selection principle » IEEE transactions on Evolutionary
computation, special Issue on Artificial Immune System, 6(3):239-251, 2001.
[LIY00] Li. Y& Wu. N & Jajosia. S & Sean Wang. X « Enhancing Profiles for Anomaly
Detection Using Time Granularities » Proc. 1st ACM workshop on Intrusion
Detection Systems, Athens, Greece, Nov. 2000.
[MAT94] Matzinger. P « Tolerance, danger and the extended family », Annual reviews
inImmunology, 12: 991- 1045, 1994.
[MAT98] P. Matzinger. « An innate sense of danger». Seminars in Immunology, 10:399415, 1998.
[MAT02] Matzinger. P « The Danger Model: A renewed Sense of Self », Science 296: 301-305,
2002.
107
Bibliographie
[MCC97] McCoy. D. F & Devarajan. V « Artificial Immune Systems and Aerial Image
Segmentation », Proceeding of IEEE Systems, Man and Cybernetics, pp.867- 873,
1997
[MIS96] Mitsumoto. N & Fukuda.T & Idogaki. T « Self-Organising Multiple Robotic
System ». Proceedings of
IEEE
Internationa l Conference on Robotics and
Automation. Pp. 1614-1619. Minneapolis, USA. IEEE.1996.
[MOR98] Mori. K & Tsukiyama. M & Fukuda. T «Adaptive Scheduling System Inspired by
Immune System », Proceeding of IEEE Systems, Man and Cybernetics, pp.38333837, 1998.
[MYK94] Mykerjee. B & Heberlein. L.T & Levitt .K.N « Network Intrusion Detection », IEEE
Network, Vol 8, No 3, pp .26-41, 1994.
[NIK99] Nikolaev. N & Iba. H & Slavov. V «Inductive Genetic Programming with Immune
Network Dynamics », Advances in Genetic Programming 3, MIT Press, Chapter 15,
pp. 335-376, 1999.
[NIS 01] « Intrusion detection Systems ». NIST Computer Science Special reports SP 800-31,
November 2001.
[OKA99] Okamoto, T & Ishida, Y « A Distributed Approach to Computer Virus Detection and
Neutralization by Autonomous and Heterogeneous Agents », the Proceeding of
the ISADS’99, pp.328-331. 1999.
[Phi98]
A. Phillip, Porras and Alfonso Valdes. Live traffic analysis of tcp/ip gateways.
Proc.
ISOC Symposium
on
Network
and
Distributed
System
Security
(NDSS98). (San Diego, CA, March 98), Internet Society.
[POR98] Porras. P. A & Neumann. P. G. « EMERALD: Event Monitoring Enabling Responses
to Anomalous Live Disturbances », Proceeding of 20th National Information System
Security Conference, 1998.
[POT98] Potter. M. A. & De Jong, K.A. «The Coevolution of Antibodies for Concept
Learning », Proceeding of the fifth Intl. Conference on Parallel Problem Solving
From Nature, pp.530-539, 1998.
[PRI98]
K.
Price.
«
Intrusion
Detection
Pages
».
Purdue
University,
1998.
http://www.cs.purdue.edu/coast/intrusion-detection/ids.html .
108
Bibliographie
[QUI93] Quinlan, JR. C45: program for machine learning. Morgan Laufmann publishers Inc.
San Francisco, CA, USA. 1993
[RAY01] Eric Steven RAYMOND, Détection des intrusions réseau, 2001.
[ROB93] Robert E. Smith & Stephanie Forrest & Alan S. Perelson. « Searching for diverse,
cooperative populations with genetic algorithms
». Evolutionary Computation,
1(2):127 –149,1993.
[Sec04] Le Grand Livre de Securiteinfo.com Url : http://www.securiteinfo.com 9 février 2004.
[Sitetcp] www.tcpdump.org
[SMS00] Auteurs anonymes, Sécurité Maximale des systèmes et réseaux, Compuss Press ISBN
: 0-672-32459-8, 2000.
[SNR03] Intrusion Detection Systems with Snort Advanced IDS Techniques Using Snort,
Apache, MySQL, PHP, and ACID, ISBN 0-13-140733-3, 2003.
[STA96]
S. Staniford-Chen & S. Cheung & R. Crawford & M. Dilger & J. Frank &
J.Hoagland & S. Templeton & K. Levitt & S. Walnum & C. Wee, & R. Yip. «
GrIDS-A Graph-Based Intrusion Detection System for Large Network »s. Proc
of the 19th National Information Systems Security Conference, 1996.
[STA97]
S. Staniford-Chen , « GrIDS Outline Design Document ». GrIDS Project Home
Page
at
UC
Davis’sComputer
Science
Department,
1997.
http://olympus.cs.ucdavis.edu/arpa/grids/design.html ,
[STE99] Steven Hofmeyr « An immunological model of distributed detection and its application
to computer security ». PhD thesis, University Of New Mexico, 1999.
[STO00]
Stolfo,S, Fan, W, lee,W, Prodromidis, A et Chan, P.cost-based Modeling for Fraud
and intrusion Detection :Results from the JAM project, Proceeding of DARPA
Information Survivability Conference and Exposition; IEEE computer Press
.pp.130-144. 2000.
[SUN96] A.
Sundaram,
« An
introduction
to
Intrusion
Detection »,
1996
http://www.acm.org/crossroads/xrds2-4/intrus.html
109
Bibliographie
[TEN90] Teng. H & Chen . K &
Lu. S « Adaptive Real-Time Anomaly Detection
Using Inductively Generated Sequential Patterns », Proceeding of the 1990
Symposium on Security and Privacy, Oakland, CA, May 7-9, pp 278-284, 1990.
[TIM01]
J. Timmis « Artificial Immune Systems: A novel data analysis technique inspired by
the immune network theory », PhD Thesis, University of Wales, 2001.
[TIM02] J.Timmis & De Castro.L.N «Artificial Immune Systems : A novel paradigm to pattern
recognition », In artificial Neural Networks in pattern recognition, Soco 2002,
university of Paisely, UK, pp. 67-84,2002.
[TIM02A] J.
Timmis
&
L.N.
De
Castro
«Artificial
immune
Systems:
A
New
computational Intelligence Approach », Springer-Verglas, London, 2002
[TIM03] J.Timmis & De Castro.L.N « Artificial Immune System as a novel Soft
ComputingParadigm ». To appear in the Soft Computing Journal, vol7, Issue 7, July
2003.
[TIM04] J. Timmis & T. Knight & L.N. De Castro & E.Hart, «An overview of Artificial
immune Systems », Natural computation series, pages 51-86, Springer, 2004.
[Ubi00] Ubizen. High Level Simplified Risk Management Methodology, Internal document
2000.
[VON01] Von Zuben.F.J & De Castro.L.N « aiNet: An artificial Immune Network for
Data analysis », In Data Mining: A Heuristic Approach, H.A. Abbass, R.A.Sarker,
C.S. Newlton (Eds.), Idea Group publishing, USA, Chapter XII, pp.213-259, 2001.
[WHI96] B. White & E. A. Fisch, & U. W. Pooch. « Cooperating Security Managers: A PeerBased Intrusion Detection System ». IEEE Network Journal, pp. 20-23,
January/February 1996.
[ZAM05] D. Zamboni « Intrusion Detection - Basic concept and current research at IBM »,
IBM Global security Analysis Lab, Information Technology Security Spring School,
2005.
110
Annexe
1- Introduction
En 1998, les laboratoires de MIT Lincoln ont organisé un program d’évaluation des systèmes de
détection d’intrusion DARPA dans le but d’examiner et d’évaluer les recherches dans la détection
d’intrusion. Pour cela, ils ont installé un environnement pour acquérir des connexions TCP/IP pendant
neufs semaines dans un réseau local (LAN) simulant un LAN typique de l’Armée de L’Air des EtatsUnis. Le réseau a été actionné mais en lui injectant de multiples attaques [KEN98]. Pour chaque
connexion TCP/IP, 41 attribut qualificatifs et quantitatifs ont été extraits [STO00]. La compétition
« KDD Intrusion Detection 1999 » utilisait un sous ensemble de 494021 enregistrements ce qui
représente 10% de la base de données globale.
2- Classe d’attaque de l’ensemble KDD99
Les principales classes d’attaques de l’ensemble de données KDD99 sont :
-
Probing : surveillance et sondage
-
DOS (Denial Of Service) : déni de service
-
R2l (Remot to User) : accès non autorisé à partit d’une machine distante
-
U2R (User to Root): accès non autorisé pour avoir le privilège d’un administrateur
Classes
Numéro
Normal
0
Probe
1
DOS
2
U2R
3
U2L
4
Tableau A.1. Numérisation des classes d’attaques
La distribution des attaques dans l’ensemble d’apprentissage et dans l’ensemble de test n’est pas
identique. L’ensemble de test contient plus les 22 types d’attaque d’apprentissages 14 types. Quelques
experts dans le domaine d’intrusion croient que la plupart des nouvelle attaques sont qu’une variante
des attaques connues et la signature des ces dernières peut être suffisante pour capter de nouvelle
variantes. Le tableau A.2 et A.3 présentent les différents types d’attaques de l’ensemble d’apprentissages
et de test respectivement.
Annexe
Attaques
Back
Buffer_overflow
ftp_write
Guess_password
Imap
Ipsweep
Land
Loadmodule
Multihu
Neptune
Nmap
Pert
Phf
Pod
Portsweep
Rootkir
Satan
Smurf
Spy
Tearfrop
Warezclient
Warezmaster
Classe d’attaque
2
3
4
4
4
1
2
3
4
2
1
3
4
2
1
3
1
2
4
2
4
4
Tableau A.2. Les différentes attaques de l’ensemble d’apprentissage KDD99
Attaques
Apache2
Back
Buffer_overflow
ftp_write
Guess_password
Httpunnel
Httpunnel
Imap
Ipsweep
Land
Loadmodule
Mailbomb
Mscan
Multihu
Neptune
Nmap
Pert
Pod
Portsweep
Processtable
Ps
Rootkit
Saint
Classe d’attaque
2
2
3
4
4
4
3
4
1
2
3
2
1
4
2
1
3
2
1
2
3
3
1
Annexe
Satan
Sendmail
Smurf
Snmpgetattack
Snmpguess
Sqlattack
Teardrop
Udpstom
Warezmaster
Worm
Xlock
Xsnoop
Xteem
1
4
2
4
4
3
2
2
4
4
4
4
3
Tableau A.3. Les différentes attaques de l’ensemble d’test KDD99
3- Les attributs de KDD99
Stolfo et al [STO00] définissaient des attributs de haut niveau pouvant différencier les
connexions normales de celles d’attaques. Il existe plusieurs catégories des attributs dérivés.
Les attributs de la même machine « «same host » examinent seulement les connexions des deux
derniers seconds qui ont la même machine destination que celle de la connexion courante, et calculent
les statistiques reliées au fonctionnement du protocole, service, etc.
Les attributs similaire « same service » examinent seulement les connexions des deux derniers
secondes qui ont le même service que celui de la connexion courante.
Les attributs « same host » et « same service » sont appelés les attributs du trafic à base de temps
d’une connexion.
Certaines attaques de type prob scannent les machines (ports) en plus de 2 secondes, par un scan
par minute. Par conséquent, un d’autre type d’attributs et extrait à partir des machines destination en
utilisant des fenêtres de 100 connexions vers la même machine au lieu qu’un temps fenêtre. Ceci
produit un ensemble d’attributs appelés les attributs du trafic d’une hôte
Contrairement à certaines attaques de types DOS et Prob, les attaques U2R et R2L sont
enveloppées dans le champ données des paquets est nécessitent ainsi qu’une seule connexion pour
réaliser l’attaque
Stolfo et al [STO00] ont fait appel à des experts de domaine pour ajouter des attributs qui
cherchent d’identifier des comportements suspects dans le champ de données, tels que le nombre
d’échec de tentatives de connexions. Ces attributs sont désignés par attributs du contenu.
Annexe
Une liste complète des 41 attributs définis pour les enregistrements des différentes connexions
est présente dans les trois tableaux ci-dessous.
Nom d’attribut
Duration
Protocol_type
Service
Src_bytes
Dst_bytes
Flag
Land
Wrong_fragment
Urgent
Description
Length(number of secondes)of the connection
Type of the protocol, e.g. udp tcp etc
Network sevice on the destination, e.g http,telnet
Number of data bytes from source to destination
Number of data bytes from destination to source
Normzl or error statuts of the connection
1 if conection is from/to the same host/port, 0 otherwise
Number of “wrong” fragment
Number of urgent packets
Type
Continue
Discrete
Discrete
Continue
Continue
Discrete
Discrete
Continue
Continue
Tableau A.4. Attribut de base d’une connexion TCP
Nom d’attribut
hot
Num_failed_logins
Logged_in
Num_compromised
Root_shell
Su_attempted
Num_root
Num_file_creations
Num shells
Num_access_files
Num_outbound_cmds
Is_guest_login
Is_hot_login
Description
Number of «hot » indicators
Number of failed login attempts
1 if successfully logged_in; o otherwise
Number of “compromised” conditions
1 if root shell is obtained; o otherwise
1 if “su root” command attempted; 0 otherwise
Number of “root” accesses
Number of file creation operations
Number of shell prompts
Number of operation o access control files
Number of outbound commands in an ftp session
1 if the login is a “ guest” login; 0 otherwise
1 if the login belongs to the “hot” list 0 otherwise
Type
continue
Continue
Discrete
Continue
Discrete
Discrete
Continue
Continue
Continue
Continue
Continue
Discrete
Discrete
Tableau A.5. Attribut de contenu
Nom d’attribut
Count
Serror_rate
Rerror_rate
Same_srv_rate
Diff_srv_rate
Srv_coount
Srv_serror_rate
Srv_rerror_rate
Srv_diff_host_rate
Description
Number of connection to the same host as the current
connection in the past two seconds
% of connection that have “SYN” errors
% of connection that have “REJ” errors
% of connection to the same services
% of connection to different services
Number of connection to the same service as the current
connection in the past two seconds
% of connection that have “SYN” errors
% of connection that have “REJ” errors
% of connections to different hosts
Tableau A.6. Attribut de trafic
Type
Continue
Continue
Continue
Continue
Continue
Continue
Continue
Continue
Continue
Résumé
Face aux nouvelles technologies de l’information et de la communication, apparues avec
l’avènement des réseaux et d’internet, la sécurité informatique est devenue un défi majeur, et les
travaux dans cet axe de recherche sont de plus en plus nombreux.
Divers outils et mécanismes sont développés afin de garantir un niveau de sécurité à la
hauteur des exigences de la vie moderne. Parmi eux, les systèmes de détection d’intrusions destinés à
repérer des activités ou comportements anormaux suspects de nuire au bon fonctionnement du
système.
L’objet de ce mémoire est la conception et la réalisation d’un IDS (Intrusion detection
system) inspiré des systèmes immunitaires naturels. L’étude de systèmes biologiques afin de s’en
inspirer pour la résolution de problèmes informatiques est un axe de l’intelligence artificielle qui a
donné naissance à des méthodes robustes et efficaces (colonies de fourmis, algorithmes génétiques,
réseaux de neurones …etc.). De part leur fonction naturelle, les systèmes immunitaires ont suscité
l’intérêt des chercheurs dans le domaine de la détection d’intrusion, compte tenu des similitudes des
objectifs d’un SIN (système immunitaire naturel) et d’un IDS.
Dans le cadre de ce travail on propose un IDS basé sur le système immunitaire artificiel qui
s’inspire du système immunitaire naturel en utilisant la base de données KDD99. L’algorithme analyse
les connexions réseaux afin de les classer comme normale ou anormales. Les résultats expérimentaux
montrent que le système est performant avec un taux de
reconnaissance satisfaisant.
Mots clés : Système de détection d’intrusions, systèmes immunitaires naturels, systèmes
immunitaires artificiels, KDD99.
Abstract
In view of new communication and information technologies that appeared with the
emergence of networks and Internet, the computer security became a major challenge, and
works in this research axis are increasingly numerous.
Various tools and mechanisms are developed in order to guarantee a safety level up to the
requirements of modern life. Among them, intrusion detection systems (IDS) intended to locate
activities or abnormal behaviors suspect to be detrimental to the correct operation of the system.
The purpose of this work is the design and the realization of an IDS inspired from
natural immune systems. The study of biological systems to get inspired from them for the
resolution of computer science problems is an axis of the artificial intelligence field which gave
rise to robust and effective methods (ants colonies, genetic algorithms, neuron networks… etc)
Within the framework of this work one proposes IDS based on the artificial immune system
which takes as a starting point the natural immune system by using the base of data KDD99. The
algorithm analyzes connections networks in order to classify them like normal or abnormal. The
experimental results show that the system is powerful with a satisfying rate of recognition.
Key words: intrusions detection System, natural immune system, artificial immune systems,
KDD99.
Téléchargement