You are on page 1of 91

REPUPLIQUE ALGERIENNE DEMOCRATIQUE ET POPULAIRE

MINISTERE DE LENSEIGNEMENT SUPERIEUR ET DE LA RECHERCHE SCIENTIFIQUE


UNIVERSITE MOULOUD MAMMERI TIZI-OUZOU (UMMTO)
FACULTE DE GENIE ELECTRIQUE ET INFORMATIQUE
DEPARTEMENT DINFORMATIQUE



Mmoire
de fin dtudes de fin dtudes de fin dtudes de fin dtudes
En vue dobtention du diplme dingnieur dtat en informatique
Option : Systmes dinformation avancs
Thme




Propos et dirig par : Prsent et ralis par :
M
elle
Ghenima BOURKACHE M
elle
Sabrina HADDADI

Promotion 2009/2010
Implmentation dune mthode Implmentation dune mthode Implmentation dune mthode Implmentation dune mthode de classification de classification de classification de classification
inspire du inspire du inspire du inspire du fonctionn fonctionn fonctionn fonctionnement de la colonie de ement de la colonie de ement de la colonie de ement de la colonie de
fourmis fourmis fourmis fourmis pour la dtection dintrusions pour la dtection dintrusions pour la dtection dintrusions pour la dtection dintrusions
AntClass AntClass AntClass AntClass

R RR Remerciements emerciements emerciements emerciements

Je tiens tmoigner ma reconnaissance DIEU tout puisant,
qui ma aid et bnit par sa volont durant toute cette priode.
Ma profonde gratitude et sincre remerciements vont ma
promotrice M
elle
BOURKACHE Ghenima qui ma fait lhonneur de
diriger ce travail.
Mes remerciements vont galement aux membres de jury qui ont
accept de juger mon travail, et tous ceux qui ont contribu de prs
ou de loin la ralisation de ce modeste travail.
Ddicaces

Je ddie ce modeste travail :

La mmoire de ma trs chre mre.
Mon trs cher pre.
Mes chres surs Farida, Kahina, Samira,
Macissilia et Ins.
Mes chers frres Massinissa, Jugurtha,
Madjid, Mhamed et Yanis.
Mes nices et neveu Dyhia, Liza, Melissa,
Amira, Ouardia, Yasmine et Jugurtha.
Et tous mes amis (es).


SABRINA
SOMMAIRE

Introduction gnrale..01

Chapitre I : Gnralits sur la scurit informatique
Introduction.03
1.La scurit informatique.03
2.Objectifs de la scurit informatique...................................03
3.Prsentation de linscurit informatique..04
3.1.Les menaces.04
3.2.Vulnrabilit des systmes informatiques.05
3.3.Les risques.05
3.4.Les attaques.06
3.4.1.Dfinition06
3.4.2.Les phases dune attaques06
3.4.3.Les formes des attaques.08
4.Quelques mcanismes de dfense11
4.1.Authentification.11
4.2.Cryptographie.12
4.2.1.La Confidentialit.12
4.2.2.Intgrit et authenticit..12
4.3.Rseau priv virtuel.13
4.4.Antivirus..14
4.5.Firewall.14
4.6.Systmes de dtection et prvention dintrusion.15
Conclusion15

Chapitre II : les Systmes de dtection dintrusions
Introduction16
1.Dfinitions..16
1.1.Intrusion..16
1.2.Dtection dintrusions...........................................16
1.3.Systmes de dtection dintrusion17
2.Architecture classique dun systme de dtection dintrusions..17
3.Les caractristiques souhaites dun IDS.18
4.Classification des systmes de dtection dintrusions19
4.1.Comportement aprs dtection.19
4.2.Emplacement des sources daudits.20
4.2.1.NIDS (Network-Based IDS).20
4.2.2.HIDS (Host-Based IDS)..20
4.2.3.IDS hybrides.21
4.3.Frquence dutilisation.21
4.4.Principe de dtection.21
4.4.1.Approche comportementale21
4.4.2.Lapproche par scnario.23
5.Emplacement des systmes de dtection25
5.1.En amont.26
5.2.En aval..26
5.3.Dans la DMZ.26
5.4.Dans le LAN26
6.Imperfection dans les implmentations actuelles des IDS..27
7.Mthodes de classification et dintelligence artificielle.28
7.1.Rseaux baysiens28
7.2.Arbre de dcision.29
7.3.Rseaux de neurones.29
Conclusion30

Chapitre III : Prsentation de la mthode AntClass


Introduction31
1.Concept classification.31
1.1.Les types de classification..31
1.1.1.Classification supervise.31
1.1.2.Classification non supervise..31
2.Les fourmis et la classification.32
2.1.Ce que font les fourmis relles32
2.2.Les fourmis artificielles.33
3.Description de la mthode AntClass36
3.1.Notions et heuristiques de AntClass36
3.2.Hybridation avec les centres mobiles.41
3.2.1.Algorithme des centres mobiles...42
3.2.2.Structure final de lalgorithme AntClass..43
Conclusion45

Chapitre IV : Application de la mthode AntClass sur la base
de donnes KDD99
Introduction46
1.Description de la base KDD99.46
2.Application de la mthode AntClass sur la base KDD..49
2.1.Ltape de construction de profil normal(ltape dapprentissage).51
2.1.1.Filtrage des connexions normales ..51
2.1.2.Connexion.52
2.1.3.Gnration du profil normal.52
a.Grille..53
b.Les agents fourmis..53
c.Dplacement des fourmis..55
d.Ramassage de connexions.55
e.Dpt de connexions.55
f.Rpartition des connexions sur la grille.55
g.Algorithme Ants.56
g.1.Description des fonctions utilises par lalgorithme Ants57
g.2.Interprtation de lalgorithme Ants57
g.3.Traitement des connexions isoles58
h.Algorithme K-Means..58
2.2.Test de la mthode AntCLass60
3.Implmentation.60
3.1.Outils de dveloppement..61
3.2.Les paramtres utiliss par lalgorithme AntClass61
Conclusion62

Chapitre V : Tests et rsultats


Introduction.63
1.Tests63
2.Prsentation des rsultats..63
Conclusion67
Conclusion gnrale.68
Table des illustrations..70
Bibliographie.71
Annexe A : Classification
1.Introduction..73
2.Diffrentes classification possibles..73
2.1.Classification non exclusive73
2.2.Classification exclusive....73
2.2.1.Classification supervise.73
2.2.2.Classification non supervise..74
3.Distance75












Introduction Gnrale

1

Introduction Gnrale

Les rseaux informatiques sont devenus des ressources essentielles pour le bon
fonctionnement des entreprises. De plus, ces rseaux sont ouverts de fait quils sont pour la
plus part raccords lInternet.
Cette merveilleuse ouverture qui permet de faciliter la communication, engendre
malheureusement des risques importants dans le domaine de la scurit informatique. Les
utilisateurs de lInternet ne sont pas forcements pleins de bonnes intentions, ils peuvent
exploiter les vulnrabilits des rseaux et systmes pour raliser leurs attaques. Les
consquences de ces attaques peuvent tre lourdes pour un particulier (pertes dinformations,
ou pire encore vol dinformations, atteinte la vie prive..) et pour une entreprise (perte du
savoir faire, atteinte limage de marque, perte financire..). Pour cela, les administrateurs
dploient des solutions de scurit efficace capable de protger le rseau de lentreprise. Dans
ce contexte, les systmes de dtection dintrusions (IDS) constituent une bonne alternative
pour mieux protger le rseau informatique.
Les IDS connaissent de nos jours un essor important et constituent un investissement des
entreprises. Ils sont dploys dans des zones prcises du rseau ou sur des machines
particulires pour complter le travail des pare-feu, Un pare-feu agit comme une premire
barrire externe pour repousser les pirates informatiques, tandis quun systme de dtection
dintrusions vise reprer ceux qui auraient transperc ce premier primtre de dfense.
Diverses mthodes de dtection dintrusions ont t proposes, elles sont bases
principalement sur deux approches : lapproche par scnarios et lapproche comportementale.
La premire sappuie sur la connaissance des techniques employes par les attaquants : on en
tire des scnarios dattaques et on recherche dans les traces daudit leurs ventuelles
survenues. La seconde se base sur lhypothse que lon peut dfinir un comportement normal
de lutilisateur et que toute dviation par rapport celui-ci est potentiellement suspecte.
Les systmes de dtection dintrusions contiennent plusieurs lacunes vu lvolution des
techniques utilises par les attaquants, afin de remdier ces lacunes, la dtection
dintrusions doit sorienter vers de nouvelles mthodes de dtection, pour mieux assurer la
scurit de rseaux.

2

Nous proposons dans ce mmoire, une implmentation dune mthode de dtection
dintrusions, qui consiste utiliser un algorithme bas sur les fourmis artificielles
AntClass .
Notre rapport est organis en cinq chapitres : le premier chapitre prsente des gnralits
sur la scurit informatique, le deuxime est consacr sur les systmes de dtection
dintrusions. Le chapitre III est rserv pour la prsentation de la mthode AntClass,
lapplication de cette mthode sur la base KDD99 fait lobjet du chapitre IV. Pour terminer,
les tests et rsultats de la mthode seront prsents dans le chapitre V.









Chapitre I :
Gnralits sur la scurit
informatique

Chapitre I : Gnralits sur la scurit informatique

3

Introduction :
Ces dernires annes, la scurit des systmes informatiques connects internet est
devenue un problme trs proccupant.
Avec le dveloppement de lutilisation dinternet, de plus en plus les entreprises ouvrent
leurs systmes dinformation leurs partenaires ou leurs fournisseurs, il est donc essentiel
danalyser les risques quencourent ces entreprises, de connaitre les ressources quelles
doivent protger et de maitriser le contrle daccs et les droits des utilisateurs de leurs
systmes dinformations.
Dans ce qui suit, nous parlerons de la scurit en gnrale puis des diffrentes menaces
qui psent sur les systmes informatiques et en fin nous parlerons aussi sur quelques
mcanismes de dfense.
1. La scurit informatique : [1]
La scurit informatique est lensemble des moyens mis en uvre afin dassurer dune
manire satisfaisante que lensemble des donnes et des ressources matrielles et logicielles
dune entreprise ne soient utilises que dans le cadre prvu et minimiser le nombre de
vulnrabilits dun systme contre les menaces accidentelles ou intentionnelles.
2. Objectifs de la scurit informatique : La scurit informatique vise gnralement cinq
principaux objectifs (critres) :
Confidentialit
Intgrit
Disponibilit
Authentification
Non-rpudiation

Confidentialit : [2]
La confidentialit consiste assurer que seules les personnes autorises manipuler les
ressources dune entreprise aient accs, donc les rendre inintelligibles et inaccessible par
dautres personnes qui ne possdent pas ce privilge.

Chapitre I : Gnralits sur la scurit informatique

4

Intgrit : [2]
Lintgrit consiste assurer la conformit de linformation, elle permet aux utilisateurs
davoir la certitude que linformation est correcte et quelle na pas t modifie par un
individu non autoris.

Disponibilit : [1] [3]
Le service de disponibilit veille ce que linformation puisse tre utilisable. La
disponibilit permet aux utilisateurs davoir accs aux systmes, aux informations et aux
applications qui traitent ces informations. La disponibilit couvre aussi les systmes de
communication qui transmettent les informations entre sites ou entre systmes.

Authentification : [3]
La premire tape afin de protger les ressources dun systme informatique est de
pouvoir vrifier lidentit des utilisateurs, cette vrification sappelle lauthentification.
Lauthentification permet de vrifier lidentit annonce et de sassurer de la non-
usurpation de lidentit dune entit. Cest--dire quelle permet de garantir chacun des
correspondants que son partenaire est bien celui quil croit tre. Un contrle daccs peut
permettre laccs des ressources uniquement aux personnes autorises.

Non-rpudiation : [2]
La non-rpudiation est le fait de ne pouvoir nier ou rejeter quun vnement (action,
transaction) a eu lieu.

3. Prsentation de linscurit informatique :
3.1. Les menaces : [1]
Une menace est un vnement ou action susceptible de violer la scurit dun systme
informatique.
Les principales menaces effectives auxquelles un systme dinformation peut tre
confront sont :

Un utilisateur du systme : lnorme majorit des problmes lies la scurit dun
systme dinformation est lutilisateur, gnralement insouciant.
Chapitre I : Gnralits sur la scurit informatique

5

Une personne malveillante (interne ou externe) : une personne vient
sintroduire dans le systme, lgitimement ou non, et accde ensuite des donnes
ou des programmes auxquels elle nest pas sense avoir accs.
Un programme malveillant : cest un logiciel destin nuire ou abuser des
ressources du systme. Il est install sur le systme, ouvrant la porte des intrusions
ou modifiant les donnes ; des donnes personnelles peuvent tre collectes linsu
de lutilisateur et tre rutilises des fins malveillantes ou commerciales.
Un sinistre (vol, incendie, dgt des eaux) : une mauvaise manipulation ou une
malveillance entranant une perte de matriel et/ou de donnes.
3.2. Vulnrabilit des systmes informatiques : [1]
La vulnrabilit dun systme, appele parfois faille de scurit ou brche dun systme
est un bug particulier dont lexploitation permet deffectuer des actions qui ne sont pas
possibles dans le cadre dune utilisation normale dun logiciel. Ces failles sont dues aux
faiblesses dans la conception ou la mauvaise configuration du systme dexploitation, des
protocoles rseaux ou des applications utilisateurs. Les failles les plus redoutables sont
celles permettant lexcution de code distance, c.--d. permettant un individu malveillant
dexcuter un programme malicieux sur lordinateur de sa victime via internet, mme si
celle-ci se trouve lautre bout de la plante.
Pour remdier une faille de scurit il faut corriger le code dfectueux en appliquant un
correctif ou en installant une nouvelle version du logiciel.
3. 3. Les risques : [1]
Le risque est la probabilit quune menace particulire puisse exploiter une vulnrabilit
donne du systme. Traiter le risque cest prendre en compte les menaces et les vulnrabilits.
Il est important de mesurer les risques, non seulement en fonction de la probabilit ou de
la frquence de leurs survenances, mais aussi en mesurant leurs effets possibles. Ces effets,
selon les circonstances et le moment o ils se manifestent, peuvent avoir des consquences
ngligeables ou catastrophiques.


Chapitre I : Gnralits sur la scurit informatique

6

3.4. Les attaques :
3.4.1. Dfinition : [1]
Tout ordinateur connect un rseau informatique est potentiellement expos une
attaque.
Une attaque est lexploitation dune faille dun systme informatique (systme
dexploitation, logiciel ou bien mme de lutilisateur) des fins gnralement prjudiciables.
Les motivations des attaques peuvent tre de diffrentes sortes :
Obtenir un accs au systme.
Voler des informations, tels que des secrets industriels ou des proprits
intellectuelles.
Recueillir des informations personnelles sur un utilisateur.
Rcuprer des donnes bancaires.
Sinformer sur lorganisation (entreprise de lutilisateur),
Troubler le bon fonctionnement dun service.
Utiliser les ressources du systme de lutilisateur, notamment lorsque le rseau sur
lequel il est situ possde une bande passante leve.
3.4.2. Les phases dune attaque : [2]
Quelque soit lattaque, le processus quelle excute passe par un certain nombre dtapes.
Chaque tape utilise des fonctions spcifiques pour lancer une ou plusieurs sous tches pour
fournir les lments ncessaires laccomplissement de ltape suivante.
a. La phase de reconnaissance :
La phase de reconnaissance implique le rassemblement dun maximum dinformations sur
une cible potentielle (un systme, une machine), linsu de cette cible. Ce processus est
appel collecte dinformations.
A lissue de cette phase, sont rassembles toutes les informations disponibles sur une
organisation pour utilisation ultrieure lors dune attaque. Parmi les mthodes utilises dans
cette phase on cite:
Chapitre I : Gnralits sur la scurit informatique

7

- lanalyse du trafic rseau (network sniffing) qui permet la collecte dinformations
utiles telle que les adresses IP, les numros des ports, les noms des machines et autres
services disponibles dans un rseau ou un systme.
- Le Social Engineering est aussi une mthode redoutable de collecte dinformations.
La reconnaissance permet donc de dcouvrir des informations utiles (collecte
dinformations) pour conduire une attaque ultrieure. Par exemple, collecter le type du
serveur web et du systme dexploitation, afin dexploiter dventuelles vulnrabilits et avoir
des accs.
b. Phase de scan :
Cest lutilisation des informations collectes lors de la phase de reconnaissance, pour
examiner le rseau. Les outils pouvant tre utiliss par les hackers peuvent inclure : scanners
de ports, scanners de vulnrabilits
A ce stade, les hackers sont entrain de chercher toute information susceptible de les aider
commettre une attaque.
c. Phase daccs :
Cest la phase o les vrais hackers prennent place. Les vulnrabilits dcouvertes durant les
phases de reconnaissance et de scan sont maintenant exploites pour avoir un accs.
d. Phase de maintien de laccs :
Une fois le hacker arrive pntrer dans un systme, il va vouloir maintenir cette
possibilit daccs pour de futures attaques. Dans certains cas, les hackers renforcent le
systme contre dautres attaquants ou contre le personnel de scurit par la scurisation
exclusive de leurs accs avec les backdoors et les trojans. Une fois le systme est appropri
par le hacker, il peut tre utilis pour lancer des attaques additionnelles.
e. Phase deffacement de traces :
Une fois lattaque est termine, le hacker efface ses traces, supprime toute vidence du
hacking et donc vite dtre dcouvert par le personnel de scurit, ce qui lui permettra de
continuer utiliser le systme ultrieurement.
Chapitre I : Gnralits sur la scurit informatique

8

Les hackers tentent de supprimer toutes les traces comme les fichiers log et les alarmes
gnres par les systmes de dtection dintrusions.
3.4.3. Les formes dattaques : [5] [6]
Il existe plusieurs, parmi elles on cite :
Les attaques virales :
Les attaques virales permettent de consommer et paralyser les ressources du systme.
Voici quelques exemples dattaque virale :
a. Virus :
Un virus est un petit programme qui infecte dautres programmes. Il insre son code
dans celui de lapplication cible afin de pouvoir prendre les commandes au moment de
lexcution des fichiers infects. Cette dfinition simple permet didentifier lune des
principales actions excutes par les virus, savoir linfection.
Les virus ont des formes trs diffrentes, et des consquences aussi diverses. Ils
utilisent diffrentes voies pour infecter les systmes comme les disquettes, les cls USB,
le tlchargement de programmes via internet, les emails,etc.

b. Les vers (Worms) :
Un ver, parfois appel virus de mail peut sauto-reproduire et se dplacer travers un
rseau en utilisant les mcanismes rseau, en se servant par exemple des programmes de
messagerie pour se rpandre grandes vitesse, en senvoyant automatiquement tout ou
partie des personnes prsents dans le carnet dadresses. Leur premier effet est de saturer
les serveurs de messagerie, mais ils peuvent galement avoir des actions destructrices
pour les ordinateurs contamins.
c. Le cheval de Troie : [7]
Un cheval de Troie est dfini comme tant un petit programme cach dans un autre qui
excute des commandes sournoises. Un peu comme le virus, le cheval de trois est un code
(programme) nuisible plac dans un programme sain. Il excute des instructions nuisibles
lorsque vous excutez le programme sain. Il peut par exemple voler des mots de passe,
copier des donnes, ou excuter toute autre action nuisible.


Chapitre I : Gnralits sur la scurit informatique

9

Les attaques applicatives :
Les attaques applicatives se basent sur des failles dans les applications utilises, ou encore
des erreurs de configuration. Voici quelques unes des attaques les plus connues :

a. Les problmes de configuration :
Il est trs rare que les administrateurs rseaux configurent correctement un programme.
En gnral, ils se contentent dutiliser les configurations par dfaut. Celles-ci sont souvent
non scurises afin de faciliter lexploitation du logiciel.
De plus, des erreurs peuvent apparatre lors de la configuration dun logiciel. Une
mauvaise configuration dun serveur peut entraner laccs des fichiers importants. Cest
pourquoi il est important de bien lire la documentation fournie par les dveloppeurs afin
de ne pas crer des failles.

b. Les bugs :
Ils sont lis un problme dans le code source, ils peuvent amener lexploitation de
failles. Il nest pas rare de voir lexploitation dune machine suite une simple erreur de
programmation. On ne peut toutefois rien faire contre ce type de problmes, si ce nest
attendre un correctif de la part du dveloppeur.

c. Les buffers overflows :
Le buffer overflow consiste mettre plus dinformations (et surtout dautres
informations) en mmoire que celle-ci nest dispose en recevoir.
Il entrane gnralement deux types de consquences :
- Lcrasement des donnes en mmoire peut provoquer une erreur de segmentation
mmoire qui entrane un plantage de la machine.
- Excution dun code arbitraire sur la machine (quon appelle parfois un shellcode)
de manire la compromettre. Ceci est possible en modifiant les valeurs des
pointeurs de la pile de manire ce que ladresse de retour ne pointe plus vers le
programme dorigine mais vers un code malicieux.
d. Les scripts :
Une mauvaise programmation des scripts a souvent une rpercussion sur la scurit
d'un systme. En effet, il existe des moyens d'exploiter des failles de scripts dvelopps
Chapitre I : Gnralits sur la scurit informatique

10

en Perl ou PHP qui permettront de lire des fichiers hors racine Web ou d'excuter des
commandes non autorises.
e. Les injections SQL :
Tout comme les attaques de scripts, les injections SQL profitent de paramtres dentre
non vrifis. Comme leur nom lindique, le but des injections SQL est dinjecter du code
SQL dans une requte de base de donnes. Ainsi, il est possible de rcuprer des
informations se trouvant dans la base (exemple : des mots de passe) ou encore de dtruire
des donnes.
Les attaques rseaux :
Ce sont des attaques lies des failles dans des protocoles rseaux ou des failles dans
leurs implmentation, voici quelques attaques, les plus connues :

a. Scan de ports : [10]
Avant de lancer une attaque sur un rseau TCP/IP, lattaquant a besoin didentifier les
systmes qui sont connects au rseau de sa cible et connaitre les adresses actives,
comment la topologie du rseau est construite et quels services sont disponibles.
Un scanner de port permet didentifier les ports ouverts dans un rseau en utilisant un
scanner de port, lattaquant va envoyer des paquets tous les ports du systme cible et
voir ceux qui rpondent et donc savoir lesquels sont ouverts et quels services sont en
cours dexcution.

b. Network Exploits : Sniffing, Spoofing et Session Hijacking :[10]
Les attaques qui demeurent les plus dangereuses, les plus utilises et qui exploitent
les vulnrabilits dtectes par les scanners appropris sont : le sniffing, le spoofing IP, et
session hijacking.
- Sniffing (le reniflement des paquets) :
Le sniffing est une technique permettant dcouter le trafic rseau, cest--dire
de capturer les informations qui y circulent, elle est trs utilise par les pirates
informatiques.
- Spoofing :(ou IP-Spoofing)
Le spoofing consiste en une usurpation par un utilisateur du rseau, dune
adresse IP afin de se faire passer pour la machine laquelle cette adresse
Chapitre I : Gnralits sur la scurit informatique

11

correspond normalement. La technique de lusurpation dadresse IP consiste
remplacer ladresse IP de lexpditeur dun paquet IP par ladresse IP dune autre
machine.
- Session Hijacking :(ou vol de session)
Un vol de session survient quand un attaquant arrive prendre le contrle dune
session tablie entre un client et un serveur aprs que le client sauthentifie au
serveur.

4. Mcanismes de dfense :
Evidemment, nous ne pouvons pas compter sur un seul moyen de scurit pour protger
linformation dune entreprise. De mme, nous ne pouvons pas compter sur un seul
mcanisme pour quil fournisse toutes les scurits ncessaires aux ordinateurs.
Dans ce qui suit, nous verrons les mcanismes de dfense les plus utiliss :

4.1. Authentification : [7]
La premire tape afin de protger les ressources dun rseau est de pouvoir vrifier
lidentit des utilisateurs. Cette vrification sappelle authentification.
Lauthentification est la procdure mise en uvre notamment pour vrifier lidentit dune
entit et sassurer que cette dernire fournie, correspond lidentit de cette entit
pralablement enregistre.
On authentifie un utilisateur en lui demandant de fournir quelque chose que seule cette
personne a, par exemple un jeton, une information quelle seule connait (un mot de passe).
Plus lutilisateur doit fournir des renseignements de ce type, plus faibles sont les risques
quune personne parvienne se faire passer pour utilisateur lgitime.
Parmi les mcanismes dauthentification, on cite :
Authentification par un code didentification et un mot de passe.
Sommation/rponse.
Carte mmoire.
Biomtrie.




Chapitre I : Gnralits sur la scurit informatique

12

4.2. Cryptographie : [5] [11]
La cryptographie dsigne lensemble des mthodes ou techniques (chiffrement, signature
numrique et certificat) permettant de garantir lintgrit, authenticit, confidentialit des
informations sensibles.
La cryptographie permet dassurer :

4.2.1. La confidentialit :
La confidentialit est le premier problme pos la cryptographie, il se rsout par la notion
de chiffrement.

Chiffrement : [7]
Pour crypter un message ou un texte quon appellera texte en clair, on lui applique
une srie doprations simples telles que la substitution et la permutation suivant des
rgles bien dfinies qui ne sont connues que par lmetteur et le rcepteur du message,
dans le but de le rendre inintelligible pour les tiers non autoriss (cryptogramme ou
texte chiffr) et on appelle ce procd chiffrement. Inversement, le dchiffrement
est laction qui permet de reconstruire le texte en clair partir du texte chiffr. Dans le
monde de linformatique moderne, les transformations en question sont des
algorithmes.

4.2.2. Intgrit et authenticit : [1]
Souvent on utilise le terme authentification afin de designer lauthenticit, mais notez
bien que lauthentification et lintgrit sont insparables. Lorsquun change dinformations
se prsente travers un canal de communication peu sr, le destinataire aimerait bien
sassurer que le message smane de lauteur auquel il est attribu et quil na pas t altr
pendant son voyage travers ce dernier.

Authentification : Consiste sassurer que les donnes smanent bien de lexpditeur
et non pas dun autre utilisateur ou autre personne qui se prend pour lexpditeur mme.
Intgrit : Consiste sassurer que les donnes nont pas t modifies durant leur
transfert.

Pour rpondre ces deux critres, les signatures et les certificats numriques sont apparus.

Chapitre I : Gnralits sur la scurit informatique

13

a. Signature numrique : [1] [12]
Les signatures numriques permettent la personne qui reoit une information de
contrler lauthenticit de son origine, et galement de vrifier que linformation en
question est intacte.
Le principe de la signature numrique consiste appliquer une fonction
mathmatique sur une portion du message. Cette fonction mathmatique sappelle
fonction de hachage et le rsultat de cette fonction est appel code de hachage. Ce code
fait usage dempreinte digitale du message. Il faut noter que la fonction est choisie de
telle manire quil soit impossible de changer le contenu du message sans altrer le code
de hachage.

b. Certificat numrique : [7]
Dans un environnement de cl publique
1
, il est essentiel de sassurer que la cl
publique avec laquelle on chiffre les donnes est celle du destinataire concern et non une
contrefaon.
Un certificat numrique est une information attache une cl publique, et qui permet
de vrifier que cette cl est authentique, ou valide. Les certificats numriques sont utiliss
pour contrecarrer les tentatives de substituer une cl falsifie la cl vritable.
Un certificat numrique comporte trois lments :
- Une cl publique.
- Une information de certification (lidentit de lutilisateur, comme son nom,
son adresse e-mail, etc.)
- Une ou plusieurs signatures numriques.

4.3. Rseau priv virtuel (VPN) : [12]
Les rseaux privs virtuels (VPN : Virtual Private Network) permettent lutilisateur de
crer un chemin virtuel scuris entre une source et une destination. Avec le dveloppement
dInternet, il est intressant de permettre ce processus de transfert de donnes scuris et
fiable. Grce un principe de tunnel (tunnelling) dont chaque extrmit est identifie, les
donnes transitent aprs avoir t chiffres.


1
Cl : Ensembles des donnes dentre de lalgorithme qui transforme le texte clair en texte chiffr et
inversement.
Cl publique : cest lune des cls utilise dans le processus de chiffrement/ dchiffrement.
Chapitre I : Gnralits sur la scurit informatique

14

Le principe du VPN est bas sur la technique du tunnelling. Cela consiste construire un
chemin virtuel aprs avoir identifi lmetteur et le destinataire. Ensuite la source chiffre les
donnes et les achemine en empruntant ce chemin virtuel.

4.4. Antivirus : [16]
Les antivirus sont des programmes contenant une base de donnes de tous les codes
malicieux connus (base antivirale), qui permettent donc dtecter, de supprimer et
ventuellement de rparer les fichiers infects par les virus.
La dsinfection se fait per mthodes suivantes :
La suppression du code correspondant au virus dans le fichier infect ;
La suppression du fichier infect ;
La mise en quarantaine du fichier infect, consistant le dplacer dans un
emplacement ou il ne pourra pas tre excut ;
4.5. Firewall (Pare-feu) : [7][13]
Afin dviter que des attaques puissent parvenir jusquau rseau dune entreprise, il
convient disoler le rseau interne (priv) de lentreprise du rseau externe (internet). La
mthode la plus connue est le firewall et le serveur proxy.
Le pare-feu est un systme aux fonctions de filtrage volues. Chaque paquet reu est
examin, une dcision de rejet ou dacceptation est prise en fonction de nombreux critres :
- Adresse source.
- Adresse destination.
- Port source.
- Port destination.
- Le protocole transport (ICMP, UPD).
- La valeur de certains flags (ACK, SYN).

Le firewall, plac lentre du rseau, constitue ainsi un unique point daccs par o
chacun est oblig de passer

Chapitre I : Gnralits sur la scurit informatique

15

Le serveur proxy, lui permet de faire le relais au niveau des applications pour rendre les
machines internes invisibles lextrieur. Si personne lextrieur ne peut voir les machines
internes, lattaque est beaucoup plus difficile, car lattaquant est aveugle ! Noubliez quand
mme pas que 80% des attaques proviennent de lintrieur du rseau et non de lextrieur

4.6. Systmes de dtection et de prvention dintrusions : [1]
Un systme de dtection dintrusions est un mcanisme de scurit complmentaire au
pare-feu et permet de reprer des activits anormales ou suspectes sur la cible analyse sans
pour autant les bloquer, linverse dun systme de prvention dintrusion qui a la capacit de
bloquer ou de supprimer les paquets suspects. Ce mcanisme de dfense sera trait en dtail
dans le chapitre suivant.

Conclusion :
Le prsent chapitre a t entirement ddi ltude des diffrents types de menaces, et
des techniques utilises par les pirates pour violer la scurit des rseaux ainsi que les
diffrentes techniques et mcanismes de dfense pour parer bien aux attaques des pirates. La
scurisation des systmes informatiques dune entreprise est devenue une ncessit pour son
panouissement et dveloppement quil faut prendre en considration en lui rservant une
partie de son budget dentreprise afin de lamliorer.












Chapitre II :
Les systmes de dtection
dintrusions
Chapitre II : Les systmes de dtection dintrusions

16

Introduction :
Les systmes informatiques sont aujourdhui de plus en plus ouverts sur Internet. Il en
dcoule un nombre croissant dattaques. Une politique de scurit autour de ces systmes
est donc primordiale. Outre la mise en place dun pare-feu, de systmes dauthentification,
il est ncessaire pour complter cette politique, davoir des outils de surveillance pour
auditer le systme dinformation et dtecter dventuelles intrusions.
Au cours de ce chapitre nous verrons comment se protger efficacement face aux
intrusions, en prsentant les systmes de dtection dintrusions.

1. Dfinitions :
1.1. Intrusion : [18]
Une intrusion est toute utilisation dun systme informatique des fins autres que celles
prvues, gnralement dues lacquisition des privilges de faon illgitime.
Une intrusion est dfinie aussi comme un ensemble dactions qui essaye de
compromettre :
- La confidentialit.
- Lintgrit.
- La disponibilit dune ressource ou dun service.
En dpit des diffrentes formes dintrusions, elles peuvent tre regroupes dans deux
classes : [19]
Les intrusions connues : Ces intrusions sont des attaques bien dfinies qui
gnralement exploitent des failles connues du systme cible.
Les intrusions inconnues ou anomalies : Ces intrusions sont considres comme
des dviations du profil normal dun systme. Elles sont dtectes ds quun
comportement anormal du systme est observ.

1.2. Dtection dintrusions : [3]
La dtection dintrusion est un autre procd utilisable par le personnel de scurit pour
protger lentreprise contre les attaques. Elle est dfinie comme tant un ensemble de
techniques et de mthodes qui sont employes pour dtecter lactivit souponneuse sur un
systme ou un rseau.
Chapitre II : Les systmes de dtection dintrusions

17


1.3. Systme de dtection dintrusions (Intrusion Detection System IDS ) : [1]
Un systme de dtection dintrusions est un ensemble de composants logiciels et
matriels dont la fonction principale est danalyser et de dtecter toute tentative
deffraction ou activit suspecte comme : la dtection des techniques de sondage comme le
balayage des ports, des tentatives de compromission des systmes, des activits suspectes
internes, des activits virales
2. Architecture classique dun systme de dtection dintrusions :
Les systmes de dtection dintrusions ont un modle commun, compos de trois
modules comme le montre la figure suivante:











Figure 1: Architecture classique dun IDS (Intrusion Detection System)
Le capteur : Le capteur observe lactivit du systme par le biais dune source de
donnes et fournit lanalyseur une squence dvnements qui renseignent
lvolution de ltat du systme. Le capteur peut se contenter de transmettre
directement ces donnes brutes, mais en gnral un prtraitement est effectu. De
plus, le capteur ralise gnralement une mise en forme des donnes brutes
acquises, afin de prsenter lanalyseur des donnes utilisant un certain format
dvnements.
Chapitre II : Les systmes de dtection dintrusions

18

Lanalyseur : Lobjectif de lanalyseur est de dterminer si le flux dvnements
fourni par le capteur contient des lments caractristiques dune activit
malveillante. Deux grandes approches ont t proposes : lapproche
comportementale et lapproche par scnarios et qui seront dtailles par la suite.
Le manager : il est responsable de la mise en place de procdure de raction
lintrusion comme le blocage du flux de donnes suspect, de certains ports, etc.

3. Les caractristiques souhaites dun IDS : [15]
Les caractristiques suivantes sont souhaitables dans un IDS :
- Il doit fonctionner de manire continue avec une prsence humaine minimum.
- Il doit tre tolrant aux fautes c'est--dire qu'il doit tre capable de retrouver son
tat initial de fonctionnement aprs un crash caus soit par une manipulation
accidentelle soit par des activits manant de personnes malintentionnes.
- Il doit rsister la subversion. LIDS doit tre capable de se contrler lui-mme et
de dtecter s'il a t modifi par un attaquant.
- Il doit imposer une supervision minimale du systme sur lequel il tourne afin de ne
pas interfrer avec ses oprations normales.
- Il doit tre configurable d'aprs les politiques de scurit du systme qu'il supervise.
- Il doit galement tre capable de s'adapter aux changements du systme et des
comportements des utilisateurs au cours du temps.
Lorsque le nombre de systmes superviser augmente et donc les attaques
potentielles augmentent galement, nous pouvons alors attendre de l'IDS les
caractristiques suivantes :
- Il doit tre capable de superviser un nombre important de stations tout en
fournissant des rsultats de manire rapide et prcise.
- Il doit fournir "un service minimum de crise" c'est--dire que si certains composants
de l'IDS cessent de fonctionner, les autres composants doivent tre affects le
moins possible par cet tat de dgradation.
- Il doit autoriser des reconfigurations dynamiques. Si un grand nombre de stations
est supervis, il devient pratiquement impossible de redmarrer l'IDS sur tous les
htes lorsqu'on doit effectuer un changement.
Chapitre II : Les systmes de dtection dintrusions

19

4. Classification des systmes de dtection dintrusions : [15] [16] [18]
Nous prsentons une classification selon diffrent critres (cits ci-dessous) qui ne sont
pas forcement mutuellement exclusif :
Le principe de dtection utilis.
Le comportement aprs dtection.
La source des donnes analyser.
La frquence de lanalyse.



















Figure 2: Classification des systmes de dtection dintrusions

4.1. Comportement aprs dtection :
Une faon de classer les systmes de dtection dintrusions consiste les classer par
type de raction lorsquune attaque est dtecte :



Principe de
dtection
Comportement
aprs dtection
Frquence
dutilisation
Emplacement des
Sources daudits
Approche comportementale
Approche par scnarios
Passif
Actif
Hte
Rseau
Surveillance continue
Analyse priodique
Systmes de
dtection
dintrusions
Chapitre II : Les systmes de dtection dintrusions

20


Passif : la plupart des systmes de dtection dintrusions napportent quune
rponse passive lintrusion. Lorsquune attaque est dtecte, ils gnrent une
alarme et notifient ladministrateur systme par e-mail, message dans une console,
voir par beeper. Cest alors lui qui devra prendre les mesures qui simposent.
Actif : dautres systmes peuvent, en plus de la notification loprateur, prendre
automatiquement des mesures pour stopper lattaque en cours. Par exemple, ils
peuvent couper les connexions suspectes ou mme, pour une attaque externe,
reconfigurer le firewall pour stopper lattaque en cours. Des outils tels que
RealSecure ou NetProwler propose ce type de relation.

4.2. Emplacement des sources daudits :
La manire la plus connue pour classifier les IDS est de les grouper par sources
d'informations (sondes). Certains IDS analysent des paquets capturs partir du rseau, en
plaant des sniffers sur les diffrents segments du rseau local. Dautres IDS analysent des
informations produites par le systme d'exploitation ou par des applications pour la
recherche des signes d'intrusions.

4.2.1. NIDS (Network-Based IDS) :
Les NIDS sinstallent sur un rseau. Ils ont pour rle la surveillance du trafic du
rseau, en le comparant une base de signatures. Ils sont gnralement appels IDS on-line
puisquils analysent le trafic rseau en temps rel.
Les NIDS sont confronts deux grands problmes :
- Les rseaux sont de plus en plus commuts.
- Les transmissions cryptes rendent lanalyse des paquets presque impossible.

4.2.2. HIDS (Host-Based IDS) :
Les IDS de ce type analysent le fonctionnement et l'tat des machines sur lesquelles
ils sont installs afin de dtecter les attaques. Pour cela ils ont pour mission l'analyse des
journaux systme (logs), le contrle d'accs aux appels systmes, la vrification d'intgrit
des systmes de fichiers, etc.



Chapitre II : Les systmes de dtection dintrusions

21

4.2.3. IDS hybrides :
Les IDS hybrides rassemblent les caractristiques de plusieurs IDS diffrents. En
pratique, on ne retrouve que la combinaison de NIDS et HIDS. Ils permettent, en un seul
outil, de surveiller le rseau et lhte. Les sondes sont places dans des points stratgiques,
et agissent comme NIDS et/ou HIDS suivant leurs emplacements.

4.3. Frquence dutilisation :
Une autre caractristique des systmes de dtection dintrusions est leur frquence
dutilisation :

Priodique : certains systmes de dtection dintrusions analysent priodiquement
les fichiers daudit la recherche dune ventuelle intrusion ou anomalie passe.
Cela peut tre suffisant dans des contextes peu sensibles (on fera une analyse
journalire par exemple).
Continue : la plupart des systmes de dtection dintrusions effectuent leur analyse
des fichiers daudit ou des paquets rseau de manire continue afin de proposer une
dtection en quasi temps rel. Cela est ncessaire dans des contextes sensibles
(confidentialit) et / ou commerciaux (confidentialit, disponibilit). Cest toutefois
coteux en temps de calcul car il faut analyser la vole tout ce qui se passe sur le
systme.

4.4. Principe de dtection :
Une autre faon de classer les systmes de dtection dintrusions consiste les classer
par lapproche utilise dans le processus de dtection.
La dtection dintrusion repose sur deux approches de base :
- Lapproche comportementale.
- Lapproche par scnario.

4.4.1. Approche comportementale (dtection danomalies) : [7]
La dtection d'anomalies consiste dfinir, dans une premire phase, un certain
comportement du systme, des utilisateurs, des applications, etc. considr comme
normal ; dans une seconde phase, on observe l'entit ainsi modlise et tout cart par
rapport au comportement de rfrence est signal comme tant suspect.
Chapitre II : Les systmes de dtection dintrusions

22

Cette approche recouvre en fait deux problmes distincts : la dfinition du
comportement normal (souvent appel profil) dune part, et la spcification des critres
permettant dvaluer le comportement observ par rapport ce profil dautres part.
Les diffrentes approches de dtection danomalies se distinguent essentiellement par le
choix des entits modlises dans le profil et linterprtation qui est faite des divergences
par rapport ce profil.
On va prsenter ici quelques cas typiques de dtection utilisant cette approche :

a. Mthodes statiques (D.E. Denning 1987) :
L'approche la plus frquemment utilise pour la gnration d'un modle de
comportement normal d'un utilisateur ou d'un systme est une approche statistique. Elle
consiste utiliser des mesures statistiques pour modliser un profil de comportement et
dtecter des comportements intrusifs. Ces mesures peuvent tre par exemple :
- le temps CPU utilis,
- le nombre de connexions durant une certaine priode de temps,
- les fichiers les plus frquemment utiliss,
- les entres/sorties utilises,
- etc.
Chacune de ces valeurs est associe un seuil ou un intervalle de valeurs, dans lequel
une activit est considre comme normale. Tout dpassement de seuil ou situation de
valeurs l'extrieur des bornes de l'intervalle indique une activit anormale.

b. Systmes experts :
Pour reprsenter lusage normal du systme par un utilisateur, il est possible dutiliser
un ensemble de rgles au lieu dun modle statistique. Pour cela on a besoin des
connaissances dun expert pour construire un systme qui va tre utilis comme outil de
dtection dintrusions.
Les rgles dun tel systme expert peuvent tre, soit introduites manuellement, soit
gnres automatiquement partir des enregistrements daudits.

c. Mthodes probabilistes :
Cette mthode consiste tablir des probabilits permettant de reprsenter une
utilisation courante dune application ou dun protocole. Toute activit ne respectant pas le
modle probabiliste provoquera la gnration dune alerte.
Chapitre II : Les systmes de dtection dintrusions

23


Avantages et inconvnients de lapproche comportementale :
Avantages : La dtection danomalies permet de :
- dtecter un comportement non usuel et ainsi offrent la possibilit de
trouver des symptmes dune attaque sans en connaitre les dtails.
- Permet de produire de linformation qui peut tre utilise pour dfinir des
signatures utilisables pour les systmes signatures.

Inconvnients :
- Produit une quantit norme de fausses alertes cause du caractre
imprvisible des utilisateurs et des rseaux (ruptures).
- Demande une intense phase dapprentissage pour caractriser la
normalit des comportements.
- Si un pirate attaque pendant cette phase, ses actions seront assimiles
un profil utilisateur, et donc passeront inaperues lorsque le systme de
dtection sera compltement oprationnel.
- Un pirate peut sintroduire dans le systme et modifier le fichier
contenant les profils des utilisateurs, ce qui lui permettra de mettre en
place son attaque sans quelle soit dtecte.

4.4.2. Lapproche par scnarios :( analyse par signatures) [7]
Cette mthode se base sur la connaissance des techniques utilises par les attaquants
pour dduire des scnarios typiques. Elle ne tient pas compte des actions passes de
lutilisateur et utilise des signatures dattaques connues (ensemble de caractristiques
permettant didentifier une activit intrusive : une chaine alphanumrique, une taille de
paquet inhabituelle, une trame formate de manire suspecte,).
On va prsenter ici quelques cas typiques de dtection utilisant cette approche :

a. Recherche de motif (pattern matching) :
Cette mthode se base sur la recherche de motifs (chaines de caractres ou suite
doctets) au sein du flux de donnes. LIDS comporte une base de signature o chaque
signature contient les protocoles et ports utiliss par lattaque ainsi que le motif qui
permettra de reconnaitre les paquets suspects.

Chapitre II : Les systmes de dtection dintrusions

24

b. Recherche de motif dynamique :
Le principe de cette mthode est le mme que la prcdente, mais les signatures des
attaques voluent dynamiquement. LIDS est de ce fait, dot de fonctionnalits
dadaptation et dapprentissage.

c. Analyse heuristique :
Le but de cette mthode est, par une analyse intelligente, de dtecter une activit
suspecte ou toute autre anomalie. Par exemple : une analyse heuristique permet de gnrer
une alarme quand le nombre de sessions destination dun port donn dpasse un seuil
dans un intervalle de temps prdfini.

Avantages et inconvnients de lapproche par scnario :
Avantages :
- Reconnaissance des attaques sans gnrer trop de fausses alarmes (faux
positifs).
- Capable de diagnostiquer rapidement lutilisation dune technique dattaque
ou dun outil dattaque spcifique.
- Possibilit daider les administrateurs systmes (moyennant leur niveau
dexpertise) traquer un problme de scurit en initiant des procdures de
gestions dincidents.
Inconvnients :
- Impossibilit de dtecter des attaques non connues, et donc ncessit de
mettre jour rgulirement la base de signature.
- Une attaque nest pas toujours identique 100% sa signature, le moindre
octet diffrent provoquera la non dtection de lattaque.
Approche comportementale ou approche par scnarios ? [19]
Nous avons constat, que chacune de ces deux approches prsente des avantages et
des inconvnients. Il semble donc indispensable dhybrider lapproche comportementale
avec lapproche par scnarios de manire profiter des avantages de lune et de lautre.
Les modles comportementaux sont de plus en plus intgrs des IDS initialement
bass sur une bibliothque de signatures. En effet, certains diteurs ont dj fait le choix de
Chapitre II : Les systmes de dtection dintrusions

25

complter leur base de signature, par un modle comportemental basique permettant de
signaler des vnements non identifiables.
5. Emplacement des systmes de dtection dintrusions : [1]
Le choix de lemplacement est un sujet rcurrent lorsquon aborde les IDS. Ce
problme reste souvent sans rponse claire car la solution idale nexiste pas vraiment, tout
dpend de larchitecture rseau de lentreprise, de ses choix au niveau de sa politiqu de
scurit.










Figure 3 : Les emplacements possibles des NIDS (Network IDS)

5.1. En amont : c--d situ lextrieur du primtre de protection du firewall
Avantage :
- Il permet davoir une visibilit totale sur le trafic entrant, cela permet bien
entendu de reprer les tentatives dattaques mme si celles-ci seront filtres par
le firewall.
- Il aide analyser la pertinence du pare-feu comme quipement de protection
anti-intrusion (en faisant un rapprochement avec un NIDS en aval du firewall).

Chapitre II : Les systmes de dtection dintrusions

26

Inconvnients :
- Beaucoup dalertes seront remontes ce qui rendra les fichiers log ou la base de
donnes des alertes difficilement consultable.
- Le risque engendr par un trafic trs important qui pourrait entrainer une perte
de fiabilit, car au mme temps que le N-IDS analyse un paquet, autres paquets
circulant dans le rseau vont passer sans tre analyss, et cela empire dautant
plus que le nombre de rgles consulter est grand.
- Etant situ hors du domaine de protection du firewall, la sonde est alors expose
dventuelles attaques pouvant la rendre inefficace.

5.2. En aval : c.--d. lintrieur du primtre de protection du firewall
Avantages :
- La sonde se place lintrieur du primtre de protection du firewall (donc elle
est protge des attaques).
- Elle peut dtecter toutes les attaques non filtres par le firewall.
- Elle permet de se prmunir des alertes de toutes les tentatives filtres par le
firewall, cela permet lIDS de se concentrer sur lessentiel du trafic entrant (on
vite une bonne partie de faux positifs).
- Rend la consultation des logs (par ladministrateur) plus facile, puisque les
attaques bnignes ne seront pas recenses.
Inconvnients :
- Le risque engendr par un trafic trs important qui pourrait entrainer une
perte de fiabilit du N-IDS, (une perte de fiabilit minime compare au
premiers cas (c--d IDS en amont)).

5.3. Dans la DMZ :
Dans cette position, on a les mmes avantages et inconvnients (quen aval). La sonde
place dans cette zone permet de dtecter les intrusions qui ont atteint la zone DMZ, et
ainsi, surveiller les attaques diriges vers les diffrents serveurs de lentreprise accessibles
de lextrieur.

5.4. Dans le LAN :
Placer une sonde dans le rseau interne de lentreprise permet dobserver les
tentatives dintrusions parvenues lintrieur du rseau, ainsi que les attaques partir de
Chapitre II : Les systmes de dtection dintrusions

27

lintrieur (qui sont souvent les plus dangereuses). Dans le cas dentreprises utilisant
largement loutil informatique o la gestion de leur activits ou de rseaux fournissant un
accs des personnes peu soucieuses de la scurit (rseau dune universit), cette position
peut revtir un intrt primordial.
6. Imperfection dans les implmentations actuelles des IDS : [19]
Dans la plupart des cas, les systmes de dtection d'intrusions sont faits d'un seul bloc
ou module qui se charge de toute l'analyse. Ce systme monolithique demande qu'on lui
fournisse beaucoup de donnes d'audit, ce qui utilise beaucoup de ressources de la machine
surveille. L'aspect monolithique pose galement des problmes de mises jour et
constitue un point d'attaque unique pour ceux qui veulent s'introduire dans le systme
d'information.
D'autres imperfections plus gnrales sont relevables dans les systmes de dtection
d'intrusions actuels :
Mme en implmentant les deux types d'approches, certaines attaques sont
indcelables et les systmes de dtection sont eux-mmes attaquables. Les
approches comportementale et par scnarios ont elles-mmes leurs limites.
Les groupes de travail sur ce sujet sont relativement ferms et il n'y a pas de
mthodologie gnrique de construction. Aucun standard n'a pour l'instant vu le
jour dans ce domaine. Des groupes y travaillent, notamment au sein de la DARPA
et de l'IETF.
Les mises jour de profils, de signatures d'attaques ou de faon de spcifier des
rgles sont gnralement difficiles. De plus, les systmes de dtection d'intrusions
demandent de plus en plus de comptence celui qui administre le systme de
scurit.
Les systmes de dtection sont gnralement crits pour un seul environnement et
ne s'adapte pas au systme surveill alors que les systmes d'informations sont, la
plupart du temps, htrognes et utiliss de plusieurs faons diffrentes.
Aucune donne n'a t pour l'instant publie pour quantifier la performance d'un
systme de dtection d'intrusions. De plus, pour tester ces systmes, les attaques
sont de plus en plus difficiles simuler.

Chapitre II : Les systmes de dtection dintrusions

28

7. Mthodes de classification et dintelligence artificielle pour la dtection
dintrusions :
Plusieurs algorithmes de classification et dintelligence artificielle, peuvent tre utiles
dans la dtection dintrusions. Ces algorithmes gnrent des classificateurs, sous forme
darbre de dcision, de rgles ou de rseau de neurones, etc. Une application dans la
dtection dintrusions serait dappliquer ces algorithmes une quantit suffisante de
donnes daudit normales ou anormales, pour gnrer un classificateur capable dtiqueter
comme appartenant la catgorie normale ou anormale de nouvelles donnes daudit.
Parmi ces techniques de classification, nous citons :
7.1. Rseaux baysiens [20][21]
Les rseaux baysiens sont des outils de raisonnement avec des informations
incertaines dans le cadre de la thorie des probabilits. Les rseaux baysiens, utilisent des
graphes acycliques dirigs pour la reprsentation des relations causales et des probabilits
conditionnelles (de chaque nud dans le contexte de ses parents), pour exprimer
l'incertitude sur ces relations.
Valdes [22] a propos une nouvelle approche hybride, pour la dtection d'intrusions
se basant sur les rseaux baysiens, en utilisant une forme simplifie des rseaux
baysiens, appele rseaux baysiens nafs, compose de deux niveaux: une racine qui
reprsente la nature de la session (normal et les diffrents types d'attaques), et plusieurs
noeuds enfants, chacun d'entre eux correspond un attribut de la connexion.
Les rseaux baysiens nafs ont plusieurs avantages dus, en particulier, leur
construction qui est trs simple. Par ailleurs, l'infrence (classification) est assure de faon
linaire (alors que l'infrence dans les rseaux baysiens qui ont une structure gnrale est
connue comme un problme NP complet [23]. En plus, la construction des rseaux
baysiens nafs est incrmentale, dans le sens qu'elle peut tre facilement mise jour
(notamment, il est toujours possible de prendre en considration de nouvelles classes).
Cependant, les rseaux baysiens nafs travaillent sous une hypothse d'indpendance trs
forte entre les attributs dans le contexte de la nature de la session. Une telle hypothse n'est
pas toujours valable et peut entacher les rsultats.

Chapitre II : Les systmes de dtection dintrusions

29

7.2. Arbre de dcision [24] [25]
Les arbres de dcision, reprsentent l'une des techniques les plus connues et les plus
utilises en classification. Leur succs est notamment d leur aptitude traiter des
problmes complexes de classification. En effet, ils offrent une reprsentation facile
comprendre et interprter, ainsi qu'une capacit produire des rgles logiques de
classification.
Un arbre de dcision est compos de:
Nuds de dcision : contenant chacun un test sur un attribut.
Branches : correspondant gnralement l'une des valeurs possibles de l'attribut
slectionn.
Nuds feuilles : comprenant les objets qui appartiennent la mme classe.
L'utilisation des arbres de dcision dans les problmes de classification se fait en deux
principales tapes:
1. Etape de construction de l'arbre : Cette tape se base sur un ensemble d'apprentissage,
et consiste slectionner, pour chaque nud de dcision, l'attribut test appropri . Elle
consiste aussi dfinir la classe libellant chaque feuille.
2. Etape de classification : Pour trouver la classe de l'objet, il suffit de suivre le chemin
en partant de la racine de l'arbre de dcision jusqu'aux feuilles en effectuant les
diffrents tests chaque nud selon les valeurs des attributs de l'individu classer.
Plusieurs IDS ont t proposs base des arbres de dcision, en utilisant la base
KDD dans ltape de construction de larbre.
Benfarhat [26] a propos des IDS comportementaux base des rseaux
baysiens nafs et des arbres de dcision. Ltude exprimentale est effectue sur la base
KDD.
7.3. Rseaux de neurones : [27]
Les rseaux neuronaux sont utiliss pour leur rapidit de traitement et leur relative
rsistance aux informations incompltes ou dformes. Ils sont utiliss de deux manires
diffrentes. Ils sont dabord utiliss comme filtres pour filtrer et slectionner les parties
suspectes dans les donnes daudit. Celles-ci sont ensuite analyses par un systme expert.
Chapitre II : Les systmes de dtection dintrusions

30

On peut ainsi rduire les fausses alarmes, et on peut mme augmenter la sensibilit du
systme expert car il ne travaille que sur des donnes suspectes. Puis ils sont utiliss de
faon prendre seuls la dcision de classer une squence dvnements comme
malveillante.
Conclusion :
Nous avons prsent tout au long de ce chapitre, une tude des systmes de dtection
dintrusions. Afin de remplir ses objectifs, diverses mthodes de dtection dintrusions ont
t proposes, elles sont bases principalement sur deux approches : lapproche
comportementale et lapproche par scnarios. Parmi ces mthodes nous soulignons la
classification. Plusieurs travaux dans le cadre de la dtection ont t mens sur les
algorithmes de classifications. Cependant, ces algorithmes possdent des limites qui
peuvent entacher la dtection dintrusions : un arbre de dcision prsente un trs gros
dfaut dans le cas o des instances de lensemble de test ne satisfont aucune rgle de la
base dapprentissage. Afin de remdier ces dfauts en particulier et de rsoudre les
limites des IDS en gnral, nous proposons dimplmenter une mthode de classification
AntClass non supervise base sur les fourmis artificielles pour la dtection
dintrusion.
Dans les chapitres suivants, nous allons dabord prsenter la mthode de classification
AntClass puis lapplication de cette mthode dans le domaine de dtection
dintrusions.







Chapitre III :
Prsentation de la Mthode
AntClass
Chapitre III : Prsentation de la mthode AntClass

31

Introduction :
Depuis quelques annes, le monde du vivant permet de proposer des mthodes de
rsolution de problmes qui sinspirent de ses mcanismes. Les algorithmes gntiques sont
des exemples de plus en plus rencontrs, tant pour des problmes dapprentissage automatique
que doptimisation. Plus rcemment, les fourmis prsentent un intrt grandissant pour la
rsolution de problmes complexes. On parle alors de fourmis artificielles qui sinscrivent
dans une dmarche visant exploiter lintelligence collective que lon peut leur attribuer. En
effet, la classification fait partie des problmes pour lesquels les fourmis suggrent des
heuristiques trs intressantes pour les informaticiens.
Dans ce qui suit, nous prsentons dune mthode de classification non supervise appele
AntClass inspire de fonctionnement de la colonie de fourmis .
1. Concept de classification : [28]
Classifier est le processus qui permet de rassembler des objets dans des sous-ensembles
tout en conservant un sens dans le contexte dun problme particulier. Les sous-ensembles
obtenus reprsentent une organisation, ou encore une reprsentation de lensemble des objets.

1.1. Les types de classification :
Le problme de la classification se dcline en deux variantes : lapproche supervise et
lapproche non supervise.

1.1.1. Classification supervise :
Il sagit dutiliser les groupes connus pour dcouvrir ce qui les diffrencie ou afin de
pouvoir classer de nouveaux objets dont la classe nest pas connue. De nombreuses
techniques de classification supervise ont t dveloppes, parmi ces mthodes, on trouve
les mthodes de classification par maximum de vraisemblances.

1.1.2. Classification non supervise :
La classification non supervise consiste affecter un objet des classes dont le nombre est
inconnu et qui nont aucune signification particulire priori. Il sagit donc dun
regroupement de donnes par similitude dans des classes homognes. Parmi les techniques de
classification non supervise, on trouve les mthodes des centres mobiles, les algorithmes de
colonies de fourmis artificielles,etc.
Chapitre III : Prsentation de la mthode AntClass

32

Pour plus de dtails sur la classification voir lannexe A.
2 .Les fourmis et la classification : [28]
Les algorithmes de classification sont un autre type dalgorithmes inspirs de
comportements collectifs observs chez les fourmis : le tri collectif de couvains ou la
constitution de cimetires. Les premiers travaux dans ce domaine ont t ceux de
Deneubourg et son quipe, se basant sur une colonie de fourmis artificielles qui se dplacent
alatoirement sur une grille rectangulaire et sont capables de ramasser et de dposer des objets
prsents sur une grille dans le but de les regrouper selon un critre de similarit. Ces travaux
ont t par la suite amliors et tendus diffrents domaines dapplication.

2.1. Ce que font les fourmis relles : [28]
Dans la nature, les fourmis offrent un modle stimulant pour le problme du
partitionnement. Lexemple du tri collectif du couvain ou de la constitution de cimetires
est le plus marquant. Certains travaux exprimentaux montrent que certaines espces de
fourmis sont capables dorganiser spatialement divers lments du couvain : les ufs, les
larves et les nymphes. Ce comportement est bas sur deux rgles simples mais suffisantes
pour former des tas dlments de mme type et qui sont les suivantes :
Lorsquune fourmi rencontre un lment du couvain, plus cet lment est isol, plus
elle a de chance de le ramasser.
Lorsquune fourmi transporte un lment du couvain, la probabilit quelle le dpose
est dautant plus grande que la densit dlments de mme type dans le voisinage est
grande.
Pour rassembler en tas un ensemble dlments (dobjets) de mme type, les probabilits
de ramasser un objet (

) et de dposer (

) ont t explicites:
Quand une fourmi ne transporte aucun lment, sa probabilit de ramasser un,
rencontr sur son chemin, est donne par la formule:

- Probabilit de ramassage :

=


( III.1 )
Chapitre III : Prsentation de la mthode AntClass

33

O k1 est une constante positive et f correspond la proportion dlments perus dans le
voisinage de la fourmi.
Quand il y a peu dobjets dans le voisinage de lobjet convoit par la fourmi, f <<k1 ce qui
signifie que

est proche de 1 et lobjet a beaucoup de chance dtre ramass. Inversement,
quand le voisinage est dense en lments, f >>k1 et alors

est proche de 0.
Quand une fourmi charge dun objet se dplace, sa probabilit de dposer lobjet est
donne par :
- Probabilit de dpt :


O k2 est une constante positive. f correspond au nombre dobjets rencontrs durant les T
derniers dplacements diviss par le nombre maximum dobjets qui auraient pu tre
rencontrs. Ladaptation de ce principe des objets de plusieurs types, par exemple deux : A
et B, peut alors se faire en particularisant f : f
A
et f
B
correspondent la proportion dobjets de
type A et B. Le comportement de rassemblement se transforme alors en tri.
2.2. Ce que font les fourmis artificielles : [28]
Lumer et Faieta se sont inspirs de ce que font les fourmis relles et ont propos un
algorithme qui est la base de dveloppement de la mthode AntClass . Les extensions
introduites concernent en particulier les points suivants :
Cet algorithme utilise une mesure de dissimilarit entre les objets (sous la forme
dune distance euclidienne).
Les objets correspondent des points dun espace numrique M dimensions sont
plongs dans un espace discret de dimension moindre (typiquement de dimension2).
Cet espace discret sapparente alors une grille G dont chaque case peut contenir un
objet.
Les agents se dplacent sur la grille G et peroivent une rgion R
S

de s x s cases dans
leur voisinage. La figure 4 donne un exemple de grille avec une fourmi, reprsente
par X et son primtre de dtection en trait pais. Les objets sont reprsents par des
carrs dont lintrieur invisible pour la fourmi, reprsente la classe dorigine.
( III.2 )
Chapitre III : Prsentation de la mthode AntClass

34



Figure 4: Grille utilise dans lalgorithme de Lumer et Faieta

Les probabilits de ramassage et de dpts des objets deviennent alors :

- Probabilit de ramassage :


- Probabilit de dpt :

=
2

<



La fonction de densit locale est calcule de la manire suivante :

> 0
0

est la position de lobjet

la grille,

est une mesure de similarit moyenne de


lobjet

avec les objets

de son entourage. Le facteur contrle la consistance de la


fonction de dissimilarit entre les objets. Si est trop lev les objets diffrents seront mis
dans la mme classe dans le cas contraire les objets similaires ne seront pas regroups
ensembles.
Lalgorithme 1 donne les tapes de la mthode en utilisant A fourmis {

, . ,

}. Les
paramtres ont les valeurs suivantes :

=0.1,

=0.15, S=3, =0.5 et

=10
6



(III .3)
( III.4 )
( III.5 )
Chapitre III : Prsentation de la mthode AntClass

35


Algorithme Lumer et Faieta :





















Algorithme 1 : Algorithme de Lumer et Faieta

Les rsultats obtenus ont montr que lalgorithme gnre un nombre de classes qui est
trs souvent trs loign du nombre rel de classes. Afin de remdier cela, Lumer et Faieta
ont introduit trois extensions au comportement de base des fourmis artificielles :
Les fourmis se dplacent sur la grille avec une vitesse propre chacune delles
comprise entre 1 et v. Les fourmis les plus rapides sont moins sensibles aux
dissimilarits entre deux objets, ce qui permet de diminuer le nombre de classes
gnres.
Placer alatoirement les N objets {

,,
}
sur la grille G
Pour t = 1 T

faire
pour tout

,,

} faire
Si la fourmi

ne transporte pas dobjet et

alors
Calculer

et


La fourmi



ramasse lobjet

suivant la probabilit


Sinon
Si la fourmi

transporte lobjet

et la case

est vide alors


Calculer

et


La fourmi

dpose lobjet

sur la case

avec une probabilit



Finsi
Finsi
Dplacer la fourmi

sur une case voisine non occupe par une autre fourmi
Finpour
Finpour
Retourner lemplacement des objets sur la grille G
Chapitre III : Prsentation de la mthode AntClass

36

Chaque fourmi possde une mmoire court terme lui permettant de se souvenir des
positions des m derniers objets classs. Si une fourmi transporte un objet, elle cherche
dans sa mmoire lobjet dj class qui est le plus proche de celui quelle transporte.
Si elle le trouve, elle se dplacera avec une certaine probabilit vers ce nouvel
emplacement pour y dposer son objet.
Si au bout dun certain nombre ditrations la fourmi stagne (ne fait plus aucun
dplacement) elle peut dtruire un groupe en ramassant lobjet le plus loign du
groupe.

3. Description de la mthode AntCLass :[28]
En se basant sur les travaux de Lumer et Faieta, Monmarch proposa une nouvelle
mthode de classification appele AntClass . Elle dcouvre automatiquement les classes
dans des donnes numriques sans connatre le nombre de classes priori, sans partition
initiale et sans paramtrages dlicat.
La mthode AntClass utilise les principes exploratoires stochastiques dune colonie de
fourmis. Ces dernires se dplacent sur une grille deux dimensions et peuvent transporter
des objets. La saisie ou le dpt dun objet sur un tas dpend de la similarit entre cet objet
et les objets du tas.

3.1. Notions et heuristiques de AntClass : [28]
a. Les objets et leur mtrique :
Soit O= {

,...,

} un ensemble de N donnes ou objets. Chaque objet est, en ralit,


un vecteur de k valeurs correspondants aux k attributs numriques

,...,

. Un
paramtrage important des algorithmes de classification est de savoir comment
mesurer la similarit entre deux objets. La distance euclidienne entre deux objets,
note d, est utilise par dfaut. Cependant, AntClass peut utiliser dautres types de
distances telles que les mesures de Minkowski ou de Hamming. Initialement, les
objets sont parpills alatoirement sur une grille deux dimensions. Les fourmis
sont capables de ramasser ou de dposer des objets pour crer des tas ou des classes
homognes.

b. Rpartition des objets sur la grille :
Lalgorithme AntClass fait voluer des agents fourmis sur une grille G de dimension
Chapitre III : Prsentation de la mthode AntClass

37

L x L o les objets partitionner sont alatoirement distribus. Cette grille est
torodale de manire ce que les fourmis passent dun bord un autre. La taille de la
grille est dtermine automatiquement. Il faut que le nombre de cases de la grille soit
au moins gal au nombre dobjets classer (L
2
N). Si la taille est trop grande, les
fourmis vont perdre beaucoup de temps rechercher les objets. Un bon compromis
serait de fixer la taille de la grille en fonction du nombre dobjets classer.

c. Les fourmis :
La colonie se compose de A fourmis

,....,

. Chaque fourmi est positionne sur


une case de la grille de manire alatoire et uniforme, en prenant comme prcaution
quune case ne puisse accueillir quune seule fourmi. Il nexiste videmment aucun
contrle centralis de la colonie. Chaque fourmi

se dplace et peut alors dposer


ou ramasser un objet. Initialement, chaque fourmi

choisit une direction alatoire


parmi les huit directions possibles. A chaque itration de lalgorithme, la fourmi

se
dplace sur la grille une vitesse

. Concrtement, si

sont les
coordonnes de la fourmi

sur G, la nouvelle position sera dans lintervalle :



Ceci en tenant compte du fait que la grille est torodale. Enfin, la direction choisie
par la fourmi

dpend de la direction prcdente : elle a une probabilit gale 0.6


de continuer tout droit et de 0.4 de changer de direction. Dans ce cas, elle a une
chance sur deux de tourner de 45 degrs droite ou gauche.

d. Les tas dobjets :
Comme nous le verrons par la suite, les fourmis seront capables de crer, construire et
dtruire des tas dobjets. Un tas T est un ensemble dau moins deux objets localiss
sur une case donne comme illustr par la figure 5 suivante :







Chapitre III : Prsentation de la mthode AntClass

38




Figure 5: Dfinition des tas

Sur la gauche, est reprsente la structure dune classe trouve par Lumer.
Une classe a une certaine superficie, et deux classes peuvent tre en contact et posent un
alors problme pour les sparer. A droite, est reprsente la nouvelle disposition propose
par Monmarch dans AntClass . Lavantage de cette reprsentation est quelle, dune
part, facilite lidentification des classes, et dautre part, permet la dfinition dheuristiques
plus prcises pour le dpt ou la saisie dobjets sur un tas.

e. Les rgles heuristiques des fourmis :
Afin de dterminer les rgles que les fourmis vont utiliser sur la grille pour manipuler les
objets, il faut leur fournir des mesures de dispersion dun tas ou de dissimilarit entre deux
objets. Avec cet objectif, on dfinit, pour un tas T compos de

objets, les notations


suivantes :

est la distance entre lobjet o


i
et lobjet o
j
:
do

, o

= o

est la distance maximale entre deux objets de T :


=
,,.,

est la distance moyenne entre deux objets de T :


d

T =

do

, o

, ,,

,



( III.7 )
( III.8 )
( III.6)
Chapitre III : Prsentation de la mthode AntClass

39

est le centre de gravit des objets du tas T :


g

T =

o
,.,

est la distance maximale entre les objets de tas T et son centre de


gravit

:
d

T = max
,,

do

, g

est la distance moyenne entre les objets du tas T et son centre de


gravit

:
d

T =

do

, g

T
,.,


e.1. Ramasser un objet :
Quand une fourmi

ne transporte pas dobjet, elle cherche un objet ramasser en


considrant les huit cases de son voisinage. Ds quun objet ou un tas dobjet ait t trouv, sa
probabilit de ramasser cet objet ou ce tas est donne par le systme dquations suivant

p

T =

1 si |T| = 1
min

, 1 si |T| = 2
1 0.9

sinon



O T est le nombre dobjets dans le tas,

est un paramtre rel positif permettant de


contrler la forme de la densit de

quand T>1 et est une valeur positive.


La fourmi ramasse lobjet le plus loign du centre de gravit du tas. Les cas suivants se
prsentent :
Si la case ne contient quun seul objet (T=1), il est systmatiquement ramass par la
fourmi.
Si la case contient un tas de deux objets || = =

, la probabilit de
ramasser lun des deux objets dpend de la distance entre les deux objets et le centre
( III.9 )
(III.10)
( III.11 )
( III.12 )
Chapitre III : Prsentation de la mthode AntClass

40

de gravit

et la distance moyenne
entre tous les objets

.
Enfin, si le tas se compose de plus de deux objets, la probabilit

est proche de 1
quand la distance moyenne au centre est ngligeable devant la distance au centre de
lobjet le plus loign. Si la capacit de la fourmi est suprieure 1, elle ramasse
autant dobjets que sa capacit le lui permet.

e.2. Dposer un objet :
Si la fourmi transporte un objet, et quelle se trouve sur une case contenant un ou
plusieurs objets, sa probabilit de dposer lobjet

sur le tas T est donne par:



P

, T =
1 si do

, g

T d

T
1 . 9 min

, 1 sinon


O

est un paramtre rel positif permettant de contrler la forme de la densit de

,
quand

>

. Deux cas se prsentent :



Si lobjet

transport par la fourmi est moins loign du centre de gravit


du tas T que lobjet du tas le plus loign de ce centre, elle dpose
systmatiquement

. Sinon, plus la distance entre

et

est
grande par rapport la distance moyenne entre les objets de la base

, plus la
probabilit de le dposer sera faible.
Si la capacit de la fourmi est suprieure 1 et quelle transporte plusieurs objets, la
probabilit de dposer le tas T
1
quelle transporte sur le tas T
2
est calcule de la mme
faon que pour un objet unique en remplaant

par le centre de gravit des objets
transports.

f. Patience des fourmis :
Sil y a trop de fourmis par rapport au nombre de tas ou dobjets, le problme suivant peut
se prsenter : tous les tas (dans le cas dune grande capacit de transport des fourmis) ou tous
les objets sont transports ce qui noffre plus de possibilit aux fourmis de dposer ce quelles
( III.13 )
Chapitre III : Prsentation de la mthode AntClass

41

transportent. Dans le cas o les fourmis ont une capacit gale 1, il suffit de sassurer que le
nombre de fourmis est nettement infrieur celui des objets. Par contre, quand les fourmis ont
une capacit de transport suprieure, le problme peut rapparatre.
La solution la plus immdiate est de doter les fourmis dune certaine patience, qui peut tre
individuelle, note

. Quand la fourmi effectue plus de

. dplacements sans avoir


russie dposer les objets quelle transporte, elle les dpose sur la case o elle se trouve si
elle est vide ou sur lune de son voisinage dans le cas contraire. Par la suite, cette patience
sera utilise, en particulier, lorsque la capacit

dune fourmi est suprieure 1.



g. Mmoire des fourmis :
Comme les fourmis relles ont la possibilit de mmoriser plusieurs sites dans leur
environnement, lalgorithme AntClass prvoit une mmoire pour chaque fourmi dans le but
dacclrer la classification et daccrotre la proportion des objets qui seront affects un tas.
Ds quune fourmi rencontre un tas T, elle stocke dans sa mmoire la position de T sur la
grille ainsi que son centre de gravit

et

. Les comportements de dpt et de


mouvement de la fourmi sont modifis de la manire suivante : quand une fourmi transporte
un objet, elle cherche dans sa mmoire un tas T sur lequel elle pourrait dposer lobjet. Si elle
en trouve un, alors elle se dirige vers lui. Si la fourmi na pas dpos son objet en chemin, elle
le dposera sur T sil est toujours valable, c'est--dire, sil na pas t dtruit ou sil na pas
t trop modifi par dautres fourmis.

3.2. Hybridation avec les centres mobiles :
AntClass est une hybridation de lalgorithme stochastique de fourmis et de lalgorithme
dterministe de classification le K-Means afin dacclrer la convergence vers une
partition stable. AntClass comporte des excutions successives dun motif constitu dune
application de lalgorithme de fourmis suivi de lalgorithme K-Means. Les fourmis gnrent
une partition initiale de bonne qualit qui sera par la suite raffine par K-Means.






Figure 6 : Schma de droulement de la mthode AntClass
Donnes
numriques
Fourmis Centres mobiles
Partition
des
donnes
Chapitre III : Prsentation de la mthode AntClass

42


3.2.1. Algorithme des centres mobiles ( K-Means ) :
Considrons quune partition de lensemble dobjets O a t obtenue sous la forme de K
classes

, . . ,

composes respectivement de |

|, . , |

| objets. Comme chaque objet


appartient une et une seule classe on a : |

= . Le centre de gravit

de la classe


est donn par :

(III.14)

O

est le j
ime
point de la classe

. Lerreur quadratique

sur la classe

est alors
donne par :



Notons alors par

, linertie intra-classe :



Le partitionnement construit par les fourmis nest pas obligatoirement optimal au sens de
linertie intra-classe

mme si les rgles de ramassage et de dpt des objets tendent


agglomrer les objets des tas dont le centre est proche. Lalgorithme des centres mobiles (ou
plus couramment K-Means) offre une rponse simple la non-uniformit de la partition
construite par les fourmis. Comme les fourmis agissent localement il peut rester un certain
nombre dobjets mritant dappartenir une classe dont le centre est beaucoup plus
proche. K-Means est alors utilis pour corriger ce type de dfaillance (algorithme 2).







(III.15)
(III.16)
Chapitre III : Prsentation de la mthode AntClass

43


Algorithme des centres mobiles K-Means (Partition P de K de classes) :










Algorithme 2 : Algorithme K-Means

3.2.2. Structure final de lalgorithme AntClass :
Lalgorithme 3 donne la structure gnrale de la mthode de classification par les fourmis
(appel Ants par la suite) et lalgorithme 4 donne le schma gnral de AntClass o
lalgorithme K-Means est initialis avec la partition obtenue par Ants.
Pour lalgorithme Ants , les indications entre crochets concernent le cas o les fourmis ont
une capacit de transport suprieure 1.






Debut
Tantque linertie intraclasse ne sest pas stabilise faire
Gnrer une nouvelle partition P en affectant chaque objet la classe
dont le centre est le plus proche.
Calculer les centres de gravit des classes de la nouvelle partition P
P P
Fintantque
Retourner P
Fin
Chapitre III : Prsentation de la mthode AntClass

44





















Algorithme 3 : Algorithme Ants











Algorithme 4 : Algorithme AntClass

Soit

la partition initiale forme de N classes.


Pour t=1 T

faire
Initialiser la grille G partir de la partition

(un tas par classe)


G Ants(G)
Construire la partition

associe la grille G

K-Means


Finpour
Retourner la partition


Pour t=1 T faire
Pour K=1 A faire
Dplacer la fourmi

sur une case non occupe par une autre fourmi


Si il y a un tas dobjets

sur la mme case que

alors
Si la fourmi

transporte un objet


Dposer lobjet

[le tas

] transport par la fourmi sur le tas


suivant la probabilit

( formule III .13)


Sinon /* la fourmi ne transporte pas dobjets*/
Ramasser lobjet

le plus dissimilaire du tas



[jusqu ce que la
capacit

de la fourmi soit atteinte ou que le tas soit vide] selon la


probabilit

( formule III .12)


Finsi
Finsi
Finpour
Finpour
Retourner la grille G
Chapitre III : Prsentation de la mthode AntClass

45


Le tableau suivant rsume les paramtres fixer pour lalgorithme Ants. Ces paramtres sont
spcifier pour chacune des

itrations de AntClass.

Paramtre Description
A
T
ca
i
i 1, . , A
ma
i
i 1, . , A
va
i
i 1, . . , A
pa
i
i 1, . . , A
k
1
, k
2


Nombre de fourmis
Nombre de dplacements de chaque fourmi
Capacit de transport des fourmis
Taille de la mmoire de chaque fourmi
Vitesse sur la grille de chaque fourmi
Patience de chaque fourmi
Paramtres de calcul de P
p
, P
d


Tableau 1 : Paramtres de lalgorithme Ants.

Conclusion :
La mthode AntClass est une technique de classification qui sapplique dans plusieurs
domaines o il existe des donnes regrouper ou classer. Cette mthode permet de
dcouvrir automatiquement les classes dans des donnes numriques sans connaitre priori le
nombre de classes, sans partition initiale et sans paramtrage dlicat ce qui simplifie la tche
de lutilisateur de cette mthode. Parmi les domaines dans lesquels la mthode AntClass est
applique, on trouve le domaine de dtection dintrusion o la classification de grandes
masses de donnes est importante pour avoir une meilleure dtection dintrusions.
Dans le chapitre suivant, nous allons appliquer la mthode AntClass sur une base de
donnes appele base dapprentissage KDD99.



Chapitre IV :
Application de la mthode
AntClass sur la base de
donnes KDD 99
Chapitre IV : Application de la mthode AntClass sur la base de donnes KDD99

46

Introduction :
Lors du chapitre prcdent nous avons prsent une mthode de classification appele
AntClass qui sinspire du fonctionnement de la colonie de fourmis. Cette mthode de
classification sapplique gnralement sur des bases de donnes de taille norme et elle
permet davoir une meilleure partition de donnes tout en gardant les spcificits des ces
dernires.
Ce chapitre dcrit la validation de la mthode AntClass sur une base de donnes appele
KDD99, ses donnes sont orientes dtection dintrusions. Elles reprsentent des lignes
TCP/IP o chaque ligne est une connexion caractrise par 41 attributs, tel que la dure de la
connexion, le type du protocole, etc. En tenant compte des valeurs de ses attributs, chaque
connexion dans KDD99 est considre comme tant une connexion normale ou bien une
attaque. Commenons dabord par la description de la base KDD99.
1. Description de la base KDD99:
Les donnes KDD prsentent 7 semaines de donnes libelles pour lapprentissage et 2
semaines de donnes non libelles pour le test (Correspondant au trafic rseau simulant un
rseau local dUS Air force).
La base KDD recense 38 attaques possibles qui peuvent tre regroupes en quatre
catgories (listes dans le tableau 2).
Dni de Service - Denial-Of-Service (DOS) :
Il sagit dempcher par tous les moyens les utilisateurs de se servir des ressources
disponibles en temps normal. Ces attaques sont but purement destructeur et sont
souvent trs simples mettre en place et donnent une sensation de puissance lattaquant,
ce qui explique leur frquence.
Les attaques de type Remote to User (R2L) :
Pour ce genre d'attaque, les attaquants essaient d'exploiter la vulnrabilit du systme
afin de contrler la machine distante.
Les attaques de type User to Root Attacks (U2R) :
L'attaquant essaie d'avoir les droits d'accs partir d'un poste afin d'accder au
systme.


Chapitre IV : Application de la mthode AntClass sur la base de donnes KDD99

47


Reconnaissance Probing :
Ces attaques ne sont pas destructrices au sens o elles empchent une entit de
fonctionner correctement, mais permettent dacqurir des informations parfois cruciales
pour mener une attaque de plus grande envergure plus tard.
DOS Probing R2L U2R
Apach2
Back
Land
Mailbomb
Neptune
Pod
Processtable
Smurf
Teardrop
Udpstorm
Ipsweep
Mscan
Nmap
Portsweep
Saint
Satan
Ftp_write
Guess_passwd
Imap
Multihop
Named
Phf
Dict
Snmpners
Sky
Sqlattak
Warezclient
Warezmaster
Xlock
Xsnoop
Gust
Buffer_overflow
Httptunnel
Loadmodule
Xterm
Perl
Ps
RootKit

Tableau 2: les types dattaques

Les attributs caractrisant chaque connexion , sont dtaills dans le tableau 3.
Certains attributs sont de type discret (admettant un nombre fini de valeurs), dautres sont de
type continu.





Chapitre IV : Application de la mthode AntClass sur la base de donnes KDD99

48




Tableau 3 : liste des attributs


Attributs Description
Chapitre IV : Application de la mthode AntClass sur la base de donnes KDD99

49

2. Application de la mthode AntClass sur la base KDD99 :
Le but de notre travail est dappliquer la mthode de classification AntClass sur la base
de donnes KDD pour former un ensemble de classes constituant le profil normal de
fonctionnement normal du rseau. (Voir figure 7)
Afin de tester la mthode AntClass, nous utilisons une base de test contenant des
connexions normales et des connexions considres comme tant des attaques (anormales).
(Voir figure 7)
Dans ce qui suit nous allons dcrit les diffrentes tapes de validation de la mthode
AntClass sur la base KDD99.















Chapitre IV : Application de la mthode AntClass sur la base de donnes KDD99

50


























Figure 7 : Application de la mthode AntClass sur KDD99
Connexions normales Attaques
Ants
k-Means
Connexions :
-normales
-anormales
Base de
donnes KDD
Les objets
partitionner
Les classes
C
1
,C
2
,C
n

formes par Ants
Les classes C
1

,C
2

,C

n

formes par K-Means
Base de
Test
Les objets ne changent
plus de classes
Profil Normal
Comparaison
(Seuil)
Filtrer les
connexions
normales
10% de la
base KDD
Appliquer
Ants
Chapitre IV : Application de la mthode AntClass sur la base de donnes KDD99

51


2.1. Ltape de construction de profil normal (ltape dapprentissage) :
Pour la modlisation du comportement normal du rseau, nous traitons 10% de la base
dapprentissage KDD (correspondant 494019 de connexion). Nous devons dabord
construire la base des objets partitionner, ces objets reprsentent uniquement les connexions
tiquetes normales de la base dapprentissage KDD.
Chaque objet correspond une connexion, dfinie par un enregistrement 41 attributs, tel
quil est illustr dans le tableau 3. Cette base des objets partitionner est soumise un
classificateur bas sur lalgorithme AntClass, pour former le profil normal de fonctionnement
du rseau.
2 .1.1.Filtrage des connexions normales :
Le premier travail faire consiste construire les connexions normales partitionner.
Pour se faire, nous avons propos le module nomm lecture. Ce module utilise le fichier
dentre nomm baseKDD.txt contenant 494019 connexions (97278 connexions normales
et 396741 connexions anormales) et gnre le fichier contenant uniquement les connexions
normales. Ce fichier de sortie sera nomm normal.txt. Chaque ligne du fichier
baseKDD.txt, reprsente une connexion. Lorsquune ligne est lue par le module lecture , il
vrifie la valeur de la sous chane Der (o Der reprsente les 6 derniers caractres de la
ligne) .Si la valeur de Der gale normal alors la sous chane ligne-Der est copie dans
le fichier de sortie normal.txt .
Fichier dentre Fichier gnr


Figure 8 : Filtrage des connexions normales
Exemple :
Si le fichier baseKDD.txt contient les lignes suivantes :
0,tcp,http,SF,181,5450,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,8,8,0.00,0.00,0.00,0.00,1.00,0.00,0.00,9,9,1.00,
0.00,0.11,0.00,0.00,0.00,0.00,0.00,normal.
Module
Lecture

baseKDD.txt
normal.txt
Chapitre IV : Application de la mthode AntClass sur la base de donnes KDD99

52

0,tcp,http,SF,239,486,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,8,8,0.00,0.00,0.00,0.00,1.00,0.00,0.00,19,19,1.00
,0.00,0.05,0.00,0.00,0.00,0.00,0.00,normal.
0,tcp,http,SF,239,486,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,8,8,0.00,0.00,0.00,0.00,1.00,0.00,0.00,19,19,1.00
,0.00,0.05,0.00,0.00,0.00,0.00,0.00,normal.
0,icmp,ecr_i,SF,1032,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,511,511,0.00,0.00,0.00,0.00,1.00,0.00,0.00,255,
255,1.00,0.00,1.00,0.00,0.00,0.00,0.00,0.00,smurf.
0,icmp,ecr_i,SF,1032,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,511,511,0.00,0.00,0.00,0.00,1.00,0.00,0.00,255,
255,1.00,0.00,1.00,0.00,0.00,0.00,0.00,0.00,smurf.
0,icmp,ecr_i,SF,1032,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,511,511,0.00,0.00,0.00,0.00,1.00,0.00,0.00,255,
255,1.00,0.00,1.00,0.00,0.00,0.00,0.00,0.00,smurf.
Alors le fichier normal.txt gnr par le module lecture contiendra les lignes suivantes:
0,tcp,http,SF,181,5450,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,8,8,0.00,0.00,0.00,0.00,1.00,0.00,0.00,9,9,1.00,
0.00,0.11,0.00,0.00,0.00,0.00,0.00
0,tcp,http,SF,239,486,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,8,8,0.00,0.00,0.00,0.00,1.00,0.00,0.00,19,19,1.00
,0.00,0.05,0.00,0.00,0.00,0.00,0.00
0,tcp,http,SF,235,1337,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,8,8,0.00,0.00,0.00,0.00,1.00,0.00,0.00,29,29,1.0
0,0.00,0.03,0.00,0.00,0.00,0.00,0.00
2.1.2. Connexion :
Chaque connexion tiquete normale de la base dapprentissage KDD est modlise par
une structure de type enregistrement nomme connexion, contenant 41 champs o
chaque champ reprsente un attribut.
2.1.3. Gnration du profil normal :
Aprs avoir gnr les connexions normales (cest--dire, le fichier normal.txt), nous
passons lapplication de lalgorithme AntClass. Ce dernier consiste regrouper les
diffrentes connexions normales (les lignes du fichier normal.txt) pour obtenir les classes C
1
,
C
2
,...,C
k.
ces classes sont copies dans un fichier nomm profilnormal.txt qui reprsente le
profil normal du fonctionnement du rseau.


Chapitre IV : Application de la mthode AntClass sur la base de donnes KDD99

53

a. Grille :
Lalgorithme AntClass utilise une grille sur laquelle les connexions partitionner et les
agents fourmis sont positionns. Cette grille correspond un vecteur de L lments e
(L=( ), o N reprsente le nombre de connexions partitionner. Chaque lment e de
ce vecteur correspond son tour un vecteur de cases. Chaque case c

peut contenir une ou
plusieurs connexions de la base KDD et accueillir une et une seule fourmi. La case c est
reprsente par un enregistrement compos de deux champs : le premier champ nomm first
de type entier, possdant lindice du vecteur contenant les connexions de la case c, le
deuxime champ nomm second est de type string indiquant si la case c est occupe par
une fourmi.


Figure 9: grille G
b. Les agents fourmis :
La population dagents A {a
1
,a
2
,..a
n
} que nous allons utiliser possde les paramtres
suivants :
Position : elle reprsente les coordonnes de la fourmi a
i
sur la grille G.
Vitesse : chaque itration de lalgorithme AntClass, la fourmi a
i
se dplace
alatoirement sur la grille avec une vitesse v (a
i
).
Si (x(a
i
),y(a
i
)) est la position de la fourmi a
i
sur la grille, la nouvelle position aprs
un dplacement sera dans lintervalle :
( [ x(a
i
)-v(a
i
),x(a
i
)+v(a
i
) ] , [ (y(a
i
)-v(a
i
),y(a
i
)+v(a
i
) ] )






Elment e
Elment C
Chapitre IV : Application de la mthode AntClass sur la base de donnes KDD99

Mmoire : pour acclrer le processus dagrgation, chaque fourmi est dote dune
mmoire de longueur m
elle est compare aux
connexion o
i
transport et les tas quelle a mmoris
lemplacement de la connexion la
plusieurs connexions, la
entre le centre de gravit d
Capacit : reprsente le nombre de connexion
mme temps.
Orientation : chaque fourmi est d
cette proprit sont (Voir f
Nord
Nord Est
Est
Sud Est
Sud
Sud Ouest
Ouest
Nord Ouest
Chaque fourmi peut changer de direction en tournant de
Exemple :







Figure
Nord
Nord-Ouest
Ouest
Sud-Ouest
re IV : Application de la mthode AntClass sur la base de donnes KDD99

54
: pour acclrer le processus dagrgation, chaque fourmi est dote dune
m (a
i
). Quand une connexion o
i
est ramasse par une fourmi
est compare aux m (a
i
) mmoire de la fourmi, elle calcule
transport et les tas quelle a mmoris. Elle se dirige ensuite vers
lemplacement de la connexion la plus similaire o
i
. Lorsque la fourmi
connexions, la comparaison des connexions est remplace par la distance
entre le centre de gravit du tas transport et les tas de m (a
i
).
rsente le nombre de connexion que la fourmi peut transporter en
: chaque fourmi est dote dune orientation, les valeurs possibles pour
proprit sont (Voir figure 10) :
Nord Est
Sud Est
Sud Ouest

Nord Ouest
Chaque fourmi peut changer de direction en tournant de 45 degrs droite.
Figure 10 : Directions dune fourmi
Nord Est
45

droite
Nord
Nord- Est
Est
Sud-Est
Sud

45

re IV : Application de la mthode AntClass sur la base de donnes KDD99
: pour acclrer le processus dagrgation, chaque fourmi est dote dune
est ramasse par une fourmi a
i
,
mmoire de la fourmi, elle calcule la distance entre la
. Elle se dirige ensuite vers
. Lorsque la fourmi a
i
transporte
comparaison des connexions est remplace par la distance
que la fourmi peut transporter en
ote dune orientation, les valeurs possibles pour
droite.
Chapitre IV : Application de la mthode AntClass sur la base de donnes KDD99

55

Patience : lorsque les fourmis ont une capacit suprieure 1, on peut faire face au
problme suivant : toutes les connexions sont transportes, ce qui noffre plus de
possibilit aux fourmis de dposer ce quelles transportent. La solution est de doter
les fourmis dune patience qui peut tre individuelle. Quand la fourmis a
i
effectue
plus de p(a
i
) dplacement sans avoir russi dposer, le tas transport, elle le dpose
sur la case sur laquelle elle se trouve si cette case est vide, ou lune de son
voisinage, dans le cas contraire.

Toutes ces proprits peuvent tre individuelles.
c. Dplacement des fourmis :
Au dbut, les fourmis sont disposes alatoirement sur la grille G. Chaque fourmi se
dplace alatoirement sur la grille avec une vitesse v. La direction choisie par la fourmi
dpend de sa direction prcdente : elle a une probabilit gale 0.6 de continuer tout
droit et une probabilit de 0.4 de changer de direction (tourner de 45 degrs droite).
d. Ramassage de connexions :
Si la fourmi a
i
se trouve dans une case contenant des connexions et quelle ne transporte
pas de connexions , elle ramasse c(a
i
) connexions o c(a
i
) reprsente la capacit de la
fourmi a
i
. La probabilit p
p
de ramasser une connexion est (Voir formule III.12).
e. Dpt de connexions :
Si la fourmi transporte un ou plusieurs connexions, et quelle se trouve sur une case
contenant des connexions, la probabilit p
d
de dposer les connexions transports est (Voir
formule III.13).
f. Rpartition des connexions sur la grille G :
Initialement, les connexions partitionner sont disposes alatoirement sur la grille,
dans notre travail, nous avons envisag de disposer les connexions comme suit :
Dposer les connexions par groupe de 10, en commenant partir de la premire colonne
de la grille G.


Chapitre IV : Application de la mthode AntClass sur la base de donnes KDD99

56







Figure 11: Rpartition des connexions sur la grille G
g. Algorithme Ants :
Dans notre algorithme, nous utilisons une population dagents htrognes, c'est--dire les
agents ont des paramtres individuels diffrents.










Algorithme 5 : Algorithme Ants
10
10
10
10
..

Pour t=1 T faire
Pour i=1 A faire
Avancer ()
Si la fourmi a
i
se trouve sur une case contenant des connexions alors
Si la fourmi a
i
ne transporte pas de connexions alors
Ramasser ()
Sinon
Deposer()
Finsi
Finsi
Finpour
Finpour
Retourner la grille G

Chapitre IV : Application de la mthode AntClass sur la base de donnes KDD99

57

g.1.Description des fonctions utilises par lalgorithme Ants :
Ramasser ( ) : est la fonction qui permet une fourmi a
i
de ramasser une ou plusieurs
connexions les plus dissimilaires du tas T
j
(T
j
est lensemble des connexions de la
case occupe par la fourmi a
i
), selon la probabilit p
p
(Tj) (Voir la formule III.12).

Deposer( ): est la fonction qui permet une fourmi a
i
de dposer une ou plusieurs
connexions suivant la probabilit p
d
(T
i
,T
j
) (voir la formule III.13), T
i
reprsente le tas
de connexions transport par la fourmi a
i
, T
j
est le tas de connexions de la case
occupe par la fourmi a
i
. Lorsque la fourmi a
i
dpose le tas T
i
elle mmorise sa
position.

Avancer( ) : est la fonction qui permet de dplacer une fourmi a
i
avec une vitesse v.
Lorsque la fourmi a
i
transporte des connexions, elle se dirige vers lemplacement de
connexions le plus similaire aux connexions transportes en consultant sa mmoire
m
i
. La fourmi a
i
gre sa mmoire sous forme dune liste FIFO o les positions les
plus anciennes sont oublies quand la fourmi a
i
mmorise de nouvelles positions.
Cette mmorisation est effectue quand la fourmi a
i
dpose une ou plusieurs
connexions sur la case c
i
de la grille G. La mmoire m
i
est reprsente par un vecteur
denregistrements, chaque enregistrement est compos de trois champs. Le premier et
le deuxime champ sont de type entier indiquant la position de la case c
i
sur laquelle
la fourmi a
i
dpose le tas transport, le troisime est de type connexion reprsentant le
centre de gravit du tas dpos par la fourmi a
i
sur la case c
i
.

g.2.Interprtation de lalgorithme Ants :
Une fois les fourmis et les connexions sont repartitionnes sur la grille G, les fourmis
commencent se dplacer. Chaque fourmi a
i
se dplace avec la vitesse v
i
sur une case non
occupe par une autre fourmi en excutant la fonction Avancer(), si cette case contient un tas
de connexions et que la fourmi a
i
transporte un ou plusieurs connexions, la fourmi a
i
dpose
un ou plusieurs connexions sur cette case en excutant la fonction Deposer(). Si la fourmi a
i

ne transporte pas dobjets et quelle se trouve sur une case contenant un tas dobjets, elle
ramasse une ou plusieurs connexions en excutant la fonction Ramasser(), les objets
ramasss sont compars aux m(a
i
) mmoire de la fourmi a
i
, ensuite la fourmi a
i
se dirige
Chapitre IV : Application de la mthode AntClass sur la base de donnes KDD99

58

vers lemplacement des objets les plus similaires aux objets ramasss en excutant la
fonction Avancer(). Ce processus est rpt T fois o T reprsente le nombre ditrations de
lalgorithme Ants.
g.3.Traitement des connexions isoles :
Les connexions isoles sont les objets qui se trouvent sur une fourmi aprs lexcution de
T fois lalgorithme Ants ou les objets se trouvant seuls sur la grille. Dans notre algorithme,
nous avons dcid daffecter les connexions se trouvant sur la fourmi au tas dont le centre
de gravit est le plus proche. Cela est intressant quand une fourmi est interrompue dans une
opration quelle pouvait accomplir. Pour le deuxime cas de connexions isoles, il est
trait en donnant plus ditrations aux fourmis.
h. Algorithme K-Means :
L'algorithme des centres mobiles ( K-Means ) est l'outil le plus populaire utilis dans les
applications scientifiques et industrielles de classification. Le nom drive du fait que, pour
reprsenter chacune des K classes C
k
, on utilise le centre de gravit (formule III.14).
Lalgorithme Ants est interrompu pour lancer le KMeans afin doptimiser le
partitionnement construit par les fourmis. Comme les fourmis agissent localement, il peut
rester un certain nombre de connexions mritant dappartenir une classe dont le centre est
beaucoup plus proche. K-Means est alors lanc pour corriger ce type de dfaillance. Le K-
Means est itrativement rpt jusqu ce que ce critre darrt soit atteint aucune
modification n'a eu lieu (cest--dire les connexions ne changent plus de classe, ou si le
nombre maximum d'itrations a t atteint) . Puis reprendre lalgorithme Ants avec une
nouvelle partition et des paramtres diffrents.






Chapitre IV : Application de la mthode AntClass sur la base de donnes KDD99

59




















Algorithme 6: Algorithme K-Means


iter = 0 // variable qui permet de compter les itrations
change = 1
Tant que ( (iter <MAXITERATIONS) ET (change>0) ) faire
change = 0
Pour k= 0 n-1 faire // n est le nombre de classe
Pour f= 0 L(C
K
)-1 faire // L(C
k
) est la taille de la classe C
k

mindist = d(o
f
, g
0
) // distance euclidienne
id=0
Pour j=1 n -1 faire
dist =d(o
f
, g
j
)
Si dist = mindist alors
mindist=dist
id=j
Finsi
Finpour
Si (id !=k) alors // on teste si la connexion changer de classe
change = change+1
C
j
=o
f

Finsi
Finpour
Finpour
iter=iter+1
FinTantque

Chapitre IV : Application de la mthode AntClass sur la base de donnes KDD99

60

2.2. Test de la mthode AntClass :
Afin de vrifier si le profil normal obtenu aprs lapplication de la mthode AntClass sur
la base KDD permettra de dtecter des connexions anormales (attaques), nous utilisons une
base de test KDD contenant des connexions normales et des connexions anormales (ou
attaques). Chaque connexion de cette base est caractrise par 41 attributs. Pour chaque une
connexion o
i
de la base de test, on cherche tout dabord la classe du profil normal dont le
centre de gravit est plus proche de cette connexion , c'est--dire, la classe C
k
telle que
d(g
k
,o
i
) < d(g
j
,o
i
) avec j={1,..,n} o n reprsente le nombre de classes. Ensuite, on compare
d( g
k
,o
i
) avec d
*
g(C
k
) ( la distance maximale entre les connexions de la classe C
k
et son
centre de gravit g
k
(voir formule III.14). Si cette distance est infrieure d
*
g(C
k
) alors la
connexion o
i
est normale, sinon la connexion o
i
est une attaque. Cette comparaison est
interprte par la fonction vrification().
- Algorithme de la fonction vrification() :
Dbut
Si d(g
i
,o
i
) < d
g
*
(c
i
) alors
La connexion o
i
est normale
Sinon
La connexion o
i
est anormale
Finsi
Fin

- d(g
i
,o
i
) : distance entre le centre de gravit g
i
(g
i
est le centre le plus proche de la
connexion o
i
)et la connexion o
i
.

(Voir la formule III.6).
- d
g
*
(c
i
) : distance maximale entre les connexions de la classe c
i
et son centre de
gravit (Voir la formule III.10).

3. Implmentation :
Tout au long de notre tude, lobjectif principal tait la ralisation dun classificateur pour
former le profil normal de fonctionnement normal du rseau en appliquant la mthode
AntClass. Cette phase dimplmentation consiste implmenter lalgorithme AntClass.


Chapitre IV : Application de la mthode AntClass sur la base de donnes KDD99

61

3.1. Outils de dveloppement :
Le langage de programmation utilis pour limplmentation est le langage Java
environnement Eclipse version1.7, ce dernier est populaire parmi les programmeurs en java.
Le langage Java est un langage de programmation orient objet et est une synthse de
plusieurs langages de programmation : il sinspire de syntaxe du langage C
++
et de techniques
prouves en Smaltalk et autres langages de programmation (organisation en classe, excution
laide dune machine virtuelle, gestion dexception), tout en supprimant la plupart des
inconvnients de ces mme langages.
Il a en outre, galement t enrichi par des mcanismes qui lui sont propres et ceci afin de
mieux rpondre aux fortes contraintes imposes par lexcution de programmes transmis par
le rseau internet (applets, servletsetc). Sil a t conu comme un langage ses dbuts, il
savre tre aujourdhui une vritable plate-forme de dveloppement dont voici les
principales caractristiques : Orient Objet, Simple, Multithread, Scuris, Portable,
Interprt.etc.
3.2. Les paramtres utiliss par lalgorithme AntClass :
Nous avons appliqu la mthode AntClass sur la base dapprentissage KDD. Dans notre
cas, deux itrations du couple Ants + K-Means sont effectues, cest--dire T
AntClass
=2 (o
T
AntClass
reprsente le nombre ditrations de AntClass).
Paramtres utiliss par lalgorithme Ants :
Pour la premire itration de AntClass ( T
AntClass
=1), les paramtres utiliss par
lalgorithme Ants sont les suivants :
A=40 (nombre de fourmis)
T=10000 (nombre ditrations)
M(a
i
) =0 i{1,..,A} {taille de la mmoire}
C(ai)=1i{1,..,A} {capacit de transport }
V(ai) {1,2,3} i{1,..,A} {vitesse}
P(ai)=1000 i{1,..,A} {patience}
K1=1
K2=1


Chapitre IV : Application de la mthode AntClass sur la base de donnes KDD99

62

Pour la deuxime itration de AntClass( TAntClass=2), les paramtres utiliss sont les
suivants :
A=20 (nombre de fourmis)
T=10000 (Nombre ditrations)
M(ai) =5 i{1,..,A} {taille de la mmoire}
C(ai)= i{1,..,20} {capacit de transport }
C(ai)= 1i{21,..,40} {capacit de transport }
V(ai) =1 i{1,..,A} {vitesse}
P(ai)=1000 i{1,..,A} {patience}
K1=2
K2=2

Paramtres utiliss pour les centres mobiles :
Le travail des agents fourmis est interrompu aprs T itrations (dans notre cas
T=10000) pour lancer les centres mobiles. Les centres mobiles sont excuts jusqu' ce
que le nombre maximum ditrations a t atteint, ou jusqu' ce que les connexions ne
changent plus de classe. Dans notre cas, ce nombre ditrations maximum est initialis
45 (MAXITERATIONS = 45).

Conclusion :
Nous avons dcrit dans ce chapitre lapplication et limplmentation de la mthode
AntClass qui opre en deux phases. Dans la premire phase, nous avons dtaill la manire
dont le profil normal du rseau est gnr en appliquant lalgorithme AntClass sur la base
dapprentissage KDD. Dans la seconde phase, cest--dire la phase de test, nous avons
expliqu comment se fait la dtection danomalies en utilisant le profil normal construit dans
la phase dapprentissage.
Dans le chapitre suivant nous allons voir les tests et les rsultats de limplmentation de la
mthode AntClass.




Chapitre v :
Tests et rsultats
Chapitre V : Tests et rsultats

63


Introduction :
Dans ce prsent chapitre, nous allons valuer le profil normal obtenu dans la phase
dapprentissage, afin de voir lefficacit de la mthode AntClass pour la dtection
dintrusions.

1. Tests :
Pour tester notre mthode, nous avons utilis un jeu de test form dun ensemble de
connexions appartenant la base de test KDD. Lavantage de ce jeu de test est que lon
connait les caractristiques de ses connexions et cela nous permet dvaluer la capacit de
notre mthode.
Le tableau suivant prsente pour chaque ensemble, le nombre de connexions totales, le
nombre de connexions normales et le nombre de connexions anormales.






Tableau 4 : Bases de test


2. Prsentation des rsultats :
Dans ce qui suit nous allons prsenter lvaluation de la mthode sur les diffrentes bases.
BASES
Connexions
normales
attaques
Le nombre
total de
connexions
Basetest1 0 2091 2091
Basetest2 0 2160 2160
Basetest3 0 2720 2720
Basetest4 1149 0 1149
Basetest5 1582 0 1582
Basetest6 101 1892 1993
Basetest7 1374 352 1726
Chapitre V : Tests et rsultats

64

-Basetest1 :


-Basetest2 :


-Basetest3 :


Chapitre V : Tests et rsultats

65

-Basetest4 :

-Basetest5 :

-Basetest6 :


Chapitre V : Tests et rsultats

66

-Basetest7 :

Les rsultats des tests sont rsums dans le tableau suivant :
BASES Capacit de dtecter des intrusions
Basetest1 94%
Basetest2 98%
Basetest3 79%
Basetest4 98%
Basetest5 97%
Basetest6 96%
Basetest7 96%

Tableau 5 : Rsultat sur un jeu de test

Les rsultats obtenus sur ces bases montrent que la mthode quon vient dimplmenter
est efficace, plus de 79% dattaques sont dtectes.

Pour la base Basetest3, la capacit de dtecter des intrusions est 79% quivalente 2131
attaques dtectes sur 2720 attaques. Ceci revient aux comportements indsirables du
systme : les faux ngatifs (dtection dattaque (s) en absence dattaque) et les faux ngatifs
Chapitre V : Tests et rsultats

67

(absence de dtection en prsence dattaque). En effet la mthode ne permet pas de dtecter
toutes les intrusions existantes dans les bases utilises et elle mit des fausses alertes.
Nous pouvons diminuer ces deux comportements indsirables en donnant plus ditrations
aux fourmis (T > 10000) et en augmentant le nombre maximum ditrations de la mthode
des centres mobiles (MAXITERATIONS > 45).

Conclusion :
Dans ce chapitre nous avons test le profil normal obtenu en appliquant la mthode de
classification AntClass pour valuer son efficacit pour la dtection dintrusions. Pour cela
nous avons choisi sept (07) bases de test de la base KDD (bases avec connexions normales,
bases avec attaques, bases htrognes).
Les rsultats obtenus montrent que la mthode de classification AntClass est trs efficace
dans la dtection dintrusions grce au critre de similarit et ses diffrents paramtres.








Conclusion Gnrale

68

Conclusion gnrale Conclusion gnrale Conclusion gnrale Conclusion gnrale


Le travail, ainsi prsent dans ce mmoire est li au domaine de la scurit des rseaux
plus prcisment la dtection dintrusions.
Aprs avoir prsent la scurit informatique et les diffrents systmes de dtection
dintrusions, nous avons tudi la mthode de classification non supervise AntClass ,
utilis dans la dtection dintrusions.
Nous avons implment lapplication de la mthode de classification non supervise
AntClass sur la base de donnes KDD99 constitues de milliers de connexions de type
TCP.
Des rsultats exprimentaux montrent que la mthode AntClass , permet une meilleure
dtection dintrusions. Ces rsultats sont dus au critre de similarit et les diffrents
paramtres de cette mthode.
Nanmoins, la mthode de classification AntClass prsente une lenteur pendant
lexcution qui est due au nombre ditrations effectues.
Ce projet nous a t dun grand apport pdagogique, puisquil nous a permis de dcouvrir la
scurit informatique, ses fonctionnalits et ses mcanismes, de nous familiariser avec les
threads de Java et de savoir comment rsoudre les problmes de classification en sappuyant
sur le comportement des fourmis.
Pour finir nous pensons que ce travail mrite dtre poursuivi en dveloppant un systme de
dtection dintrusions base de la mthode AntClass
TABLE DES ILLUSTRATIONS

70



Figure 1 : Architecture classique dun IDS (Intrusion Detection System)...17
Figure 2 : Classification des systmes de dtection dintrusions..19
Figure 3 : Les emplacements possibles des NIDS ( Network IDS)..25
Figure 4 : Grille utilise dans lalgorithme de Lumer et Faieta34
Figure 5 : Dfinition des tas..38
Figure 6 : Schma de droulement de la mthode AntClass.41
Figure 7 : Application de la mthode AntClass sur KDD99...50
Figure 8 : Filtrage des connexions normales51
Figure 9 : grille G..53
Figure 10 : Directions dune fourmi.54
Figure 11 : Rpartition des connexions sur la grille G.....56
Figure 12 : Les mthodes de classification...77
Figure 13 :Exemple de dendogramme..77

Algorithme 1 : Algorithme de Lumer et Faieta35
Algorithme 2 : Algorithme K-Maens43
Algorithme 3 : Algorithme Ants...44
Algorithme 4 : Algorithme AntClass44
Algorithme 5 : Algorithme Ants...56
Algorithme 6 : Algorithme K-Means59

Tableau 1 : Paramtres de lalgorithme Ants45
Tableau 2 : Les types dattaques...47
Tableau 3 : Liste des attributs...48
Tableau 4 : Bases de test...63
Tableau 5 : Rsultats sur un jeu de test.66
TABLE DES ILLUSTRATIONS

71

Formule ( III.1)32
Formule ( III.2)33
Formule ( III.3)34
Formule ( III.4)34
Formule ( III.5)38
Formule ( III.6)38
Formule ( III.7)38
Formule ( III.8)38
Formule ( III.9)39
Formule ( III.10)..39
Formule ( III.11)..39
Formule ( III.12)..39
Formule ( III.13)..40
Formule ( III.14)..42
Formule ( III.14)..42
Formule ( III.15)..42












BIBLIOGRAPHIE

72



[1] : R.Mouzer et R.kheddam , Mise en place dun systme de dtection et de prvention
dintrusions ,thse de fin dtude Universit Mouloud Mammeri, 2009.
[2]: Eric Cole, Hackers Beware , first edition,New Riders Publishing, 2001.
[3]: Eric Maiwald, Scurit des rseaux, Edition CampusPress, 2001.
[4] : Jean-Franois Pilon, Tout sur la scurit informatique , dition Dunod, 2005.
[5]: Andrew R.Backer Snort IDS and IPS Toolkit , Syngress edition, 2007.
[6]: Kaspersky Lab; le manuel de lutilisateur d.2007, http://www.Kaspersky.com .
[7] : Solange Ghernaouti-Hlie Scurit internet Strategie et technologie , Dunod, 2000.
[8] : Emmanuel JUD, http :www.secuser.com .
[9]: Christopher A.Crayton, Ido Dubrawasky,Alun Jones et Marc Perez Security + Study
Guid & DVD Training System, Second Edition , 2
nd
edition, Sungress 2007.
[10]: Haold F.Tipton, CISSP et Micki Krause, Information Security Management
Handbook, 6
th
edition, Auerbach Publications 2007.
[11]: Introduction la cryptographie, support de cours du cabinet Herv Schaner
consultant HSC, http:// www.hsc.fr .
[12] : http :www.misfu.com/ Telechargement/ Securit-rseaux.zip .
[13] : Andrew Tanenbaum, Systmes dexploitation , 2
e
edition, Pearson Education, 2003.
[14] : Anne Henni and Mark Lucas, Firwall Policies and VPN configurations ,Syngress
edition, 2006.
[15] : Alexandre Nevski, Modlisation et la simulation dun systme de dtection et de
rponse aux intrusions , Laboratoire Telecom de Centre Universitaire Informatique de
Genve.
[16] : Cdric Michel, Langage de description dattaques pour la dtection dintrusions ,
Thse de doctorat Universit de Rennes, 2003.
BIBLIOGRAPHIE

73

[17] : D.Burgermeister , Les attaques rseaux et application , J.Krier, Systme de
dtection dintrusions ,2006,http :dbprog.developpez.com.
[18] : Kenza Tayeb, Dtection dintrusions cooprative base sur la fusion de donnes ,
Thse de magister Institut National de formation en Informatique INI, 2005.
[19] : Bourkache Ghenima, Un IDS rparti bas sur une socit dagents intelligents ,
Thse de magister Universit Mhamed Bouguara de BOUMERDES, 2007.
[20]: Jensen, F. V, Introduction to Bayesien networks, UCL Press, 1996.
[21]: Pearl J, Probabilistic Reasoning in intelligent systems: networks of plausible
inference, Morgan Kaufmman , Los Altos, CA, 1988.
[22]: A.Valdes,K. Skinner, Adaptive Model-based Monitoring for Cyber Attack Detection
In proceedings of Recent Advances in Intrusion Detection (RAID 2000) , Toulouse, France,
2000.
[23]:B. Nedjimi ,L.Thobois ,M.Tudury, Microsoft Windows 2000 : Notions Fondamentales,
Essentiel de prparation aux certifications .
[24]: Quinlan, J. R, Induction of decision trees.Machine Learning 1, 1-106, 1986.
[25]: Quinlan, J. R, C4.5, Programs for machine learning. Morgan Kaufmann San
MateoCa, 1993.
[26]: Article de : N. Ben Amor S. Benferhatet Z. Elouedi, Rseaux baysiens nafs et
arbres de dcision dans les systmes de dtection d'intrusions .
[27] : http://www.chimique.usherbrooke.ca/cours/gch445/neurones-intro.html
[28] : N.Monmarch, Algorithmes de fourmis artificielles : application la classification et
loptimisation ,Thse de doctorat Universit de Tours,2000.








Annexe A :
Classification


Annexe A : Classification

74

1. Introduction :
Les mthodes de classification sont nombreuses et ont pour but de construire une partition
ou une suite de partition embotes. Les classes ainsi formes doivent tre les plus homognes
possibles. On distingue deux grands types de mthodes, les mthodes de partitionnement et
les mthodes hirarchiques. Le choix de la "bonne" mthode est parfois difficile et ce choix
dpend de la nature des variables, de la problmatique pose et souvent des habitudes du
domaine d'tude.
2. Diffrentes classification possibles : [28]
Classifier est le processus qui permet de rassembler des objets dans des sous-ensembles tout
en conservant un sens dans le contexte dun problme particulier. Les sous-ensembles obtenus
reprsentent une organisation, ou encore une reprsentation de lensemble des objets. Les
relations disponibles entre les objets sont rassembles dans une matrice de dissimilarit
dans la quelle les lignes et les colonnes correspondent aux objets. Comme les objets peuvent
tre reprsents par des points dans un espace numrique M dimensions, la dissimilarit
entre deux objets peut tre dfinie comme une distance entre les deux points
correspondants. Cette matrice de dissimilarit est la principale entre ncessaire la phase
de classification.
La figure 12 prsente les diffrentes mthodes de classification. Voici une description de ces
mthodes :
2.1. Classification non exclusive :
Une classification non exclusive autorise quun objet appartienne plusieurs classes
simultanment. Les classes peuvent alors se recouvrir.
2.2. Classification exclusive :
Une classification exclusive est un partitionnement des objets : un objet nappartient qu
une classe et une seule.
2.2.1. Classification supervise :
Il sagit dutiliser les groupes connus pour dcouvrir ce qui les diffrencie ou afin de
pouvoir classer de nouveaux objets dont la classe nest pas connue. De nombreuses
Annexe A : Classification

75

techniques de classification supervise ont t dveloppes, parmi ces mthodes, on trouve
les mthodes de classification par maximum de vraisemblances.
2.2.2. Classification non supervise :
Une mthode de classification non supervis (en anglais clustering) nutilise que la
matrice de dissimilarit. Aucune information sur la classe dun objet nest fournie la
mthode (on dit que les objets ne sont pas tiquets).Lobjectif de la classification non
supervis est oppos au cas supervis. Dans le premier cas , il sagit de dcouvrir des
groupes dobjets alors que dans le deuxime cas il sagit dutiliser les groupes connus pour
dcouvrir ce qui les diffrencie a fin de pouvoir classer de nouveaux objets dont la classe
nest pas connue. Prenons lexemple dune population dindividus dont on dispose de
renseignement tels que lge, le sexe, le poids, la taille et le taux de cholestrol. Une mthode
de classification non supervise permettra par exemple de construire deux groupes : un
groupe vgtariens et un groupe de carnivores. Une mthode de classification supervise
ncessite de savoir pour chaque individu sil est vgtarien ou non et permettra dtablir
des critres permettant de diffrencier un individu selon ses attributs (ge, sexe,).
Classification hirarchique : Une mthode de classification hirarchique construit
une squence de partitions imbrique, que lon visualise par exemple par un
dendogramme (Voir la figure 13).
Partitionnement : un partitionnement ne construit quune seule partition des
donnes.


La classification hirarchique est surtout utilise pour construire des taxonomies dans
le domaine de la biologie, des sciences comportementales ou sociales. Les techniques de
partitionnement sont surtout utilises quand lobtention dune partition unique est
primordiale, par exemple pour la reprsentation et la compression de bases de donnes
importantes
1
.


1
La reprsentation dune classification hirarchique par un dendogramme est particulirement interdite quant la
base de
donnes se compose de plusieurs centaines dobjets.


Annexe A : Classification

76

Le problme de partitionnement peut tre formul de la faon suivante. Etant donns N
points dans un espace mtrique M dimensions, on cherche une partition de ces points en K
classe ( ou groupe) de telle sorte que les points dun mme groupe soient plus similaires
entre eux quavec les points les points des autres groupes. La valeur de K peut ne pas tre
connue. Comme pour toute mthode non supervise , la qualit dune mthode de
partitionnement ne peut tre juge qu a partir de ses rsultats : cest lexpert du domaine
qui peut dterminer la pertinence des rsultats obtenus.
3. Distance : [28]
Etant donne un ensemble O= {o
1
,,o
N
} de N objets correspondant chacun un point
dun espace mtrique M dimensions dont les coordonnes sont notes par le vecteur
x
i
=(x
i1
,,x
iM
) pour lobjet o
i
, on peut dfinir la distance conne suit :
Une distance est assimilable une mesure de dissimilarit. Etant donn que nous nous
intressons des espaces mtriques. Lindice de dissimilarit le plus communment utilis est
la mtrique de Minkowski :
do

, o

= d

, x

= w

est le facteur de pondration, dans notre thse nous considrons w


k
gal a 1. Suivant la
valeur de r (r1) on obtient les mesures suivantes :
r=1 : distance de Manhattan.
r =2 : distance euclidienne.
r = : d

, x

= Max

.

Ces mesures sont souvent utilises pour des donnes numriques. Dans le cas de
donnes symboliques, dautres distances doivent tre utilises. La plus connue tant la
distance de Hamming, lorigine dfinie pour mesurer la distance entre des chanes
binaires, et qui correspond au nombre de bits diffrents dans les deux chanes pour une
mme position.
Dans notre thse, nous noterons la mesure d2(.) par d(.) pour allger les notations.
Annexe A : Classification

77



Figure 12 : Les mthodes de classification (Jain and Dubes, 1988).









o
1
o
2
o
3
o
4
o
5
o
6
o
7
o
8
o
9
o
10
o
11
o
12
o
13
o
14
o
15


Figure 13 : Exemple de dendogramme.


Mthode de classification
Mthode non exclusive Mthode exclusive
Classification supervise Classification non supervise
Classification hirarchique Partitionnement

You might also like